1. 程式人生 > >新程式設計師不知道的25個程式設計小技巧

新程式設計師不知道的25個程式設計小技巧

如果只是周而復始地寫程式碼,想必程式設計的工作會讓很多程式設計師發狂。如何在看似枯燥的工作尋找樂趣,我認為對工作的激情和興奮感、始終學習的態度,還有掌握一些實用高效的程式設計技巧,對於提升工作樂趣和效率大有裨益。今天我就跟大家分享一下25個實用程式設計小技巧,希望可以給大家的工作和學習帶來更多的思考。

  1. 不要毫無計劃地寫程式碼,思考、調研、計劃、編碼、測試、修改,一個都不能少;

  2. 不要寫程式碼前過度計劃,在一頭鑽進程式碼前做點計劃是好事,但是即便是好事,也可能物極必反。

  3. 請勿低估程式碼質量的重要性,如果你只能夠關注你所寫的程式碼的一個方面,那麼肯定是可讀性。表意不明的程式碼就是垃圾,甚至是不可回收的垃圾;

  4. 使用實現功能的最簡單方案,作為專業的程式設計師,你的職責不是找出問題的一個解決方案,而是找出問題的最簡單的解決方案;

//歡迎加入前端全棧開發交流圈一起吹水聊天學習交流:{{864305860:0}}
5. 適時放棄,當你開始懷疑一個解決方案的時候,你就應該考慮拋棄它,並且重新思考這個問題。不管你已經在這個解決方案中投入了多少精力。像 GIT 這樣的版本控制系統能夠幫助你分開管理和嘗試多種不同的解決方案,把它利用起來吧;

  1. 擅用 Google,除非你正在使用一種極其前沿的技術,否則當你遇到一個問題時,很可能別人早就遇到過同樣的問題了,並且也找到了解決方案了。給自己省點時間,先 Google 一下;

  2. 做好封裝,基本的想法就是你想你的程式碼高內聚和低耦合,意思是說保持相關的程式碼在一起(在一個類中),降低不同類之間的相互依賴;

  3. 做好規劃,寫好需求再寫程式碼,儘可能編寫目前正在實現的方案所需的最少量程式碼;

  4. 要懂演算法,使用合適的資料結構;

//歡迎加入前端全棧開發交流圈一起吹水聊天學習交流:{{864305860:0}}
10. 不要寫重複性程式碼,要用好配置檔案,不要使用沒必要的條件語句和臨時變數;

  1. 做好程式碼註釋,但是不要給傻子都知道的程式碼寫註釋;

  2. 一定要寫好測試,如果可能的話,甚至在開始寫程式碼實現需求之前,你就應該開始預估和設計需要測試校驗的情況了。測試驅動開發 (Testing-driven development, TDD)不是什麼花俏的炒作,它是會實實在在會對你思考功能特性、尋找更好的設計方案產生積極影響的。

  3. 不要覺得程式碼執行起來就是正確的,有些時候程式碼的 bug 可能並不是顯而易見的;

  4. 要能夠質疑既有程式碼,作為一個初學者,總是應該假定那些你讀不懂的、且沒有文件註釋的程式碼很可能就是糟糕的程式碼。質疑之,詢問之,使用 git blame 揪出罪魁禍首!

  5. 不要過度迷戀最佳實踐,我覺得“最佳實踐”其實是害人的,它暗示著你不需要深入研究它,這就是有史以來最佳實踐,不用質疑!

  6. 不要過度迷戀效能優化,如果你在執行程式碼之前就在優化它了,那很可能你就是在過早優化程式碼了,也很可能你正在費時費力做的優化是完全沒必要的。

  7. 以使用者體驗為目標,要站在終端使用者的角度看問題。專業的開發者要考慮這個特定功能的使用者需要什麼、怎樣使用,要想方設法使得這個功能容易讓使用者發現和使用,而不是想方設法在應用中用最便捷新增這個功能,毫不考慮這個功能的可發現性和可用性。

  8. 為你的開發任務挑選合適的工具,你可以使用最原始的工具建造房子,然後享受甜蜜時光。你也可以花費一些時間和金錢去了解先進的工具、更快地建造更好的房子。工具在不斷地改進中,你要樂意去學習它們、使用它們。

  9. 要理解好程式碼問題和資料問題之間的關係,即使是程式中最小的 bug 也會導致它所管理的資料去到一種不可預測的狀態。尤其是當所有資料校驗都完全在這個有 bug 的程式中進行時。

  10. 切勿重複造輪子,使用好現有的輪子和各種開源庫,會讓你事半功倍。當然,不要僅僅為了使用一兩個函式就引入一整個程式碼庫,在 JavaScript 中的典型例子就是 lodash 程式碼庫;

  11. 對程式碼審查保持正確的態度,應該把每一次程式碼複審當作是學習的機會,歡迎他們、感激他們、從中學習,最重要的,當你從你的程式碼複審人員那裡學習到東西的時候,要感謝他們;

  12. 用好版本控制工具和系統,新手往往低估了一個好的版本控制系統的威力,我這裡所說的好的版本控制系統其實就是指 Git;

//歡迎加入前端全棧開發交流圈一起吹水聊天學習交流:{{864305860:0}}
23. 不要過度使用共享狀態,一個新手可能會嘗試使用定時器來解決這個共享變數的競態條件問題,特別是當他們必須處理一個數據鎖的問題時。這是危險的標誌,別這麼做,注意它,在程式碼複審中指出它,永遠也不要接受這樣的程式碼。

  1. 正視 Error,Error 是好東西。Error 意味著你在進步,意味著你可以通過簡單的後續修改就獲得更多的進步。專業程式設計師喜愛 Error。新手則痛恨 Error;

  2. 學會休息,任何人的大腦都需要休息,身體也需要休息。