「代碼整潔之道-程序員的職業素養」讀書筆記

本書雖然主標題爲「代碼整潔之道」,但其實內容主要講的是:如何成爲一個專業合格的程序員。因此副標題做爲主標題更爲合適 — 「程序員的職業素養」。程序員

程序員做爲專業技術的工種,「職業素養」是咱們須要在整個職業生涯中不斷最求的東西,它不只表明你單純的技術能力(固然優秀的技術水平是必須的),還表明着你解決問題和創造價值的能力。也就是說,我的的技術能力並不徹底表明你做爲程序員這個職業的價值,更重要的是你對問題思考和解決的方式、對任務的承諾、同事之間的協做等,最終可以帶領團隊完成一個又一個看似不可能的任務!學習

如下我將會根據本書的書寫思路,挑選幾個觀點,介紹大體內容和我本身的感想,但願對本文讀者有所幫助。測試

專業主義

"專業主義"有很深的含義,它不但象徵着榮譽與驕傲,並且明確意味着責任與義務。這二者密切相關,由於從你沒法負責的事情上不可能得到榮耀與驕傲。編碼

本章節主要敘述了作一個專業工程師須要的幾點要求:對象

  • 承擔責任
  • 瞭解你的領域
  • 堅持學習、訓練
  • 合做與輔導
  • 瞭解業務領域
  • 與客戶保持一致
  • 謙遜

做爲了一個合格的工程師,首要一點是懂得承擔責任。這一點相當重要,由於這是代表你這我的是否靠譜最明顯的特性。從任務是否可以按時完成,對系統上線前的測試驗證,哪怕是由於你本身的錯誤致使的損失,都須要敢於承擔責任,盡力完成本身承諾的事情,努力彌補錯誤。一旦被別人打上不靠譜的標籤,那就很難再撕掉了。項目管理

第二點是咱們須要堅持學習,因爲技術的革新很是快,只有堅持學習才能不被這個行業所遺棄,同時也堅持訓練,畢竟熟能生巧在各行各業都適用。開發

最後,除了專業技術,咱們也須要也有義務去了解本身開發的模塊對應的業務領域,未必須要成爲該領域的專家,但仍是須要花時間去了解業務的背後價值和原則,知其然知其因此然。程序

說不

能就是能,不能就是不能,不要說「試試看「方法

本章主要敘述一個專業的工程師,要用於說「不」,也要懂得如何說「不」。技術

一個專業人士要懂得說「不」,由於只有將問題暴露出來了,纔有解決問題的機會。本章做者用了一些例子來講明,當你雖然認爲項目經理分下來的任務是不可能完成的,但當你選擇不對抗,致使他認爲你可以按時完成,最後引起了災難。

因此咱們在平時的工做中,要懂得說「不」,要懂得拒絕,而不是一味的接受。

而「爲何不「重要嗎?文中的觀點是「爲何「遠不如」事實「重要,對於這一點,我認爲能讓決策者知道爲何是再好不過了。

文中還特別強調了「試試看「的危害性,由於決策者每每會將「試試看」看成一個承諾,排入了他的項目計劃中,而工程師每每想表達的只是我盡力,但什麼都不保證。

這時候有個問題,項目管理者每每但願工程師可以準確的預估工做量,可是工程師預估的工做量每每是「我試試看」,實際狀況可能差異很大。這裏我主要有兩點想法:一是做爲項目管理者,須要天天實時的瞭解進度,調整計劃,畢竟預估的工做量每每沒法作到十分準確,有太多的因素會影響了;二是預估工做量,能夠採起 PERT 方法,增長確信度。

說是

本章主要講述了承諾是什麼,如何給出承諾。

作出承諾,包含三個步驟:

  1. 口頭上說本身將會去作。
  2. 內心認真對待作出的承諾。
  3. 真正付諸行動。

有時候咱們沒辦法作到本身的承諾,每每是由於咱們承諾了一件本身不是能徹底掌控的事。

固然有時有各類緣由致使咱們沒法兌現承諾,這很正常。但若是你但願你在同事的形象是一個靠譜的人,那麼最重要的是儘快向本身承諾的對象發出警告,越快越好!!

固然,咱們不該該由於承諾就放棄一些底線,打破紀律和原則每每會拖慢進度,同時也要測試過代碼,保證代碼整潔。

時間管理

一天的時間其實會過得很是的快,如何在這短暫的時間內儘量高效的工做、取得儘量多的成果是很是值得研究的事情。

會議是在平常工做中無可避免的事情,可是會議同時也會浪費大量的時間。做爲會議的執行人,須要肯定議程和目標,肯定每一個議題所花的時間以及明確的目標。

而做爲會議的參與者,首先要懂得拒絕會議,避免參加沒有必要的會議,由於對你時間負責的人只有你本身。

咱們平常舉行過最多的會議,是站會,每一個人依次回答如下3個問題:

  1. 我昨天作了什麼?
  2. 我今天打算作什麼?
  3. 我遇到了什麼問題?

每一個人發言不超過1分鐘,目的是減小整個站會的時間,因此要求項目負責人在會議開始前就思考好要安排的內容,而不是現場隨意的想,每一個人乾脆利落的交代本身的工做,減小無止境的對話交流。

本書還介紹了一種時間管理方法:番茄工做法。這也是我如今正在使用的一種時間安排方法,有興趣的小夥伴能夠自行去了解一下。

預估

管理者和開發者對預估可能有不一樣的見解,管理者可能以爲預估就是承諾,而開發者每每預估只是猜想。可是不能否認,一個相對準確的時間預估可讓管理者作出合適的計劃。

這裏介紹一種預估方法:PERT,能夠根據3個數字預估任務:

  • O:樂觀預估,這是很是樂觀的數字,表示一切異常順利的狀況下;
  • N:標稱預估,這是機率最大的數字;
  • P:悲觀預估,考慮到各類意外狀況下的悲觀數字。

那麼任務的期待完成時間:u = (O + 4N + P) / 6

標準差(數字越大,表示期待完成時間越不肯定):v = (P - O) / 6

好比一個任務,樂觀預估須要3天,標稱預估須要6.25天,悲觀預估須要11天,那麼經過上訴的兩個公式能夠獲得,期待完成的時間是6.5天,標準差是1.3。

結束語

固然本書還有不少內容這裏沒有提到,好比如何處理壓力,如何協做,編碼的節奏和測試等內容。雖然隨着時代的發展和本書做者所在的外國職場和國內職場的差異,有一些的內容我不盡然贊成,或者以爲會難以實踐。但這並不妨礙本書很是值得每個工程師都閱讀一下,相信這對你成爲一個更加專業的工程師是有很是大的幫助的。

相關文章
相關標籤/搜索