为什么不是c#程序员吸引ruby,因为java程序员

这是我注意到的趋势。 java社区对ruby的采用非常广泛。 是不是c#是如此令人敬畏的语言+拥有优秀的java工具,大多数c#开发人员都不像Java开发人员那样永久地切换到ruby?

你有什么看法?

C#是一种现代的,非常强大的语言,运动:

  1. Lambdas(关闭)
  2. 延续( yield
  3. 价值类型
  4. 属性
  5. 类型推断
  6. 传递通过引用

…仅举几个。

这些特性使得从C#到Ruby的过渡远没有从Java到Ruby的过渡那么有吸引力。

因为.NET是连贯环境的一部分,包括开发人员工具,数据库链接,orm管理GUI前端,网络前端等。

Java是一种语言! 丢失了零碎的碎片,完成了上述所有工作,但质量差别很大。 从像Apache POI这样比MS提供的更好的接口到MS提供的非常糟糕的J2EE堆栈,其中一半以非常复杂的方式以简单而优雅的方式执行。

而对于企业级,数以百万计的事务,防弹,快速永远不会丢失数据所有额外的工作,将J2EE,JDBC,Spring,Hibernate等组合在一起。 实际上是值得的,对于一个快速简单的Web to Database应用程序来说它太痛苦了,因此对ROR有吸引力。 另一方面,虽然.NET可以扩展到大的东西(不如J2EE!),但是做一个小应用程序仍然相当简单。

我看到两个原因:

  1. 在我看来,为Java开发人员切换到Ruby的最大好处是闭包和动态类型推断。 这两个都可以在C#中找到。
  2. .NET受益于与Windows平台的紧密集成 – (COM互操作,WPF,易于安装),使得从.NET切换到其他东西变得更加困难。