看板 PHP 關於我們 聯絡資訊
嗯... 在我寫程式的過程或是出一張嘴寫程式的時候, 個人一直認為"註解"跟"文件"是很重要的事情, 寫的好的註解不只是幫助自己再次了解程式外, 也幫助往後接手開發或維護的人。 (個人龜毛的寫註解要求,沒寫必退件。 = = ) 程式架構好壞跟註解 "個人認為" 是兩件事情, 當然不否認好的程式架構一目了然, 似乎可以不需要 "註解" 的存在, 但是有多少人能夠一接陌生的程式馬上就上手的? 想像一下一個超級完美的架構, 但很不好意思程式大概 5000 - 10000 行, 相信除了自己辛苦 TRACE CODE 外, 不外乎靠的就是 "註解" 阿 ...(迴音)... 別告訴我前面寫一段功能介紹就可以了解程式, 當要增加功能或是有BUG要修正, 沒看過程式一遍就想更動嗎? 這問題可就來嚕。 簡單來表達我想說的話 [註解是除了文件以外,最有效縮短了解程式的一種方法。] 這不重要嗎? 至少我覺得太重要了! 不然為什麼所有的程式都有註解的功能呢? 別把這當程浪費時間或信念問題哩! 題外話 tkdmaf 兄,看來您認識不少資深工程師, 那他們有沒有告訴您或是您自己有無體會 "無法快速維護及修改的程式" 很可怕真正原因? 原因不在於"程式架構的好壞", 而是"懶得打掉程式太多部份重練造成的經濟或金錢損失"。 所以期望好的程式架構來改善損失。 很高興您重視程式架構, 也期待您有好的作品。 忘了補充一點, 看一堆書後, 期望您能實作出來, 才不會浪費您在書上的所學, 您說是吧 :) ※ 引述《tkdmaf (皮皮快跑)》之銘言: 43.... : 您也是相當高調的不管別人講的因地制宜是什麼意思。 : 或者當別人沒再意到這種狀況? : foreach($_POST as $key => $value){ : $$key => $value; : } : 當然會有你說的情況發生。 : 但如果是: : foreach($_POST as $key => $value){ : $key = "p_".$key; : $$key = $value; : } : ok!uid任您改,valid任您改,password任您改,什麼都讓你用html去改。 : 反正改完跑到我程式一樣拒絕處理。 : 方法本身有優點有缺點不管什麼情況都有可能。 : 因地制宜不是指當用則用。 : 而是指在知道他的缺點而能補齊其問題點所在的情況下。 : 如果他是合用的則仍然可以繼續使用。 : 不要一昧的去排斥各種可能的方法:如果你能確保他是安全無誤而且可以使用的話。 : 另外有人提到註解我就順便說了。 : 使不使用註解這可以算是一個爭議。 : 我不能說你使用註解就不對。 : 但你也不能說我不用註解就表示我不好。 : 但前提在於:你對於你的程式架構所表達的清楚程度有多少。 : 很多人把php的結構混雜的亂七八糟。 : 他需要靠註解告訴自己(還不是告訴別人喔!)這一段程式碼到底在處理什麼樣的功能。 : 但我們反過來說,假設你的程式架構是清楚明白的,根本上甚至以物件、函式的名稱就 : 足以知道這個程式的功能面在做什麼樣的事情。那註解就沒有必要去產生。 : 在學習UML架構圖的時候,我們就很清楚知道什麼物件是什麼功能,繼承物件是繼承什麼 : 功能。定義介面告訴我們需要實作什麼功能。 : 當你把每一段程式都切成一個一個功能面的東西時。 : 他就是一個功能。那既然都知道他的功能面的用途。 : 何必還要再為他下註解? : 最多就是程式開頭告知這隻程式的用途為何。 : 各位有興趣去看看像是ucenter之類的軟體,看看人家的程式中寫了多少行的註解。 : (開頭的說明不算) : 看看當人家外國人在使用良好的設計方法不斷的改善程式的設計及效率時。 : 我們花了多少的時間在其實並沒有必要的事情上。 : 這不是一個理論也不是一個高調! : 而是究竟有多少工程師會去真的在意程式設計的架構本身。 : 這邊我相當良心建議各位有疑慮的去找這五本書好好讀完。 : 我也還沒讀完,但一直在思考書中說的究竟是些什麼道理。 : 1.專業PHP5程式設計(不是專業PHP程式設計,也不是專業PHP5程式設計指南) : 2.重構-改善既有程式的效率 : 3.重構-向範式前進 : 4.敏捷開發原則樣式與實務 : 5.極致編程(eXtreme Programming) : 這些書全部都是外國人寫的。 : 但全部都有中文譯本。 : 看看別人怎麼說,怎麼做。又看看我們自己卻是怎麼去面對程式碼的。 : 順便就再提。 : 2/21日在台北的南港就有敏捷開發軟體座談會。 : 講師是從事程式設計20年的資深設計師同時也是軟體公司的老闆。 : 我們很期望大家都能正視程式結構所可能發生的問題。 : 軟體的安全性固然很重要,但是無法快速維護及修改的程式是更加可怕的。 : 希望各位了解,我講的東西不是說隨便說說,而是有文獻、書籍以及一些資深的 : 工程師他們所告訴我的設計經驗。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.151.2