手机版
你好,游客 登录 注册
背景:
阅读新闻

为什么.NET感觉上比Java差一点

[日期:2016-10-02] 来源:Linux社区  作者:steven-yang [字体: ]

其实,我本人很喜欢.NET技术。工作经历中,大部分时间也在使用.NET开发。
这几年,由于工作的原因,开始进入Java+Linux世界。
今年,开始学习Python和Scala。
使用.NET时,有种什么都准备好了的感觉。而使用Java,什么都需要自己找。
C#的语言特性比Java,可以说是先进多了。而且,我觉得微软的SDK的质量更好。
Java似乎发展的比较慢。(不知道是不是内部政治斗争的原因。看来,大教堂也有比集市跑得快的时候。)
微软CEO纳德拉上任后,拥抱Linux的策略,并开源许多微软的项目。我觉得微软终于走到了正确的道路上了。虽然晚了点。

但是,现在.NET比起Java,感觉上还是差一些。

什么样的语言更具有统治地位?

被更多人使用的语言:

首先通用性要比较强。

这个比较容易让人理解,什么地方都可以用,自然更好。谁知道过几年会干什么,学习通用性更强的语言,适应能力也会更高。
C#在这方面,其实稍微差一下。主要原因是微软以前总是只考虑Windows系统。
Java在OS上的适应能力,明显更强。

有很好的社区支持。

这是python成功的主要原因之一。社区支持不尽可以降低学习门槛,而且开发大量的类库,可以增强其通用性。

开放性和自由行

尽管.NET一直鼓吹自己比Java更开放。(按照License来说,似乎是实事。Oracle告Google也让人心寒。)
但是,问题不在License上,而是在文化上。
微软以前,总有种,自己是大哥,带一群小弟的样子。就像梵蒂冈的教会。
Java的文化,更接近于自由软件的文化。
所以,Java上,有各种各样的技术从各个角落里冒出来,比如Struts, Spring, Hadoop, Spark, Scala等等。
而微软方面,就很难想象,她会允许别的公司在.NET上,拥有比她更高的地位。

对未来的适应性

新公司崛起的一个主要原因,是技术上突破,满足了未来市场的需求,领导了发展方向。
这本身具有很大的随机性。
大公司一个手段是通过收购来追赶潮流。
收购有个局限性是:最好和公司有一定的融合性。
微软的问题在于:用微软技术的公司不够强大(微软压迫的?),强大的公司又不用微软的技术。

对微软的建议

反正不负责任,就随便说吧。

  • 取消C#和.NET的绑定,拥抱Java, C, C++, JavaScript,你能抱上谁,就抱吧!
    其实Scala提供了一个很好的灵感。Scala是基于Java上的一种语言。它可以编译成JVM的byte code,可以让Java调用,也可以调用Java。
    微软完完全全可以将C#语言(或者开发一种新语言)做类似的事情。
    允许C#绑定其它的Framework,比如:Java,C,JavaScript, Python等等。
    允许C#可以是强类型语言,或者是弱类型语言。
    比如:开发人员可以选择一个平台(比如Java),之后,开发的程序可以编译成JVM的byte code。
    用户也可以选择其它的Framework: C, python, JS等等。
    其主要思想是:
    • 让C#(或者新语言)作为程序员的开发接口。
    • 降低程序员学习语言的成本。(现在冒出来的语言实在是太多了)
    • 新的语言可以方便的使用任何社区提供的现有类库。
    • 增强语言的适应性。
  • 培养社区开发出多种新的开发工具。
    可以开发基于Eclipse,Intellij的,或者一种全新的开发工具。

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-10/135681.htm

linux
相关资讯       .NET  
本文评论   查看全部评论 (1)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
第 1 楼
* 匿名 发表于 2017/3/8 12:07:44
不懂编程,不过八人口歌不是也是控制安卓?