程式設計師的進步從每一天少寫一點程式碼開始
Google 與網路的幫助可以讓你寫出一行又一行的程式碼。不過,若你只是複製貼上,事後並沒有嘗試瞭解背後的運作機制,充其量代表了「工作完成」。
那有什麼辦法可以讓自己進步呢?也許你可以從少寫一點程式碼開始。並不是要你不工作,而是想辦法精簡自己的程式碼。在某些方面,coding 跟寫作有些類似,並不是多就是好,正如馬克吐溫說的:
我沒有時間寫一封簡短的信,所以我寫了一封長的。
簡短的文字與程式碼相同,都需要耗費更多的腦力才能完成,並可以成功的運作。
簡單、經驗與理解讓你寫得越來越少
在澳洲的工程師 Elliot Chance 分享了他自己的看法,他認為要分辨兩個工程師的好壞,就是給他們一樣的時間,越好的工程師寫出來的程式碼越少(當然是要可以運作)。
除此之外,正如先前所說的,越長的程式碼並不代表越認真,有時候反而是因為懶惰,懶得思考,你才會寫出這麼長的程式碼。
而好的工程師因為從問題下手,對問題理解的非常透徹,能夠寫出簡潔易懂、容易維護的程式碼;而懶於思考,或者是較差的工程師,也許在鍵盤上敲下來一串又一串的程式碼,卻難以理解,併為後來的維護人員埋下了許多可怕的地雷。
而要如何進步呢?則可以從三個方面下手:
- 第一是多思考,不要以又臭又長的程式碼濫竽充數;
- 第二則是經驗,經驗越多,你越知道該怎麼下手;
- 最後,則是理解,透過對問題與所使用的語言、框架越加理解,越能寫的簡單易懂。
簡而言之,用一句話來說:多練習寫簡短的程式碼。
把時間花在審視與思考
在這邊要舉另外一個例子,是 Martin Thompson 在 QCon London 2016 大會的演講。他提到任何創造性的嘗試都可以從不斷地審視和完善中受益。
閱讀已經寫好的郵件、論文、blog 或報告等等,然後覺得某些部分可以做得更好呢?這是一件很自然的事情。當回頭審視這些東西,每次都可以獲得新的認知。
我喜歡將程式碼當作表現「當前」看法的地方。我們都會犯一些回過頭來看時可以糾正的錯誤,除了糾正這些錯誤外,我們還可以記錄我們更深入的理解。
定期閱讀所有的程式碼,而且不只是你自己的程式碼。閱讀他人的程式碼是一種很棒的學習方式。正如作家 Stephen King 所說,「閱讀其他人的作品是讓你成為一個更好的作家的最好方式」這同樣適用於程式碼。
結語
這時候就要拿萬用的標語來做結尾:KISS,Keep it simple and stupid。程式碼真的非常深奧,不管任何語言都有它神祕之處。
不過簡短的程式碼不一定好,則是下一階段要考慮的事情了。建議大家,想要好好進步的話,不如從今天開始,多思考,少寫一點程式碼吧!
本文最初發表在 buzzorange.com
相關文章
- 程式設計師的進步從閱讀自己的老程式碼開始程式設計師
- 為什麼程式設計師應該少寫程式碼程式設計師
- 程式設計每一天程式設計
- 為什麼程式設計師要儘量少寫程式碼程式設計師
- 程式設計師從教女友寫程式碼中學到的程式設計師
- Web 程式設計師開始學習遊戲開發的第一步Web程式設計師遊戲開發
- 給程式設計師的幾點程式設計經驗----《編寫高質量程式碼》程式設計師
- 程式設計師如何寫出好程式碼?程式設計師
- 好程式設計師不寫程式碼程式設計師
- 程式設計師這樣寫程式碼程式設計師
- java從零開始系列-一個前端程式設計師的自我修養Java前端程式設計師
- 中國程式設計師與美國程式設計師寫程式碼的區別分析程式設計師
- 程式設計師:開始程式設計生涯的5個建議程式設計師
- 程式設計師如何寫出更好的程式碼程式設計師
- 程式設計師如何開始新的工作程式設計師
- 當程式設計師寫不出程式碼了……程式設計師
- 程式設計師應該每天寫程式碼程式設計師
- 程式設計師,千萬不要重寫程式碼程式設計師
- 三個程式設計師在寫程式碼程式設計師
- 一個老程式設計師的程式設計之路,寫給年輕的程式設計師們程式設計師
- 轉向C#,從細微處開始 -- 寫給VB、VC程式設計師 (轉)C#C程式程式設計師
- 菜雞程式設計師是如何寫程式碼的?程式設計師
- 程式設計師的工作就只有寫程式碼麼???程式設計師
- 程式設計師:你的程式碼為誰而寫?程式設計師
- 程式設計師人生:如何開始,如何入門,如何前進程式設計師
- 女程式設計師,為什麼比男程式設計師少???程式設計師
- 【筆記】從0開始的程式碼審計筆記
- 程式設計師既要寫好程式碼,又要寫好文件程式設計師
- 程式設計師不僅僅是寫程式碼程式設計師
- 作為一個程式設計師,進步完全取決自己程式設計師
- 程式設計師用寫程式碼的方式找女朋友程式設計師
- 優秀程式設計師寫可除錯的程式碼程式設計師除錯
- 寫程式碼的女程式設計師無法賣萌程式設計師
- 1985年程式設計師是如何寫程式碼的程式設計師
- 新手學程式設計,從哪裡開始?程式設計
- 程式設計師最重要的一點_面向金錢程式設計程式設計師
- 改需求之路:設計師的一小步,程式設計師的一大步程式設計師
- 程式設計師職場——為什麼驕傲會妨礙我們程式設計師的進步程式設計師