重做Unix命令,快速有效學習新語言

jobbole發表於2012-11-05

  注:本文譯自巴西保利斯塔 18 歲程式設計師Rodrigo Alves Vieira 的文章《Learn a Programming Language Faster by Copying Unix》。

  對於學習新程式語言的童鞋來說,看書是個選擇,閱讀他人程式碼也挺好,但要說的效率,我覺得沒什麼比實際動手寫程式碼更高效了。

  我在這篇文章中的建議就是:重做 Unix 程式。

  如何著手?

  假設你在學習 Python,你應當嘗試做一個和 cat 命令功能的程式,或實現 tree 命令。

  Unix (命令)程式通常都很精簡,功能單一,並且做得都很好(傳說中的“Unix哲學”),它們就是學習程式設計的完美典範。針對一個問題,用最佳方式解決。

  Chris Wanstrath 很久之前有一個相關範例

  在接觸新語言時,通過重做這些小程式,可極大幫助學習瞭解該語言的類與函式。

  這裡有個例子:

#!/usr/bin/env ruby
 
# 在 Ruby 中重做 cat 命令:
 
ARGV.each do |file|
  puts File.read file
end

  雖然學習任何程式語言都採用這種方式,但如果你在學習指令碼語言,如Ruby、Python,甚至是 Node.js, 這種技巧效果會更好。

  作為開發人員,我們常需要學習東西。我認為這樣的小習慣(技巧)會有所作為的。

  譯註:如果你在學習 Haskell,Haskell 官方 wiki 有份實現 Unix 命令的程式列表

  英文原文:Rodrigo Alves Vieira,編譯:伯樂線上 – 黃利民

相關文章