看板 Soft_Job 關於我們 聯絡資訊
※ 引述《csfgsj (Lazy bone)》之銘言: : 這應該是GUI吧! : 跟UI比起來 : GUI程式是一個很大的程式,但你只是在寫其中的一小小部分 : 通常就是組態設定參數初始化作業 : 以及 : 事件訊息發生時的對應程式 : 這個訊息通常來自於Polling whileloop : (寫單晶片的都知道這只是基本款) : 不過你可能不容易見到它,甚至連程式的main()都不知去向 : (有些初始化作業跑到建構子裡去了,也看不到) : (繼承後會不會亂成一堆,也是眼不見為淨,你家的事) 會亂成一堆個鬼啦,你要不要舉一個GUI framework繼承之後亂成一堆的例子來看看? 我們不妨來看一下是你的理解能力的問題,還是OOP的繼承如此像是亞馬遜叢林? 大哥,你到底懂不懂『繼承』這兩個字的意思啊? 你吐槽繼承有些侷限性就算了,居然吐槽的是『繼承後會不會亂成一堆』... 我也很想吐槽你對OOP的sense。 : 原因是 : 由於每一支GUI程式大架構都一樣 : 只有相對很小部分的組態及事件訊息對應程式需要客製化 : 因此XX都會將它包成Framework : 只有需要客製化的部分才揭露出來給你修改 : (剛開始還沒oop化) : 再加上OOP化之後,就是你現在看到的樣子 : (那些難看的Code都被 "封裝" 到電鍋裡了) : (放心,它們再也不會跑出來煩你了) : (電鍋裡有沒有蟑螂,也不會讓你知道,至少吃飯時的不會覺得噁心) : 從以前的MFC到現在的Android App 都是如此 : (C++與JAVA是一家人) 你提到MFC,你知道他是封裝什麼來著嗎?Windows API。 Windows API整個就是C style啦,你創造一個視窗就是呼叫hWnd = CreateWindowEx(...); 好啊,你告訴我CreateWindowEx具體做了什麼事好嗎?你怎麼知道裡面沒蟑螂? 前面說"初始化作業跑到建構子裡去了,也看不到",現在沒跑進建構子,你就看到了嗎? 你告訴我,不看使用說明,你拿個hWnd你會知道背後有多少意義嗎? 這可是完全沒有一絲OOP在裡面,就是單純的callback + handle。 所以不是OOP你就有比較知道裡面在幹嘛?根本沒有... 這擺明就是包起來的東西,扯到封裝...zzz,你真的知道OOP裡面的封裝是什麼意思嗎? 還是你以為封裝等於看不到? 依照慣例,大概又要說你不屑用MS的東西 好,openGL有沒有用過?同樣是C style沒有OOP的問題。 你要不要解釋看看他每個API是怎麼實作的?抱歉,各家的實作通常都讓你看不到, 還是說你隨時都知道他的每個三角形是怎麼畫出來的,一路怎樣跑進shader的? 我今天不是來戰C的啦,是來戰你這種不懂OOP,又愛講一堆似是而非東西的態度, 你真的有點理工素養的話,就是事實勝於雄辯,可惜你就是不敢去提任何一個"事實"。 整串看下來,你的文章通篇都說OOP隱晦隱晦隱晦隱晦隱晦隱晦隱晦隱晦隱晦隱晦。 現在還沒看你提出一個,因為OOP而變得難以trace的實例。 你真的要戰,就戰得專業點,這樣大家都心服口服, 不然看你對OOP這種程度的理解,卻發了一整串的OOP小評,實在是哭笑不得。 p.s.對了,請不要把我歸類為OOP信徒,我想我寫C並不會比你弱:) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.131.77 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1425323132.A.BD2.html
Lordaeron: 如何才叫懂OOP啊? 有證照嗎? 03/03 08:16
※ 編輯: xtxml (125.227.131.77), 03/03/2015 08:40:00
ACMANIAC: 沒有。 03/03 08:41
csfgsj: 在板上看久了,發現要證明自己懂OOP有兩種方式: 03/03 08:50
csfgsj: 1.背條文:將OOP的特性羅列一次 03/03 08:51
csfgsj: 2.將「你不懂OOP啦!」這句話時刻掛在嘴邊 03/03 08:51
iceonly: 樓上讓我以為來到了政黑板;不是所有人都需要證明自己懂O 03/03 09:03
iceonly: OP 03/03 09:03
TonyQ: @csfgsj 每個人都需要對自己的立論負責,你的立論膚淺而缺 03/03 09:03
TonyQ: 乏細節,被質疑是否正確理解 oop 是非常正常的事情。 03/03 09:04
xtxml: 我根本不用證明我懂不懂OOP 03/03 09:12
xtxml: 只是要說明你的言論就是把一堆毫無關係的問題硬扯到OOP頭上 03/03 09:12
rexdauder: 中肯好文 03/03 12:06
Lordaeron: 要說別人硬扯到OOP頭上,哪麼得先懂什麼是OOP吧? 03/03 12:10
Lordaeron: 還是像台灣人英明其妙的瘋足球一樣有趣? 03/03 12:23
rupcj8: 有人的理解能力就有問題啊 真想知道在哪裡高就 03/03 12:45
sorryla: 不用先懂OOP阿 只要說明他的問題在其他地方遇的到就成立 03/03 18:21
k1400: 03/04 00:23