這兩個物件導向的語言,另外在PHP的撰寫上面,也考慮要開始使用
其內建的class類別函數,把之前寫過的project重寫看看。
現在我有一些疑問,雖然OO在設計一個大型、需要分工的程式時
會很好用,但是對於一些小程式(也就是我以前寫過,用POP概念
寫出來的那些小程式)往往覺得,換成OOP來寫效能會不會受到影響?
因為利用主程式、副程式之間的叫用,比起定義類別、屬性、方法等等
來的是直接且迅速的多,由於我對compiler並不懂,不知道這兩種程式
設計方法在效能上的差異性,還煩請各位有經驗的大大們分享一下
你們在POP以及OOP程式設計之間所得到的心得以及經驗,尤其是
效能與debug部分,感謝~
--
[1;32m※ Origin: [33m超級光小站 [37m<SuperLight.twbbs.org> [m
[1;32m※ From : [36m61-224-161-141.HINET-IP.hinet.net [m
C++ 的部分
我接觸了一些 恩 看了c++物件模型 認為C++ Compilier會將
C++的碼 轉換成C的碼....
嗯 效能呢 我認為不熟悉的話會受影響 但是如果老手 並不會
舉例來說 C++ 你得知道 non-static member function, static member function,
virtual function... 展開成C後的樣貌
static member data/member data/global data 在哪裡? structure/class 裡面?? :)
template的具現 generic or specialization...
繼承的代價 多重繼承的代價 ?? 等等.....
懂這些才能論效率吧....:)
DEBUG方面 有個東西 在C裡面叫 structure exception handler
C++ 的是專屬exception handler... 例如 try{} catch(...){}
Scott Meyers 說他實驗過了 code size 和performance 的 overhead 增加了
5%~25% 不等 你要使用時 請確定是否有那價值...
ps vc++ 我覺得這方面 bug 是應該不太會有 但是效能 我就不敢說了
:) MFC 裡面的collection class 用蠻多的 但是那些容器效率好像不怎樣ㄟ
當我玩過 STLPort的STL 得到的心得
感覺來說 遊戲規則變多了 但是我個人認為 學習的effort增加了許多
但是另一方面 還要擔心 專案用的編譯器 提不提供 Standard的編程語法??
例如VC++ 的Standard Library毛病很多 源碼又超難懂的
又不支援export關鍵字 template class 的member function宣告和定義非得寫在
同一個header file....
麻煩超多 但是我還是愛不釋手 :P
你有你的選擇 但是學習OOP/GP的付出是逃不掉的 up to u......
--
[m [1;34m※ 來源:‧蛋捲廣場 bbs.tku.edu.tw‧[FROM: 61.64.100.88] [m
設計一輛汽車,運用模組化建構非常方便.
但是,設計一顆輪胎,是否也一定要套用模組化設計?
譬如,車輪鋼圈拆解為四塊,拼裝起來才能用...
--
好康訊息!
Openfind 提供免費撥接電話:40508888
帳號:openfind 密碼:openfind
--
http://bbs.openfind.com.tw
※來源:203.67.*
--
[m [1;33;46m〒作者:icybox 來自:217203.D11-217.ncu.edu.tw [m
[1;36m◎二進位的世界 [37m【140.115.50.50‧binary.csie.ncu.edu.tw】
那麼,閣下會以為像驅動程式這一類的,也適合套用物件導向設計以利擴充性?
--
好康訊息!
Openfind 提供免費撥接電話:40508888
帳號:openfind 密碼:openfind
--
http://bbs.openfind.com.tw
※來源:140.137.*
幫幫忙....什麼技術該用在什麼地方要搞清楚....~_~
--
[1;33;41m[Master Chang.]______________________________________________ [m
[1;33;44m企鵝寶寶工作隊 | http://3ybaby.v-club.net/ [m
[1;33;44m請大家幫忙翻譯KDE | http://i18n.linux.org.tw/ [m
[1;33;44m全像光學實驗室 | http://www.ccit.edu.tw/~c3hog/master.html [m
[1;33;44m_____________________________________________________________ [m
--
[1;32m※ Origin: [33mSayYA 資訊站 [37m<bbs.sayya.org> [m
[1;31m◆ From: [36mh112-213.dorm5.ccit.edu.tw [m
--
好康訊息!
Openfind 提供免費撥接電話:40508888
帳號:openfind 密碼:openfind
--
http://bbs.openfind.com.tw
※來源:203.67.*
不要玩文字遊戲,搞清楚自己在幹甚麼....
看程式大小, 越大的越需要,
小型的程式不要說物件導向了, 有些連 function 都用不到 :p
你寫個九九乘法表需要用到 function 嗎?
如果堅持要用的話, 程式是變的簡單還是複雜呢?
driver 就是用不到 OO 的"小型"程式
這裏的大小不是指程式有幾行, 是說他的 complexity (不是 time complexity :p)
九九乘法表用 OO? 挺酷的, 1~9 每個數字都是一個物件,
然後二個物件相乘時我們用 abstract factory pattern
去取得相乘的 method.... 誰會這樣搞啊? (笑)
--
[0m [1;33m※ Origin: [36mYahoo!奇摩 大摩域 [37m<telnet://bbs.kimo.com.tw> [m
[1;35m◆ From: [1;32m1cust107.tnt3.troy.oh.da.uu.net [m
99乘法表的確不需要用OO,
因為數字本身已經有足夠使用的操作方法,
也就是基本的+-*/
摘錄 William 83 年【資訊路上的進階的良伴 -- 電腦雜誌】的一段話:
我發現,同樣的話也可用於電腦網路中。太多人過於依賴網路的便利性,只知把
問題丟上去,卻不肯好好在身邊、書局、圖書館中找尋參考資料。幾年來,碰過
許多人問的問題:有許多是翻一翻入門的書就會的,就是有的人懶得翻,硬要問
,當別人都很有空似的。有些是進階一點的問題,回答起來很長,我們又不是網
路張老師,沒這麼多時間,就告訴他們找什麼書、什麼電子文件就可以得到解答
,但還是有的人懶得去找去讀,硬要再三追問。這種情形遇多了,慢慢的也就懶
得再多費唇舌了。「小學而大遺」、「捨本而逐末」,不正是指這種現象嗎﹖
OO的書那麼多,你不願意看書寫什麼卻跑來這問該用在哪裡!~?
該用在什麼地方??廢話!!當然是用在該用的地方.....~_~