Re: [閒聊] OOP小評

看板Soft_Job作者 (飛狐)時間9年前 (2015/03/02 17:41), 編輯推噓3(301)
留言4則, 4人參與, 最新討論串8/43 (看更多)
※ 引述《csfgsj (Lazy bone)》之銘言: : ※ 引述《flyfoxy (飛狐)》之銘言: : : 或者說過多的繼承會導致class十分龐大臃腫 : : 或者說資料和程序難以分開 導致十分難trace : : 我也曾經在如何抽離介面和演算法之間徬徨 : 這句話非常有意思,可以詳細說明嗎? 就是當你接手一隻程式 他有UI也有演算法 演算法是繪圖的演算法 每次視窗重繪就要呼叫它 但很多時機都有可能導致視窗重繪 而且要繪的東西都不相同 他全部給你寫在OnDraw()裡面 演算法也沒有封裝過 你看到的就是一堆透過描點來畫線 畫圓 畫多邊形的一連串指令 全部都用if else 分割這些畫型狀的描點指令 然後A處要畫圓,B處也要,C處也要 到處都是類似的程式碼 參數全部都是pointer丟來丟去 有的會變更值回傳 有的不會 有的根本沒用到 我一開始不知道重構這件事情 光看懂這幾串「描點」指令是畫圓還是畫方就快暈了 然後要再去trace什麼時機要畫圓還是畫方 你說你不重構不把界面跟演算法拆開就直接改 過了一段日子 根本不會記得那是啥鬼XD 又要重新看一遍 : : 甚至其實是coding習慣的問題,因為一開始架構就沒有寫清楚 : : 或是時間不夠流程和資料就混成一堆,程式能動就好, : 沒有一個程式是一開始就可以把所有的事件都想清楚的 : 包括架構 : 修修改改一定會碰到 : : 或是因為後續的需求變更使得class間的耦合性變得更複雜 : : 所以當你程式越寫越大,你就越早面臨「重構」這件事情 : : 上述的問題透過「重構」其實都可以得到解決, : 重構感覺就是在鬧革命 : 一個一天到晚在鬧革命的地方,您說會繁榮發展嗎?n 重構也是有範圍力度的分別的 他並不是「打掉重刻」這種革命 也沒有人一天到晚都在重構 <Refactoring>這本書 他有建議你適合重構的時機 你可以自行決定需不需要重構 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.87.85.162 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1425289262.A.3F1.html

03/02 17:44, , 1F
會「一天到晚」重構 首先該把架構師砍死 不是抓寫code的罵
03/02 17:44, 1F

03/02 19:02, , 2F
很多時候你會發現沒有所謂的專職"架構師"可以婊XD
03/02 19:02, 2F

03/02 20:53, , 3F
他根本把立法院修改法律當成每天在革命了阿XDDD
03/02 20:53, 3F

03/02 21:37, , 4F
聽起來像GUI,而不是UI
03/02 21:37, 4F
文章代碼(AID): #1Kz30kFn (Soft_Job)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 8 之 43 篇):
閒聊
3
26
文章代碼(AID): #1Kz30kFn (Soft_Job)