程式碼簡潔之道 - 程式設計師為啥要保持整潔的程式碼?

本文是自己在閱讀《程式碼簡潔之道》過程中的一些心得體會,分享出來和大家共鳴,如果對這本書感興趣的、想要閱讀原文的朋友可以私信傳送:

程式碼簡潔之道

,即可獲取到PDF下載連結!如果已經閱讀過的朋友可以相互交流!

程式碼簡潔之道 - 程式設計師為啥要保持整潔的程式碼?

我們會有各種理由寫出混亂的程式碼

對於寫出混亂的程式碼,我們可能會給出下列的一些理由:

想快點完成需求;

需求緊急,趕時間;

對這個專案沒有興趣不耐煩,想要早點結束這個專案;

還有其它緊急事情,必須快點結束當前編碼工作;

等等。。。,各自有各自的理由。

我們都想著,先上線再說,先把功能實現了再說,有總比沒有好,想著有時間了再回來最佳化下程式碼,殊不知:

稍後等於有永不

混亂程式碼會有很多不利的影響

有點程式設計經驗的程式設計師就會遇到過又臭又長的混亂程式碼,晦澀難懂,令人噁心;

對於這種混亂程式碼,往往改一處,就會影響許多地方,事倍功半,令人絕望;

混亂的專案,往往加人無法解決專案的效率,人月神話;

等等。。。,令人心塞。

遇到這種混亂的專案,往往需要重構,然而重構代價巨大,嚴重的甚至公司會在劇烈的競爭中被淘汰。

儘管有各種寫混亂程式碼的理由,程式設計師還是要有相應的原則態度

產品經理經常需要向其它人有交代,需要規劃專案的進度,而開發人員又是專案中最重要的角色之一,所以經常會問開發人員的時間進度,給程式設計師造成壓力。然而多數經理人還是想要好的程式碼,即便他們也他們經常糾纏進度,那是他們的職責所在。作為程式設計師,

熱情的護衛程式碼這就是我們的職責所在

舉個例子:假如你是醫生,病人要求你手術前不要洗手,那會浪費時間,你會照辦嗎?本該病人說的算,但是醫生卻必須要拒絕遵從。因為醫生比病人更加的瞭解疾病。

同理,

程式設計師尊重混亂產品的需求,也是一種不專業的做法

所以,需要保持程式碼整潔

我們都知道,別人寫的混亂的程式碼會拖了自己的後腿,但是迫於時間壓力,自己也製造混亂,顯得很矛盾。我們應該堅持保持程式碼的整潔,這才是做得快的唯一的方法!寫整潔的程式碼,需要我們刻苦訓練,習得程式碼的

整潔感

那麼,什麼樣的程式碼稱的上整潔呢?

我們先引入一個

“破窗理論”

窗戶破損的建築會讓人感覺似乎無人照管,於是別人也不關心,放任這個破損蔓延,最終自己也參加破壞活動,在牆上塗鴉,亂扔垃圾,一個破窗開闢了大廈走向頹廢的道路,就好比一處混亂的程式碼,開闢了一條走向混亂專案的道路!

那麼什麼樣的程式碼是整潔的呢,

不同的人側重點不一樣

,以下是幾個知名程式設計師的看法:

C++語言的發明者認為

:優雅、高效、邏輯應該直接了當、儘可能少的依賴,效能調到最優,這樣就不會有人亂最佳化程式碼。

程式碼簡潔之道 - 程式設計師為啥要保持整潔的程式碼?

C++的發明者

wiki的發明人認為

:每個段程式都令你滿意的話,那就是整潔的程式碼。

程式碼簡潔之道 - 程式設計師為啥要保持整潔的程式碼?

wiki的發明者

本書作者的看法

:作者會在本書中詳細地介紹具體到類、變數命名等整潔的看法,後續詳細介紹(

點選右上角關注按鈕,後續會持續更新具體的寫程式如何保持程式碼整潔

),當然這些看法有很多存在爭議的地方,大家求同存異吧!

程式碼簡潔之道 - 程式設計師為啥要保持整潔的程式碼?

本書的作者

最後總結

關於編寫程式碼的過程,我們

讀和寫的比例超過10:1

,在寫新程式碼的時候,一直在閱讀舊的程式碼,所以我們應該用心保證程式碼整潔,使之變得好閱讀。很多程式碼隨著時間的流逝,變得腐壞,我們必須阻止這種事情的發生!

借用美國童子軍的一句話:

讓營地比你來的時候更加的乾淨

作為優秀的程式設計師,我們應該讓我們程式碼:

checkin的時候比checkout的時候乾淨