Re: [閒聊] OOP小評

看板Soft_Job作者 (Lazy bone)時間9年前 (2015/03/02 22:41), 編輯推噓1(104)
留言5則, 3人參與, 最新討論串9/43 (看更多)
※ 引述《flyfoxy (飛狐)》之銘言: : 就是當你接手一隻程式 他有UI也有演算法 : 演算法是繪圖的演算法 每次視窗重繪就要呼叫它 : 但很多時機都有可能導致視窗重繪 而且要繪的東西都不相同 : 他全部給你寫在OnDraw()裡面 : 演算法也沒有封裝過 : 你看到的就是一堆透過描點來畫線 畫圓 畫多邊形的一連串指令 這應該是GUI吧! 跟UI比起來 GUI程式是一個很大的程式,但你只是在寫其中的一小小部分 通常就是組態設定參數初始化作業 以及 事件訊息發生時的對應程式 這個訊息通常來自於Polling whileloop (寫單晶片的都知道這只是基本款) 不過你可能不容易見到它,甚至連程式的main()都不知去向 (有些初始化作業跑到建構子裡去了,也看不到) (繼承後會不會亂成一堆,也是眼不見為淨,你家的事) 原因是 由於每一支GUI程式大架構都一樣 只有相對很小部分的組態及事件訊息對應程式需要客製化 因此XX都會將它包成Framework 只有需要客製化的部分才揭露出來給你修改 (剛開始還沒oop化) 再加上OOP化之後,就是你現在看到的樣子 (那些難看的Code都被 "封裝" 到電鍋裡了) (放心,它們再也不會跑出來煩你了) (電鍋裡有沒有蟑螂,也不會讓你知道,至少吃飯時的不會覺得噁心) 從以前的MFC到現在的Android App 都是如此 (C++與JAVA是一家人) 但從此 寫GUI程式,在Framework內,都會有一種沒頭沒腦的感覺 (反正一堆人天生無腦,這種問題一點都不困擾) 另外還有一個向量化的問題 這些Framework的設計者,都是智商高的天才 把你們會作的事,都事先想到想好了 (它們想不到的,你們一定也想不到) 對User揭露的操作介面有些已經不是Library,而是設定參數 (ex:layout.xml..etc.、傻瓜才用更簡化的 *.txt) 包含圖形物件的繪製,也盡量向量化 用幾個簡單的向量,來決定圖形物件表現 用批次化的處理,來取代一個Pixel一個Pixel的繪製 (所以大家的GUI外觀,看起來都一樣,整齊劃一真好) 上包加下包,這就是GUI的現況 : 重構也是有範圍力度的分別的 : 他並不是「打掉重刻」這種革命 : 也沒有人一天到晚都在重構 : <Refactoring>這本書 : 他有建議你適合重構的時機 : 你可以自行決定需不需要重構 Framework重構可是會死人的 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.228.30.245 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1425307281.A.2DE.html

03/03 00:44, , 1F
你還是先google"重構"是什麼比較好
03/03 00:44, 1F

03/03 01:37, , 2F
感覺起來原PO習慣用sequential的方式工作 不習慣OO方式
03/03 01:37, 2F

03/03 01:41, , 3F
封裝起來就是為了不用管底層 但有人就是看不到底層心裡
03/03 01:41, 3F

03/03 01:41, , 4F
就不踏實。這串看起來感覺是這個樣子。
03/03 01:41, 4F

03/03 07:10, , 5F
你只是缺乏抽象思考罷了
03/03 07:10, 5F
文章代碼(AID): #1Kz7QHBU (Soft_Job)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 9 之 43 篇):
閒聊
3
26
文章代碼(AID): #1Kz7QHBU (Soft_Job)