Re: [閒聊] OOP小評
看板Soft_Job (軟體人)作者Hazukashiine (恥ずかしい ね...(>///<))時間10年前 (2015/07/03 21:16)推噓11(13推 2噓 53→)留言68則, 18人參與討論串43/43 (看更多)
查詢一下這一系列的文章,感覺好幾篇都在鬼打牆,
從可以從 定性 談到 物件導向 再談到 命名原則... 實在有點獵奇...
小弟就我大學C語言以及 C++ 均獲得 A+ 以及多年的開發經驗來談一下 OOP 好了。
首先,OOP 不完全等與 C++ ,不一定要混在一起談,C++ 的範疇已經遠超越 OOP 了,
OOP 的真正精髓在於 P.I.E. (有的時候,Abstract 也會被提及)
P 指的是 Polymorphism (多型):
動態或靜態地轉換相同的訊息到不同的類別的物件。
聽起來有點抽象,簡短地說,就是像虛函式以及運算子重載。
I 指的是 Inheritance (繼承):
這好理解多了,看看C++輸入流以及輸出流的繼承關係大概就知道繼承的功能了
http://www.cplusplus.com/img/iostream.gif

就是因為有很高的關聯性,所以用這個特性可以讓一個語言的功能發揮到極致。
E 指的是 Encapsulation (封裝)
通常指的是一個型態的可見度,通常使用類別來做封裝。
大家有沒有發現,這一切的一切都圍繞著一件東西... 沒錯... 就是類別!
C++ 用類別(Class)來封裝(Encapsulation)各式各樣的型態(datatype)以及方法(method)
再讓繼承(Inheritance)去巧妙地處理不同類別可能的相互依賴關係,讓程式變得更好理解
最後,多型(Polymorphism)負責處理剩餘的問題,像是虛函數這種動態的轉換功能。
是不是覺得 OOP 很有趣呢?
這是一個完整的思路,必須要自己慢慢去體會,C++ 的範疇真的已經遠大與 OOP 了!
學好 OOP 不用一年,但是學 C++ 學到精通需要超過五年的時間,除非你是天才,
連 Stroustrup 自己都不敢說他自己精通 C++ 呢...
想要做 OOP 編程也不一定要用 C++,JAVA 也是屬於 OOP 的(閹割版的C++?)
我真心覺得,很多時候,根本用不到 OOP 的,硬是要使用 C++,這讓我覺得有點莫名其妙
一個好的生魚片師傅會去辨別哪種魚要用哪一種刀子,
如果一個自稱高級工程師的人卻不會選擇要使用的程式語言,實在貶低了自己的頭銜。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.241.158.27
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1435929373.A.5F4.html
噓
07/03 21:33, , 1F
07/03 21:33, 1F
推
07/03 21:48, , 2F
07/03 21:48, 2F
→
07/03 22:15, , 3F
07/03 22:15, 3F
→
12/05 22:14, , 4F
12/05 22:14, 4F
你不是已經忘記C++了...怎麼還突然口沫橫飛了@@?
拎北113啦~不用說A+啦~OOP還幾霸昏嘞~~~ヽ( ・∀・)ノ
自己都幾歲了,戰學校不無聊嗎?
推
07/03 22:21, , 5F
07/03 22:21, 5F
※ 編輯: Hazukashiine (111.241.158.27), 07/03/2015 22:27:15
推
07/03 22:36, , 6F
07/03 22:36, 6F
推
07/03 22:59, , 7F
07/03 22:59, 7F
→
07/03 23:01, , 8F
07/03 23:01, 8F
→
07/03 23:05, , 9F
07/03 23:05, 9F
→
07/03 23:07, , 10F
07/03 23:07, 10F
→
07/03 23:26, , 11F
07/03 23:26, 11F
→
07/04 00:27, , 12F
07/04 00:27, 12F
→
07/04 00:28, , 13F
07/04 00:28, 13F
謝謝,小弟沒有深入研究過JAVA,但是JAVA語言的特性應該比C++再少一些...
WIKIPEDIA:
Java程式語言的風格十分接近C++語言。繼承了C++語言物件導向技術的核心,Java捨棄了
C++語言中容易引起錯誤的指標,改以參照取代,同時移除原C++與原來運算子多载,也移
除多重繼承特性,改用介面取代,增加垃圾回收器功能。
照這樣看起來,應該是簡化版的C++,再額外增加介面與垃圾回收器的樣子...XD
不是很確定...XD
※ 編輯: Hazukashiine (36.230.110.229), 07/04/2015 00:50:52
推
07/04 00:53, , 14F
07/04 00:53, 14F
string append 很方便哩...
→
07/04 00:54, , 15F
07/04 00:54, 15F
沒學過的也只能以管窺天了啊 XD
※ 編輯: Hazukashiine (36.230.110.229), 07/04/2015 00:58:54
→
07/04 01:09, , 16F
07/04 01:09, 16F
→
07/04 04:05, , 17F
07/04 04:05, 17F
→
07/04 04:07, , 18F
07/04 04:07, 18F
→
07/04 04:08, , 19F
07/04 04:08, 19F
→
07/04 12:11, , 20F
07/04 12:11, 20F
→
07/04 14:52, , 21F
07/04 14:52, 21F
112 CE v.s. 113 CS
領域不同,學校不同,八竿子打不著,敢問要怎麼比?
臺灣會淪落至此,有很大一部份就是因為學歷至上,
不願相信專攻領域,只在乎學校名稱,這實在很可悲...
以日本為例:
「一橋大學」在商管領域方面首屈一指,
「東京醫科牙科大學」為齒科方面的翹楚,
「慶應義塾大學」專攻文史學,研究成果卓越,
「早稻田大學」在政治以及經濟領域也十分著名。
每個大學本應注重在不同的領域發展,有其強項,也有其弱項,不能以一蓋全。
臺灣大學肯定是一個著名的綜合研究型大學,但並不代表在各個領域都有執牛耳的地位。
哈佛大學敢說他的電腦科學領域贏過麻省理工學院嗎?
自己好好想想吧...
推
07/04 15:25, , 22F
07/04 15:25, 22F
我也覺得他好可憐 @@
※ 編輯: Hazukashiine (118.165.146.41), 07/04/2015 16:22:59
→
07/04 16:13, , 23F
07/04 16:13, 23F
推
07/04 16:31, , 24F
07/04 16:31, 24F
→
07/04 17:04, , 25F
07/04 17:04, 25F
我不是在出書,也不是在編講義...
我當然可以可以講解得盡善盡美,但是,這壓根不是這帖子的用意!
請閣下是否能開一個帖子並用相同或更少的字數,更清晰地闡述 PIE 的觀念。
你可以針對我本人,但是不允許你侮辱交大資工系。
※ 編輯: Hazukashiine (118.165.146.41), 07/04/2015 17:53:32
→
07/04 18:03, , 26F
07/04 18:03, 26F
噓
07/04 19:03, , 27F
07/04 19:03, 27F
→
07/04 19:53, , 28F
07/04 19:53, 28F
→
07/04 19:56, , 29F
07/04 19:56, 29F
search "OOP" "PIE": 387,000 results
https://www.google.com.tw/?gws_rd=ssl#q=%22OOP%22+%22PIE%22
search "OOP" "APIE": 424,000 results
https://www.google.com.tw/?gws_rd=ssl#q=%22OOP%22+%22APIE%22
差不到 10%
※ 編輯: Hazukashiine (118.165.146.41), 07/04/2015 20:43:22
→
07/04 22:51, , 30F
07/04 22:51, 30F
→
07/04 22:51, , 31F
07/04 22:51, 31F
我們老師的投影片也沒有 Abstract 啊... (笑
※ 編輯: Hazukashiine (118.165.146.41), 07/05/2015 01:22:03
推
07/05 09:32, , 32F
07/05 09:32, 32F
→
07/05 09:33, , 33F
07/05 09:33, 33F
→
07/05 09:34, , 34F
07/05 09:34, 34F
→
07/05 09:35, , 35F
07/05 09:35, 35F
→
07/05 09:35, , 36F
07/05 09:35, 36F
→
07/05 09:35, , 37F
07/05 09:35, 37F
推
07/05 09:39, , 38F
07/05 09:39, 38F
→
07/05 09:41, , 39F
07/05 09:41, 39F
→
07/05 09:41, , 40F
07/05 09:41, 40F
謝謝學長給我一點方向...
在打上面一些東東的時候理智線斷了...
我修的是 YYP,老師人很好,只是作業有點多...XD
※ 編輯: Hazukashiine (111.243.62.32), 07/05/2015 10:36:28
推
07/05 22:05, , 41F
07/05 22:05, 41F
推
07/05 23:15, , 42F
07/05 23:15, 42F
推
07/06 00:17, , 43F
07/06 00:17, 43F
→
07/06 00:17, , 44F
07/06 00:17, 44F
→
07/06 00:17, , 45F
07/06 00:17, 45F
→
07/06 00:18, , 46F
07/06 00:18, 46F
→
07/06 00:18, , 47F
07/06 00:18, 47F
→
07/06 00:19, , 48F
07/06 00:19, 48F
→
07/06 00:20, , 49F
07/06 00:20, 49F
→
07/06 00:20, , 50F
07/06 00:20, 50F
推
07/06 12:07, , 51F
07/06 12:07, 51F
→
07/06 12:08, , 52F
07/06 12:08, 52F
→
07/06 12:11, , 53F
07/06 12:11, 53F
→
07/06 12:11, , 54F
07/06 12:11, 54F
→
07/06 12:15, , 55F
07/06 12:15, 55F
→
07/06 12:15, , 56F
07/06 12:15, 56F
→
07/06 12:16, , 57F
07/06 12:16, 57F
→
07/06 12:17, , 58F
07/06 12:17, 58F
→
07/06 12:19, , 59F
07/06 12:19, 59F
→
07/06 12:20, , 60F
07/06 12:20, 60F
→
07/06 12:21, , 61F
07/06 12:21, 61F
→
07/06 12:23, , 62F
07/06 12:23, 62F
→
07/06 12:27, , 63F
07/06 12:27, 63F
→
07/06 12:28, , 64F
07/06 12:28, 64F
→
07/06 12:35, , 65F
07/06 12:35, 65F
→
07/06 12:35, , 66F
07/06 12:35, 66F
→
07/06 12:35, , 67F
07/06 12:35, 67F
→
07/06 12:36, , 68F
07/06 12:36, 68F
討論串 (同標題文章)
Soft_Job 近期熱門文章
PTT職涯區 即時熱門文章