为什么不是c#程序员吸引ruby,因为java程序员
这是我注意到的趋势。 java社区对ruby的采用非常广泛。 是不是c#是如此令人敬畏的语言+拥有优秀的java工具,大多数c#开发人员都不像Java开发人员那样永久地切换到ruby?
你有什么看法?
C#是一种现代的,非常强大的语言,运动:
- Lambdas(关闭)
- 延续(
yield
) - 价值类型
- 属性
- 类型推断
- 传递通过引用
…仅举几个。
这些特性使得从C#到Ruby的过渡远没有从Java到Ruby的过渡那么有吸引力。
因为.NET是连贯环境的一部分,包括开发人员工具,数据库链接,orm管理GUI前端,网络前端等。
Java是一种语言! 丢失了零碎的碎片,完成了上述所有工作,但质量差别很大。 从像Apache POI这样比MS提供的更好的接口到MS提供的非常糟糕的J2EE堆栈,其中一半以非常复杂的方式以简单而优雅的方式执行。
而对于企业级,数以百万计的事务,防弹,快速永远不会丢失数据所有额外的工作,将J2EE,JDBC,Spring,Hibernate等组合在一起。 实际上是值得的,对于一个快速简单的Web to Database应用程序来说它太痛苦了,因此对ROR有吸引力。 另一方面,虽然.NET可以扩展到大的东西(不如J2EE!),但是做一个小应用程序仍然相当简单。
我看到两个原因:
- 在我看来,为Java开发人员切换到Ruby的最大好处是闭包和动态类型推断。 这两个都可以在C#中找到。
- .NET受益于与Windows平台的紧密集成 – (COM互操作,WPF,易于安装),使得从.NET切换到其他东西变得更加困难。