对于学习新编程语言的童鞋来说,看书是个选择,阅读他人代码也挺好,但要说效率,我觉得没什么比实际动手写代码更高效了。
我在这篇文章中的建议就是:重新实现 Unix 命令。
如何着手?
假设你在学习 Python,你应当尝试做一个和 cat 命令功能的程序,或实现 tree 命令。
Unix (命令)程序通常都很精简,功能单一,并且做得都很好(传说中的“Unix哲学”),它们就是学习编程的完美典范。针对一个问题,用最佳方式解决。
Chris Wanstrath 很久之前有一个相关范例。
在接触新语言时,通过重做这些小程序,可极大帮助学习了解该语言的类与函数。
这里有个例子:
1
2
3
4
5
6
7
|
#!/usr/bin/env ruby
# 在 Ruby 中重做 cat 命令:
ARGV
.
each
do
|file|
puts
File
.read file
end
|
虽然学习任何编程语言都采用这种方式,但如果你在学习脚本语言,如Ruby、Python,甚至是 Node.js, 这种技巧效果会更好。
作为开发人员,我们常需要学习东西。我认为这样的小习惯(技巧)会有所作为的。
译注:如果你在学习 Haskell,Haskell 官方 wiki 有份实现 Unix 命令的程序列表。