奥莱里公司有一个很不错的书籍系列,是以xxx cookbook为名,比如Ruby cookbook、rails cookbook、python cookbook、c# cookbook等等。这些书当然不是让你用Ruby或者Python煮菜,而是对特定比较典型不是很复杂的任务能够快速上手的代码示例。
但是不是每个语言都有类似的出版物,比如F#或者Lua这类语言,不太可能有它们的cookbook出现,毕竟语言有些小众,这时候RosettaCode网站就能帮你大忙了。
罗塞塔代码http://rosettacode.org/是一个程序选集网站(http://en.wikipedia.org/wiki/Program_Chrestomathy),有些类似cookbook这样的菜谱书,可以根据不同编程语言列出一些常用的任务主题。
每个主题包含了不同语言的实现,比如http这个功能实际上包含了C、C++、C#、FSharp等等不同的实现方式:
我比较感兴趣的Fsharp语言实现就有同步、异步两种模式的代码。
有了这些示例,既可以很快找到自己想了解的方案代码,还可以通过不同语言的实现做一个横向比较。另外,也可以通过这些例子来学习这门语言。一举多得非常有帮助。如果你有好的方案,还可以贡献到网站上,因为这个网站的架构是用wiki实现,用户也可以加入自己觉得好的代码。
除了罗塞塔代码,还有一些类似的网站,我把它们列在下面,大家可以参考使用:
http://www.99-bottles-of-beer.net/