你需要每天寫程式碼嗎?

2015-07-17    分類:程式設計師人生、首頁精華7人評論發表於2015-07-17

本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃

就像運動員每天鍛鍊一樣,每天練習寫程式碼可以成就更優秀的你。

最近我看過的部落格,基本上每篇都有提到,“你需要每天寫程式碼”。什麼主題不重要,關鍵是要養成每天寫程式碼的好習慣。寫得越多,程式碼就會變得越容易,你也會越擅長編碼。

這不僅適用於寫程式碼,寫詩和運動,事實上,這句話可應用於任何行業。騎自行車,打籃球,讀書,烹飪等等等等。你做的越多,你就會越擅長,熟能生巧就是這個道理。

這也是程式設計領域的真理。如果你想擅長程式設計,那麼你就必須每天寫程式碼。程式碼寫得越多,你才會覺得它越容易,並且越擅長於程式設計。就像我在本文中列出的其他任務一樣,每天寫程式碼,即使你已經習以為常,卻依然很難保持住這個習慣。

“我應該寫什麼?”這個問題的答案是因人而異的,但這卻是你用自己的方式每天寫程式碼所必須先克服的障礙。通常人們編寫程式碼是用來解決問題的,但不是每個人都有問題需要解決。這就像著名的雞和蛋的問題。那麼,你應該從哪裡開始呢?

我比較喜歡重寫已經存在的東西。有時候,費勁心思想出一個新的不一樣的點子是很困難的,甚至是針對現有思想想出一種新的方法路徑也不容易。然而,現有可複製的專案很多很多。我的想法是嘗試複製專案的總體目標,但用的是我自己的方式。這可能意味著使用不同的語言,或改變它的API,又或者只是採取一些古怪的新方法來解決同樣的問題。

這樣瘋狂的練習寫程式碼讓我變得更善於發現問題。例如,大概幾周前,我決定用go寫一個Web伺服器(類似於nginx/apache)。我想要一個又合適又易於使用的配置檔案來定義設定。所以,我做了在現在大多數人都會做的選擇,我使用了json,但感覺並不合適。然後嘗試了yaml,但依然不是我想要的。我可能也試過使用ini格式以及為鍵和值制定自定義規則,但無濟於事。於是為了解決這個問題,衍生出了一個新的專案——一個go的手動編碼配置檔案語法和解析器演變成為一個整潔的混合了jsonnginx的配置檔案語法。

不論怎麼說,這樣一來我就有了一個可用的專案。雖然是通過複製已經存在的東西,其實並沒有真正嘗試新的內容,但我從這個過程中得到的那個衍生而來的專案,至少能讓我一個星期都有理由每天去寫程式碼。這麼做不僅能能讓我真的寫出一些有用的東西——可用於以後我的任何專案,而且也讓我也學到了一些我之前並不知道的東西。比如說我學會了如何用go手動編碼一個語法分析器。

最後,“每天編碼”這個挑戰不是為了每天寫一些有用的東西,而是為了每天學習新的東西。學習新的語言,學習新的框架,學習拆開和組合。每天寫程式碼,每天學一點新的東西。隨著時間的積累,你不但能學到很多,你也會變得更為優秀。

加油,和我一起快樂編碼吧。

譯文連結:http://www.codeceo.com/article/coding-everyday.html
英文原文:Write code every day
翻譯作者:碼農網 – 小峰
轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]

相關文章