想在编程语言之间切换开发?这些网站向开发者展示如何在不同的语言和框架之间过渡。
开发者试图从一种语言转到另一种语言的时候,总是会遇到这样的问题:我需要怎么做才能实现这个功能?他们可以用原来的语言轻松实现这个功能,但是放到新的语言环境中,就非常糟糕了。
看到相同的概念、设计、算法,如果用不同的语言实现总是可以帮程序员脱离这种尴尬的境地。下面五个网站,有用最流行的语言实现的特定的例子(包括一些你也许不知道的),还有用不同的方式处理相同的命令。
1.Rosetta Code
它涵盖最多的实例,最有效的注释,同类网站中最有用的网站, Rosetta
Code 被描述为”编程教科书”—— 一个如何用不同语言实现相同功能的Demo的代码仓库。Rosetta Code最引人注意的地方不是网站的规模也是不是Demo的数量,而是Demo的粒子化程度,例如:用GUI创建一个窗口,不是用语言注释,而是用那种语言编写的特数据工具;在Tkinter,
PyGTK, Pythonwin, wxPython, and many other libraries的Demo中使用Python编写的工具注释。
2.Eqcode
Eqcode旨在展示“所有的语言的等效代码”,所以它为特定的概念或功能提供了一个常用编程语言的索引,比如从数组中删除一个特定的元素或构造一个正则表达式来匹配一个电子邮件地址。语言的广度是不错的,但概念的评定有点模糊,它不是经常更新,最后更新于2014年4月。
3.CrossWise
它跟其他的网站一样,CrossWise 可以让你了解用不同的语言——如:Javascript,PHP,Ruby,Python——实现相同的概念。这个网站的设计无疑是非常巧妙的:不同代码的实现被展示在并排的两列,你可以选择在哪一列展示哪种语言的例子,横向可以完全展示一些细节,如boolean逻辑(真实或虚假的概念)在每种语言是怎么实现的,或者错误处理,异常的实现的细节。
4.AlgPedia
这是一个庞大的项目,由里约热内卢联邦大学创建。 AlgPedia是一个协作的百科全书,主要专注于算法的实现。排序、校验检查、高精度、数据挖掘、模式匹配,以及许多其他种类的算法都包括在内。项目仍处于早期阶段,所以提供的算法和实例的类型有点不完整,他们中的大多数只有一个或两个例子。
5.PLEAC
Perl
Cookbook 是展示perl的常见的编程问题及其解决方案的文档,Perl因Perl Cookbook而广为人知。 PLEAC试图把问题展示在CookeBook上,并提供几乎所有语言的解决方案。到现在为止,Perl,
Groovy, Python, OCaml, 和Ruby的解决方案比较全面,但是他的根目录和内容中还包含大量其他语言。有趣的是,Javascript并不在他们的根目录,但是有一个CoffeeScript的根目录,和许多其他在这里的人一样,如果你喜欢的语言这里没有收录,欢迎提供