寫了 20-50 年的程式碼,才明白的那些真理

演算法與數學之美發表於2018-12-05

640?wx_fmt=jpeg


現如今有關軟體開發的一切創造發明,不過是人們不斷地重新發現某些東西,並假裝他們發明了新東西。所有你認為很酷、很新的東西都是從 Smalltalk(被公認為第二個物件導向的程式設計語言和第一個真正的整合開發環境 IDE)、HAKMEM、Ivan Sutherland(計算機圖形學之父和虛擬現實之父)、Douglas Engelbart(計算機界的資深學者)、早期的 IBM 或者貝爾實驗室那裡抄來的。

  • 不要相信編譯器。不要相信工具。不要相信文件。不要相信自己

  • 我們不需要新的程式語言。不過你肯定還會發明另一種語言。我猜,你的新語言肯定會用 IEEE-754 數學和固定精度整數。那你的新語言已經失敗了。

  • 維護程式碼比編寫程式碼更難。寫很多很多新程式碼是懶惰的表現。

  • 學習程式設計時都會假設記憶體、處理器時間和網路頻寬都是免費且無限的。而事實上,它們不是,它們不是,它們不是。好好讀讀 Knuth 關於過早優化的文字。

  • 不出幾個月你就會忘記你寫過程式碼。所以程式碼一定要傻瓜都能看懂

  • 許多時候你只需要一行的 sed 就夠了。

  • 當心那些說話絕對的程式設計師,比如說我的方法永遠比你的好之類的。程式設計是一門書,不是信仰

  • 如果你知道一系列固定的步驟要重複十次以上,就寫個指令碼吧。

  • 備份是一回事兒,恢復備份是另一回事兒。

  • 在你的機器上能用,不意味著沒有 Bug。——Peers Sutton

  • 開發工具要等出了 .1 版之後再安裝。讓別人去做小白鼠

  • 優秀的程式設計師寫優秀的程式碼。大師級程式設計師不寫程式碼。宗師級程式設計師刪程式碼

  • 不管有多少經理對你怒吼,第一步永遠是要穩定地復現 Bug

  • 早晚你會遇到一些比你經驗豐富些的人,他早晚會給你講程式設計的定律。你要做的就是完全無視他

∑編輯 | Gemini

來源 | CSDN

 翻譯 | 彎月

640?wx_fmt=png

演算法數學之美微信公眾號歡迎賜稿

稿件涉及數學、物理、演算法、計算機、程式設計等相關領域,經採用我們將奉上稿酬。

投稿郵箱:math_alg@163.com

相關文章