開發人員(工程師)應培養的6個編程習慣
文/1ON1
開發人員(工程師)們應培養的6個寫程式的習慣
當要成為一名優秀的工程師(開發人員、程序員)時,除了要有寫程式的能力以外,也應該慢慢培養某些習慣,使自己能夠持續地精進。雖然大多數程序員都會同意有一些習慣是很棒的,但是實際上,他們大多數都不具備這些習慣。
眾所周知,我們是由習慣來定義我們成為什麼樣的人,為了成為更好的程序員,我們應該嘗試養成良好的編程習慣。
以下將為您分享,您應該嘗試養成六個出色的編程習慣,使你在寫程式的產業裡其脫穎而出。
清理代碼
第一個好的編程習慣是,每當更改一段代碼時,都應嘗試改進該代碼。
由羅伯特·C·馬丁(Robert C. Martin)對這種習慣有很好的論述:
總是讓你所編寫的代碼,找到更好的寫法。(如果你可以用一行代碼解決,為何要用兩行?)
當您閱讀一些代碼時,你可以改進許多小細節,刪除一些不必要的內容,你所做的更改可能與重命名這種小事情的重要性差不多,或是如同一般函數,基本上你只要確保一次至少進行一項改進即可。
你要盡可能的將代碼保持在更好、更精簡的狀態,這個大大減少了代碼出現錯誤的機會。
養成此良好習慣的目的,是因為我們應該不斷學習。使昨天變成讓今天做得更好的養分。
代碼會隨著時間的流逝而越來越難以處理,因此,保持代碼的簡潔,對於未來的可維護性至關重要。
為下一步提前思考
當工程師(程序員、編程者、開發人員)最重要的是對於下一步的思考以及開發邏輯,這非常重要!
每當你編寫一段代碼時,你都應該考慮自己的團隊,或後續接手的開發人員在查看這段代碼時,能輕鬆理解或發現問題;因此在開發時,就應該以這種思路編寫這段代碼,以使其易於理解
就研究顯示,閱讀代碼與編寫代碼所花費的時間比,幾乎是遠超過10:1的,這代表著若從長遠來看,你可以通過花更多的精力使代碼提升可讀性,來節省自己或團隊的大量時間。
在編碼方面,淺少一些花俏、個人主觀的寫法,應將程式碼寫成能盡可能讓所有人都能理解的方式。
盡可能的不要做一些你從Stack Overflow複製而來的直接代碼,這些操作甚至都不是你自己能真正理解的。
不要做太多多餘的事
雖然說未雨綢繆是一件好事,特別是當我們要求開發某種功能時,大多數的開發人員會額外構建一些欄位、資料庫來以防萬一(以備不時之需)。
但有時候這些動作往往是多餘且耗時的,這也算是「過度工程」及「過度設計」的一種,容易使你的Code變得比本來單純需要的功能所需的Code,變得更厚重、複雜,其實應該減少這樣的習慣,畢竟這些額外的代碼可能永遠都不會使用到,也等於做了很多不必要的白工。
因此,如果你有這樣的習慣,為了不讓你的程式碼在未來變得難以使用,且能夠直接從根本上理解該程式碼的意義,建議要慢慢的改掉這種習慣。
多數的擴充、欄位或新功能若是真的要在加,基本上都不至於太困難,只要不要把Code寫死就好。
有了計劃在開始寫Code
許多工程師都有一個壞習慣,就是對於某些自己感興趣的部分,會直接先跳去從喜歡的開始做,乍看之下似乎非常有效率及行動力,但這種行為很可能讓你在最後花更多的時間。
如果在還沒有任何計畫的同時,就直接進入寫程式的步驟,除了看不到大方向以外,也很可能讓你在編寫程式碼的時候,越寫越沒方向,越寫越雜亂,最後要花更多的時間來重新整合。
因此,在開始編碼之前,你需要先花點時間計劃、架構和排程,考慮一些你後續可能會發現的問題,以及如何解決這些問題,包括如何建構這些代碼?打算實施此方法的原因是什麼?有沒有更簡單的方法?
紀錄
記錄工作,對於工程師們來說,是非常非常重要的,也是一個很棒且必要培養的一個習慣之一,他可以讓你在開發上更順利、更上手、更省時。
舉例來說,你是否曾經寫出過一個沒有任何文檔來說明如何正確設置所有內容或應用程序應該如何工作的儲存庫,這不只會讓自己花很多時間回去研究,如果你本身有團隊或其他夥伴需要接手,那更是容易讓人完全摸不著頭緒,最後可能整段Code都要重寫或不能用。
因此,如果可以,請把每次編程的過程與結果以白話的方式記錄下來,並與Code整理及存放好應該存放的位置。
永不停止的學習
艾薩克·阿西莫夫(Isaac Asimov)說過:「從停止學習的日子那天起,就是開始衰落的日子。」
在程式語言的技術世界中,總是日新月異的,在此情況下,停止學習絕對會讓你退步的。
雖然說緊跟著變化不停的學習一切新知是不可能的,但至少一定不要排斥接納新知事,或是有空就花一些固定時間,學習一種新的框架或程式語言等;
特別是現在有關開發程式的論壇很多,如果你的外語能力夠強,你甚至可以多爬其他海外的文章,學習更多最新的知識或技術。
總結
將這六種習慣有紀律的培養起來,相信在不久的將來,你一定可以成為該產業中,獨當一面的專家嘍!
- 清理代碼(簡化代碼)
- 為下一步提前思考
- 不要做太多多餘的事
- 有了計劃在開始寫Code
- 紀錄(編寫紀錄)
- 永不停止的學習
瀏覽 4,062 次