程式設計的最基本原則是避免重複。在程式**中總會有很多結構體,如迴圈、函式、類等等。一旦你重複某個語句或概念,就會很容易形成乙個抽象體。
與避免重複原則相關。要記住,程式**中每乙個重要的功能,只能出現在源**的乙個位置。
簡單是軟體設計的目標,簡單的**占用時間少,漏洞少,並且易於修改。
除非你需要它,否則別建立新功能。
盡可能做可執行的最簡單的事。在程式設計中,一定要保持簡單原則。作為一名程式設計師不斷的反思「如何在工作中做到簡化呢?」這將有助於在設計中保持簡單的路徑。
所編寫的**一定要易於讀易於理解,這樣別人才會欣賞,也能夠給你提出合理化的建議。相反,若是繁雜難解的程式,其他人總是會避而遠之的。
你所編寫的軟體實體(類、模組、函式等)最好是開源的,這樣別人可以拓展開發。不過,對於你的**,得限定別人不得修改。換句話說,別人可以基於你的**進行拓展編寫,但卻不能修改你的**。
乙個優秀的**,應當使本人或是他人在將來都能夠對它繼續編寫或維護。**維護時,或許本人會比較容易,但對他人卻比較麻煩。因此你寫的**要盡可能保證他人能夠容易維護。用書中原話說「如果乙個維護者不再繼續維護你的**,很可能他就有想殺了你的衝動。」
最小驚訝原則通常是在使用者介面方面引用,但同樣適用於編寫的**。**應該盡可能減少讓讀者驚喜。也就是說,你編寫的**只需按照專案的要求來編寫。其他華麗的功能就不必了,以免弄巧成拙。
某個**的功能,應該保證只有單一的明確的執行任務。
**的任何乙個部分應該減少對其他區域**的依賴關係。盡量不要使用共享引數。低耦合往往是完美結構系統和優秀設計的標誌。
相似的功能**應盡量放在乙個部分。
隱藏實現細節原則,當其他功能部分發生變化時,能夠盡可能降低對其他元件的影響。
該**只和與其有直接關係的部分連線。(比如:該部分繼承的類,包含的物件,引數傳遞的物件等)。
除非你的**執行的比你想像中的要慢,否則別去優化。假如你真的想優化,就必須先想好如何用資料證明,它的速度變快了。「過早的優化是一切罪惡的根源」
重用**能提高**的可讀性,縮短開發時間。
不同領域的功能,應該由不同的**和最小重迭的模組組成。
這被認為是極限程式設計和敏捷方法的宗旨。
如何成為優秀程式設計師
1,文件習慣 文件是乙個軟體系統的生命力。乙個公司的產品再好 技術含量再高,如果缺乏文件,知識就沒有繼承,公司還是乙個來料加工的軟體作坊。作為 程式設計師,必須將30 的工作時間寫用於技術文件。沒有文件的程式設計師勢必會被淘汰。2,模組化思維能力 要想成為乙個優秀的程式設計師,他的思想不能僅僅只在侷...
如何成為優秀的程式設計師
1 學習應該從基礎打起,不要一開始就嘗試最高深的技術。2 每看一本書,不要說這章我以前學習過了,也掌握的很好,因此我可以跳過這一章看更重要的了。3 對於作業,遇到不會的盡量不要立刻向別人請教。如果實在解決不了的問題,可以先完成你會的,然後把一些特別的難點提煉出來,向高手請教。3 不要指望書本和行家能...
如何成為優秀的程式設計師 (二)
1.紮實的基礎。資料結構 離散數學 編譯原理,這些是所有電腦科學的基礎,如果不掌握他們,很難寫出高水平的程式。據我的觀察,學計算機專業的人比學其他專業的人更能寫出高質量的軟體。程式人人都會寫,但當你發現寫到一定程度很難再提高的時候,就應該想想是不是要回過頭來學學這些最基本的理論。不要一開始就去學oo...