自認對 OO 精通的人應該要能回答 gsj 的質疑才是, 否則 OO 就如其音,
黑黑來, 黑黑去, 黑壓壓的一片.
> ==>發信人: Wiseman.bbs@bbs.cs.nthu.edu.tw (), 信區: programming
> ※ 引述《gsj.bbs@bbs.nchu.edu.tw (國王的新衣)》之銘言:
> > ※ 引述《ajax.bbs@bbs.csie.nctu.edu.tw (ajax)》之銘言:
> > 不管OO在高階上來帶來多好處,不要忘記一件事
> > 高階的東西畢竟要由低階來實作完成
> > 而低階到最後,CPU的運作都是循序式,而不是物件導向式
物件導向 或 OOP 不知是否有特別強調 "非循序式" ? 印象中至少不是被
列為是 parallel programming 或 concurrent high level language .
學 OO 的要怎麼回答 ?
> > CPU內部的Address Segment 暫存器,
> > 一開始就是分成Data Segment 及 Code Segment 兩大類
> > 只要電腦還是三大元素的架構 (CPU、Memory、IO)
> > 循序式的東西就永遠不死
> > 我很早就說過OO的Class語法,將Code與Data 搞在一起,
> > 這是從出發點就錯誤了,
> > 程式語言與硬體開始有了 "不對稱 " 的問題
> > 所以程式越是發展,毛病也就越多
> 寫了那麼久的程式你還是不懂什麼是Abstraction...
> 以及OO跟event driven 是兩回事..
> 我看你還是回去寫你的assembly language吧...
在 object 封裝的內部對 data , code 是可以雜亂交錯, 你中有我,
我中有你那樣的混在一起, 還是分堆但包在封袋裡 ? 顯然 gsj 指出
了 OO 讓人看不清楚無法理解的一面.
如果程式語言與電腦的實體是不對稱的, 那這個質疑是有道理的, 這
不能用 abstraction 一筆帶過, 否則會被懷疑 OOP 是有效率的嗎 ?
不然就是效率的稍微(這也得具體說明)犧牲, 可換來那些更值得的東
東 ? 譬如 Interactive 的 interpreter 相對於 compiler , 另外,
就是改善的趨勢會是甚麼 ? (譬如使用中間碼的 interpreter)
其次, 在那些地方或條件下, OOP 可以像一般的 C 使用 pointer
那樣方便的 reference structured data (如 array 或 record) ?
--
◎ Origin: 中央松濤站□bbs.csie.ncu.edu.tw From: 140.115.6.234