回顧我的職業生涯,我曾自己單槍匹馬地幹過,也和一些特別有才能的人一起共事過,曾解決過一些非常嚴重的技術難題,也見識過一些鼎鼎大名的技術公司。
近期我和我的團隊偶然聊起我的這些經歷,談論的成果是我們在編碼時應該知道一些原則。這不是規矩,也不是指導方針。它們只是我在編寫和運行代碼時總結出來的一些需要注意的原則。
1.偏執
偏執是我的諍友,而且我認為它也應該成為我們每一個工程師的「左膀右臂」。我們要偏執的是,應該總是想著從另一種方式來證實假設,或者從另一個角度去看我們遺漏了什麼。雖然很多時候這顯得很雞肋,但是有時候它能發揮至關重要的作用 。
2.不要欺騙電腦
電腦是最誠實的孩子,如果你欺騙了它,它絕對會狠狠地反咬一口。
3.簡單就好
理解是重點,要知道程式設計師大部分時間是在維護代碼,而不是寫代碼。
4. 優化第一戒律就是不要優化
優化可以採取多種形式:速度、後驗形式、潛在規模、可能用途,等等。
5.不要僅僅修復bug;要修復所有可能發生bug的地方
思考以下問題:這種bug現在還有可能出現在哪裡?以後又比較容易出現在什麼地方?是什麼原因造成了這種模式的bug?我能不能一下子一網打盡呢?
6.不斷地做問題假設
我們應該一直保持這種態度,不斷地詢問自己這些假設情況。什麼是真正需要解決的問題?是不是只要求解決效果而不必追究根本原因?解決方案完整嗎?完備嗎?值得嗎?
7..從長遠角度思考。放慢腳步,才能跑得更快
這可能是最重要的一點了。作為工程師,我們享受於高效的工作效率:喜歡不斷地創建、創建、創建。但是如果我們不能用長遠的角度看問題,只會作繭自縛,使得最後越來越難構建任何東西。
8.關心自己的代碼
我想這一點沒必要過多解釋了吧。不過遺憾的是,現在有很多人時不時地將其拋之腦後。為自己的工作驕傲!關心你自己寫的代碼!
9.成本、速度、正確率
這是軟體中的鐵三角關係,也是全世界軟體工程師孜孜以求的目標。但是這不能成為我們裹足不前自滿自得的藉口。
10.最後,保持好奇心,不斷地學習
好吧,這可能看上去更像是職業建業。但是如果你沒有了好奇心,不願意學習新鮮事物,不再關心新技術、新語言,那麼你還幹這一行幹嘛呢?
上述編碼原則可能並不完美,各位如有不同意見,歡迎指正,在下洗耳恭聽。
點擊【閱讀原文】了解更多