新手程式設計師須知30個技巧!少走彎路

wangsys發表於2021-09-09

最近不少讀者問我,自己新手程式設計師上路,面對工作有時候無從下手,很吃力,有沒有一些小技巧,可以提供給他(她)。小編當然是知無不言,只有能幫的,小編都竭盡所能啦!

以下小技巧,希望大家能靈活地運用到學習程式設計和工作當中!



圖片描述

1.想要提升腦容量,那就開始檢視工作日誌。

2.先用profiler調查,才能開始談最佳化。

3.註釋貴精不貴多。

4.普通程式設計師+google=超級程式設計師。

5.單元測試總是合算的。

6.不要先寫框架再寫實現。最好反過來,從原型中提煉框架。

7.程式碼結構清晰,其它問題都不算事兒。

8.好的專案作風硬派,一鍵測試,一鍵釋出,一鍵部署; 爛的專案生性猥瑣,口口相傳,不立文字,神神秘秘。

9.編碼不要畏懼變化,要擁抱變化。

10.程式設計之事,隔離是方向,起名是關鍵,測試是主角,除錯是補充,版本控制是後悔藥。

11.一行程式碼一個兵。形成建制才能有戰鬥力。單位規模不宜過大,千人班,萬人排易成萬人坑。

12.重構/最佳化/修復Bug,同時只能作一件。

13.簡單模組注意封裝,複雜模組注意分層。

14.人腦效能有限,整潔勝於雜亂。讀不懂的程式碼,嘗試整理下格式; 不好用的介面,嘗試重新封裝下。

15.迭代速度決定工作強度。想多快好省,就從簡化開發流程,加快迭代速度開始。

16.忘掉最佳化寫程式碼。過早最佳化等同惡意破壞;忘掉程式碼作最佳化。最佳化要基於效能測試,而不是糾結於字裡行間。

17.最好的工具是紙筆;其次好的是markdown。

18.最有用的語言是English。其次的可能是Python。

19.資源、程式碼應一道受版本管理。資源匹配錯誤遠比程式碼匹配錯誤更難排查。

20.不要基於想象開發, 要基於原型開發。原型的價值是快速驗證想法,幫大家節省時間。

21.序列化首選明文文字 。諸如二進位制、混淆、加密、壓縮等等有需要時再加。

22.編譯器永遠比你懂微觀最佳化。只能向它不擅長的方向努力。

23.至少半數時間將花在整合上。時間,時間,時間總是不夠。

24.與主流意見/方法/風格/習慣相悖時,先檢討自己最可靠。

25.出現bug主動查,不管是不是你的。這能讓你業務能力猛漲、個人形象飆升。

26.不知怎麼選技術書時就挑薄的。起碼不會太貴,且你能看完。

27.Log要寫時間與分類。並且要能重定向輸出。

28.註釋是稍差的文件。更好的是清晰的命名。讓程式碼講自己的故事。

29.code review最好以小組/結對的形式。對業務有一定了解,建議會更有價值(但不絕對)。而且不會成為負擔。管理員個人review則很容易成team的瓶頸。

最重要的一點!

成熟的猴子跟幼猴的區別是:找蝨子!!!呸。。不是,哈哈,是來自於debug的能力!


圖片描述

很多新手遇到程式執行結果不對(尤其是圖形程式設計師),先認為是機器毛病(浮點精度、硬體故障),然後認為是驅動有錯,再認為是系統有錯,最後才開始排查自己的程式。其實99%的情況下是自己程式有錯,然後那1%裡面的99%是系統有bug,再接著那1%裡的99%是驅動有bug,最後到硬體問題,已經微乎其微了。應該從高層往底層查,而不是反過來。


圖片描述

debug一般來說是知道現象,但原因未知。這一點和很多自然科學的情況一樣,所以完全也可以用科學的方法來:

提假說->根據假說做出預言->做實驗肯定或否定預言。

對應於debug,那就是假設是某個地方有問題,那麼推斷它一定會導致除了你看到的現象之外的其他現象,執行程式看你的推斷是否成立。

掌握這個方法後debug不在變成瞎找瞎試,而是有跡可循有系統可依賴的方法。

想要了解更多學習程式設計的方法,請關注小編,每天更新!



作者:一墨程式設計學習
連結:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3244/viewspace-2814886/,如需轉載,請註明出處,否則將追究法律責任。

相關文章