1. 程式人生 > >於碼農而言什麼樣的程式碼才能叫做好程式碼?

於碼農而言什麼樣的程式碼才能叫做好程式碼?

640?wx_fmt=jpeg

作者

Christian(編譯)

來源

https://sdk.cn/news/4719

好的程式碼,就像是好的笑話——無需解釋就能讓別人明白。如果你的程式碼能夠做到不解自明,在大多數時候,你根本無需為其配備說明文件。

640?wx_fmt=jpeg

好的程式碼,就像是一輛配備了優秀音響和杯架的汽車,這輛車在行駛到最高速度的時候,你聽不到噪音,也不用擔心水會灑出來。在它出現故障的時候,任何一名修理工都可以使用最常見的工具,在最短的時間裡輕鬆將其修好。 

而壞的程式碼,就像是一輛向你承諾最高速度可以達到200MPH,但是音響只能播放老式的磁帶,而且杯架還不穩的車。你在調整反光鏡角度的時候,汽車都會突然出現故障,而且一般的修理工還修不了這輛車,必須要找專家,讓專家在生產線上使用專業的工具來修理。 

好程式碼像是一本寫作技巧高超的人所寫的書

1.容易理解

2.分章明確,每一章都有清晰的主旨

而壞的程式碼像是剛剛學會寫字的人所寫的書

1.各個章節之間紛亂複雜,每一章都沒有明確的主旨

2.連篇累牘的重複一句話,而且毫無緣由

3.作者在一開始設定了一些規則,但是在後面的內容中卻自己不斷的違反這些規則

4.突然間書裡出現了一個吸血鬼,而且還能在白天出來吸血。

要想寫出好的程式碼,你一定要牢記以下內容

可讀性——不只是你,還有你身邊與你合作的其他開發者

可維護性——讓你的程式碼在修改的時候很簡單

簡潔性——不要讓你的程式碼看上去毫無必要的複雜

效率性——儘可能的讓你的程式碼獲得最快的執行速度

明確性——如果你的程式碼能夠做到不解自明,在大多數時候,你根本無需為其配備說明文件。在為方法和屬性命名的時候,做到儘可能的合理。把長的程式碼進行拆分。不要複製/貼上程式碼塊。

如果你的同事不能輕鬆的看懂你寫的程式碼,那麼你的程式碼就不夠好。

程式碼質量測試 

1.找一個從來沒讀過你的程式碼的開發者,讓他看你的程式碼,並且讓他試著說出每一個模組的作用。 

2.如果你經常需要向他進行解釋,那麼說明你的程式碼不夠好。解釋的次數越多,程式碼的質量就越低。 

3.如果你只是靜靜的坐在一邊,他無需問你任何問題,那說明你的程式碼質量很高。 

當你在寫程式碼的時候,一些訊號可以證明你寫的程式碼質量不錯:

  • 程式碼寫的很聰明,但是又不會過分的聰明

  • 無論在速度上,還是可讀性上,你都使用了最佳的演算法

  • 類、變數和函式都得到了正確的命名,讓人看一眼就能理解

  • 休息了一個週末之後,你繼續寫程式碼,發現自己可以立刻繼續之前的工作

  • 那些需要重複使用的東西總是可用

  • 你所使用的方法都很短,最理想的情況下要少於50行,最多不超過100行而且能夠完美的執行單個任務

  • 在呼叫方法的時候,你有著足夠的資訊,無需在程式碼堆中苦苦尋找

  • 能夠很輕鬆的在此前的程式碼中進行功能新增和修改

  • try/catch塊的體量儘可能的小

  • 毫不費力的就可以寫出單元測試

好程式碼都是模組化的 

假設你的專案中有三個不同的層——內層、中層和外層。你的內容不應該從中層和外層那裡匯入任何東西。中層不應該從外層匯入任何東西 ,這樣做的好處是,你可以對程式碼的內層進行獨立測試。

“好的程式碼本身就是最好的說明文件。” — Steve McConnell

END


本週知識星球主題預告:技術社群的盈利之道

這是一個最好的時代,也是一個最壞的時代,每個成功/失敗的背後都會有精彩的故事。

我不得不承認,在這個時代我們都是幸運的,不用風吹,沒有雨打,坐在家中,只通過一臺電腦,一部手機,就能開啟你的事業,這是何等幸福的生活,你現在開始行動了嗎?  

加入《就聊掙錢》來一場思維之旅。推廣期間特價66元。

640?wx_fmt=png