精華區beta Programming 關於我們 聯絡資訊
※ 引述《PsMonkey.bbs@ptt.cc (痞子軍團團長)》之銘言: > ※ 引述《gsj.bbs@bbs.nchu.edu.tw (國王的新衣)》之銘言: > : 我從來沒有反對抽象化的概念 > : 將某些龐雜的事物化簡為抽象化的概念,的確是有它的好處與需求 > : 問題是將事物抽象化的方式、模型有多種, > : 那一種才能最符合實際的狀況?或者是人類日常生活的習慣? > : 就如我以往所強調的: > : 對稱性很種要 > : 你可以去觀察你的四周,人類社會組織的運作方式 > : 包含你去考駕照、去餐聽吃飯、交女朋友等 > : 不管這些事情有沒有訴之於條文,你可以發現一件事就是 > : 它們都是 "循序化" 的一個過程 > : 我不知道你拿一個與事實狀況不對稱的OO抽象模型來套用它會有什麼好處! > 我有點不了解了,還請各位大大開示... > gsj 大大(至少人家 po 字很多)一直說 "循序化" > 問題是,OO 內部的程式碼還是循序化的,不是嗎? > 還是我的觀念有錯誤? > 就算是 OO 的抽象模型,到最後還是循序的執行,不是嗎?  你的觀念沒錯誤, 錯誤的是gsj .   OO本質上還是循序的執行 gsj的誤解大概來自於  1. 一般我們說C是procedural language, c++是Object-oriented language 這個procedural可以解釋為循序的 也可以說是sub-routine(procedure)式的 網路上兩種解釋都找得到.  依據前後文以及C/C++的特性來分析   我相信procedural language的procedural指的是sub-routine/sub function 並不是循序執行的意思 , 請參考這一篇文章 http://fold6oc.doc.ic.ac.uk/foldoc/foldoc.cgi?procedural+language   這裡procedural 的相反詞是declarative language. 而C++並不是declarative language 2. gsj 把GUI跟OO全都搞混在一起,MFC/BCB/VB等與OO的關係他大概也搞不太清楚 看到程式沒有void main(),那些event handler也不知道怎麼被呼叫起來的 就以為GUI程式並非循序執行, 連帶著也以為OO非循序執行 .    > : 在我看來根本就是自找麻煩 > : 如果對稱性夠,也不會有這麼多人摸了兩三年還不知道OO在作什麼 > 不扯別的... 就說我親身經歷 > 我以前摸了兩年,才知道 Quick Basic 的 sub 怎麼呼叫 > call by value 跟 call by address 有啥差別 > 身邊也不是沒有唸了四年,還是不會寫程式的人    板上不知道OO在做什麼的除了虛心向學的OO初學者外   也就只剩一些堅持OO無用論/OO書卻有看沒有懂的老鳥了    -- ※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ From: NK219-91-72-209.adsl.dynamic.apol.com.tw