课程咨询 :186 8716 1620      qq:2066486918

昆明Java培训 > 达内新闻 > Java和.NET的故事
  • Java和.NET的故事

    发布:达内科技      来源:达内昆明      时间:2015-11-13

  • 昆明java培训 据数据得出:.NET的闭包(closures)功能深受众多开发者的欢迎,Java似乎不久也将实现它们,当然,这是一个语言功能,而非运行时功能。昆明java培训认为,你最终选择它们两个中的哪一个,这要取决于个人喜好和当地职业机遇。

    1.Java SE 7遭遇.NET CLR会发生什么?

    JVM和.NET CLR都发生了众多改进;过去那些只有技术非常高超的程序员才能完成的许多事情,现在借助于JVM和.NET CLR的增强功能,普通程序员也能够做得到。

    尽管JVM和.NET CLR并非在同一个时间实现相同的想法,但是如果在一方出现了某个好的想法,另一方也会迅速跟进,这一点不仅仅体现在运行时层面上。

    长沙java培训

    举例来说,对于 Java来说,Hibernate项目取得了巨大成功后,.NET也迅速推出了NHibernate。而.NET的闭包(closures)功能深受众多开发者的欢迎,Java似乎不久也将实现它们,当然,这是一个语言功能,而非运行时功能。

    .NET闭包大受好评,Java也将迅速跟进

    2.在可以预见的未来,一个运行时是否会彻底击败另一个?

    尽管从技术层面上JVM和.NET CLR非常相似,但它们都有自己的市场,两者的灵活性都不是很强。如果一个人已经围绕.NET服务器和IIS创建了他们的基础架构,他不可能第二天醒来把所有这些迁移到Java,反过来也是这样。甚至如果一个公司决定切换自己的开发平台,那它可能需要替换整个开发团队,或者从头开始对他们进行培训。即使培训完成后,在技能上还是存在严重的不足;毕竟,一个高级.NET开发者不可能在经过3个月培训后突然变成一个高级Java开发者。

    另外,公司需要保留现有技术人员来维护已有的代码。你认为这些员工会坐视他们的职位被取消,或者他们的技能将变得无用或贬值吗?当然不会。对一个公司来说,完全从Java转向.NET或完全从.NET转向Ja va,都是一种自杀行为。最多是通过一个多年期项目来对员工进行重新教育。自从.NET 发布以来,从VB6到.NET的迁移都已经花了8年时间。

    程序员和项目的转型需要时间

    3.Java开发的成本是否比.NET开发更具经济性,如果是这样,人们是否会转向Java来节省投资?

    如果你仅仅着眼于工具,我的答案是“既对也错。”的确,只要你愿意,你可以在一个完全开源的组合上运行Java。你可以采取 linux/Tomcat/MySQL/Java组合,或者在服务器方面使用SPRingSource组合,在开发者的计算机上使用Eclipse或NetBeans。但是需要指出的是,无论出于什么原因,你都不会是开源替代产品的狂热支持者,我并非说替代产品就不好;如果是那样的话 ,与.NET工具相比,Java工具的价格相当,在很多情况下甚至更贵。而且从甲骨文和IBM等公司正在进行的业务来看,很明显许多公司认为有必要付费购买专有Java工具。就价格而言,在任一指定市场领域,微软几乎总是价格最低的企业类厂商。

    另外,你必须考虑到如果没有切换成本公司将会省下多少钱。一个Visual Studio副本的成本要远低于一个中等收入开发者的周薪和保险金。而且同一个开发者学会Java并且达到他擅长.NET的水平,所需要的时间要远远大于一周时间。

    出于公平考虑,这种分析也同样适用于从Java转向.NET。相比于平台切换的痛苦,开发工具成本实在微不足道。当然也有两种例外情况。第一种情况是新建公司,那么不存在迁移成本的问题。在这种情况 ,Java依然不具有成本优势,因为微软也已经推出了免费版本的Visual Studio(Express版),而且如果你的公司是新创公司的话,通过BizSpark计划,你可以免费获得三年MSDN和微软许可,它们还不错。另外一种例外情况是,一个公司具有非常高的服务器-开发者比例,例如谷歌或雅虎。此类公司可能有许多开发者研发运行在数千台服务器上的一个应用。在这种情况下,开发者工具并非节省成本的主要因素,但服务器空间是。对于面临这种情形的公司,Java(和其它开源技术)可以具有一个决定性的成本优势。

    4.一个Java开发者需要了解多少脚本语言,才能实现.NET中的效率?

    首先,你是否在进行Web开发工作?如果是这样,你可能需要了解一些Javascript知识,并熟悉相应的框架。对于后端工作来说,知道一门动态语言或脚本语言不是强制性或必需的。尽管如此,在Java领域存在许多此种用途的不错选择。对于目前还不是一名Java开发者的人来说,我没有这方面的任何实际经验来介绍,但是我听到很多关于Groovy和Scala不错评价。如果你希望选择某些更主流的技术,JRuby和Jython是不错的选择。

    有各种方式提高Java应用的性能

    在过去数年中,JVM已经开始大量支持非Java语言,开发者现在拥有众多选择。学会其中一种肯定有助于你成为一个更好的开发者(即便你并不在实际产品项目中使用它们),可以让你在项目陷入困境时提供另一种方向。

    昆明java培训零基础学习,基础知识学习扎实,课程设置合理,每一阶段搭配与之相适应的实训,能够将所学尽快有实践来加强学习能力。

    推荐文章

上一篇:来学习!截取java 中字符串中运算符之间的变量

下一篇:昆明java培训分享:Java中的关键字

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:11/30

Java--零基础业余班

Java--零基础业余班

开班日期:11/30

Java--周末提升班

Java--周末提升班

开班日期:11/30

Java--零基础周末班

Java--零基础周末班

开班日期:11/30

  • 网址:http://km .java.tedu.cn      地址:昆明市官渡区春城路62号证券大厦附楼6楼
  • 课程培训电话:186 8716 1620      qq:2066486918    全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56