寫出好程式的幾大原則

來源:互聯網
上載者:User

做程式時間不長,但是看看身邊的同學寫的代碼品質好的不多,自己也走了很多彎路!所以自己就把心得體會拿出來與大家一起分享.如果讀者你有什麼深刻的體會請也在這裡評論一下大家一起學習:

第一:代碼要避免重複,

如果一段相同代碼被你複製來複製去,那麼應該考慮一下你的代碼架構是不是很合理!不要隨意Ctrl+C,Ctrl+V;

能用代碼產生器產生的肯定可以用更好的方法替代!

解決方案有很多種我常用的方法:

 

  1.如果兩段代碼有相同部分但是又有不同部分,應提取共同部分(重構)獨立出來成為一個新的類或者方法(代碼短)

 

第二:代碼要功能上相對獨立,盡量避免功能嵌入,多採用事件廣播,功能外拋,方法注入的模式!

任何一個程式或軟體在現在的程式設計語言中都是由類和方法堆砌而成的,要想讓你的代碼有很好的重用性,讓你的勞動成果得到放大請盡量的讓你的代碼能夠獨立運行,小到一個方法,大到一個功能組件,一個架構都應該要獨立!

舉一個比較常見的錯誤,我有一個學生,他在寫代碼的時候為了實現一個點擊樹形菜單時提示的功能,竟然牛X到改寫tree.js的原始碼在中間加了這麼一句話alert("部門是不能選擇的!");這樣就造成了這個樹的不可重用!其他人要用這棵樹該怎麼用了?所以應該在這個地方把點擊事件外拋,或者功能注入

 

第三:多採用成熟的架構,不要再造輪子(專案管理者應該注意的問題)

  目前中國的程式員普遍的存在這麼一個現象,"我的想法比你的更好,我的idea更先進",於是自己摩拳擦掌日夜奮戰,幾天幾夜後終於搞出了一個比現在更好的架構,你認為比較優秀的架構.恕不知你只要和作者聯絡一下讓他加一個功能就夠了!何必自己有奮戰那麼多天自己又搞出來一份?你的勞動難道不值錢?過了兩天你的這個架構沒用就扔了!這麼多天的勞動浪費了,你不是在浪費生命嗎?

所以我勸大家不要重複創造已經有的東西,不要重複的發明輪子!

  從公司的角度來講,你想做一個軟體是為了做軟體不是為了寫組件,所以請採用成熟的組件,不要自己再創造那麼多的"垃圾組件"你認為它很完美其實它很差勁!即便是花1萬塊錢去買一套比較成熟的架構也是划算的,你算算成本,做這麼一套架構需要多少時間多少人力,做出來的東西穩定嗎?可靠嗎?以後的維護呢?是否因為這些組件的編寫而嚴重影響了整個軟體項目的進度?

 

第四:世界上沒有完美的事物

  首先請確信上面這句話是對的,既然"世界上沒有完美的事物"那麼你的組件或程式或軟體也不會完美,你做的功能再怎麼強大和完善也不會完美,所以請不要勞心費神的想把事情做得近似完美.  可以更好,但是絕對達不到最好,程式要簡單,易組合,易拆分這就很完美了!

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.