我是一名 C# .NET 开发人员,主要从事 ASP.NET 项目。
我想学习一门新的编程语言
- 通过体验新语言来提高我的编程技能,
- 看看与微软环境不同的东西,
- 也许以不同的方式思考。
为了实现我的目标,我专注于两种语言。Python and Ruby.
- 您为我提供哪一款?
- 他们各自的优缺点?
- 他们值得学习吗?
EDIT :抱歉我编辑了我的帖子但没有在这里通知,
Ruby on Rails 被 Ruby 取代。
两种语言都强大且有趣。两者都将成为您工具箱的有用补充。
Python 拥有更大的社区和可能更成熟的文档和库。它的面向对象有点不一致,感觉(对我来说,恕我直言)就像是固定在语言上的东西。您可以在运行时更改类行为(猴子修补),但不能更改预编译类的行为,而且通常会令人不悦。
Ruby 可能与您当前的体验稍有不同:它有一些 Smalltalk 的风格(例如,方法调用更正确的是消息发送)。它的面向对象是从头开始内置的,所有类都可以修改,并且这是一种可接受的(尽管有点可怕)实践。社区较小,库不太成熟,文档覆盖范围也较少。
这两种语言在其下一个主要版本中都将具有一定程度的破坏的向后兼容性,两者都有 .Net 实现(IronPython 是生产环境,IronRuby 正在实现)。两者都有反映其优势的 Web 框架(搜索 SO 进行 Django/Rails 辩论)。
如果我从未见过 Ruby,我会很高兴使用 Python 工作,并且在必要时不会遭受任何痛苦。我总是发现自己希望能够用 Ruby 来完成这项工作。但这是我的意见,YMMV。
编辑:想一想,尽管这让我很痛苦,但如果您想利用 .Net 框架的知识,您可能最好看看 IronPython,因为它比 Ruby 等价物更成熟。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)