大家好,今天小编关注到一个比较有意思的话题,就是关于编程语言java落后的问题,于是小编就整理了2个相关介绍编程语言Java落后的解答,让我们一起看看吧。
c# 跟JAVA都属于同一种范式的语言,为什么前者的PL排名不如后者?
本来dotnet就是为跨平台设计的,被鲍尔默生生绑死在win平台,太可惜了。说心里话,C#因为比j***a晚,再加上ms在vcpp和j#上的经验,比j***a真的不是好一点半点,如果dotnet能坚持开始设计的初心,从一开始就提供跨平台的发展,即便不开源,只提供跨平台的runtime和编译工具,我敢说c#至少能和j***a平分秋色。可惜,鲍尔默时期的ms固执的坚守win平台,错过了重要的那些年。还好,现在dotnet core出来了,也开源了,可是有点晚,不知道未来会怎样
个人觉得主要原因有三点。
跨平台
选择.net也能跨平台,但是以前不行。运行在window下,其中涉及费用。
出现的晚
C#出现的时机比J***a晚。这个我觉得不是主因,因为足够优秀完全可以秒杀。可惜做不到。
生态
J***a出现这么多年,各种各样的框架为J***a提供了很大的开发便利性。别的不说,光Spring全家桶里的东西,几乎所有的j***aee应用都会用到。
此外,身边圈子很多组织或者公司已经开始由.net转J***a。怕微软不对我们开放。尤其是咱们的政务机构。
J***a都到16了,为什么感觉都还在用8,是越做越差了吗?
企业级现在还停留J***a8版本。大企业用什么版本才有影响力。因此导致感觉好像还在用8。
这里很大的误解是企业保守落后,其实企业版的J***a8和Oracle或者openjdk版本的J***a8区别非常大,不能混淆的。
先说缺陷修复和优化。
企业版本吸收了所有世面上能看到的缺陷,当然也包括16版本的。也就是普通版本说很多修复是普通版本16才包含的,远远落后企业版本的修复速度。
再说新特性。
这么说吧,J***a的新版本特性各大厂企业员工影响和贡献极大,说大企业不关注新特性是外行,就是人家弄的还说人家不懂是完全没道理的。
知道这些就明白了。所谓16是品牌宣传用的。企业使用都自己做优化了。
1.j***a8足够解决现实业务问题,并具有足够的稳定性和通过市场项目验证。
2.j***a8之后协议变更,变为收费,升级会带来法律问题,只要成为肥羊之时就是待宰之日,谁也不想被别人掐住7寸去发展。
对于企业来说如果用Oracle的jdk那么8是最好的选择,因为11已经开始服务化收费了,如果非要11的话用阿里巴巴的jdk或者亚马逊的jdk也是可以的,但是openjdk确实是存在问题的,生产环境慎用
我们还在用JDK6呢,一个公司开始使用一个东西后升级是很大代价的,本来运行稳定你这一升级很多都可能有问题,而且这些问题是没办法测试出来的,如果不是有些功能必须要用到高版本的JDK,我们根本不会考虑升级,因为相应一些三方插件也要处理,而且可能不一定有对应的版本,像转PDF,转EXCEL等,再加上現在J***A升級有多大的意义呢?j***a6其实可以满足几乎所有需求。
恰恰相反,J***a随着版本号的更新,是越来越好了。不管是底层的虚拟机,还是上层的新语法新类库,都让J***a这门语言生机勃勃,J***a生态繁荣向好。
就拿刚刚发布的J***a 16来说,千呼万唤的Record终于也正式成型,加入到了J***a标准中,以后我们在编写J***a Bean的时候,不用再一个一个手动定义字段,也不再需要lombok自动生成字段, 只需要使用这一官方特性,就可以轻松地生成完整的类。
这样的新特性和语法糖在新版本的J***a中比比皆是,凡是用过的程序员都说好。我也实在想不通,这么一门优秀的语言是怎么被人说是越做越烂的,真是奇了怪了😅😅
再说回为什么现在大量项目还在使用J***a 8甚至更老的J***a,其实原因很简单,这和现在大部分公司的管理模式相关。现在大部分公司基本上都是以项目为驱动,简单来说就是项目做出来就算成功。只要项目能够保持稳定运行,那么就不要动它,就算有什么安全漏洞也别管。在此基础上, 就算有一些程序员有动力去升级版本,但是升级成功以后老板也不会给你加钱,万一出了问题还要倒扣钱,在这种环境下,大家当然是得过且过,一个项目版本用到死。
另一方面这也和J***a新的更新策略有关。原来J***a更新是很慢的,基本上每一次大版本号更新都是长期支持版,相应的每次大版本号变动就非常慢,给了很多公司升级的空间。不过自从J***a 9开始,Oracle修改了更新策略,差不多每10个月J***a就会更新一次大版本,几次更新中只有一次是长期支持版。一般商用项目自然都是在长期支持版上运行,不会一直跟着大版本号走。目前J***a最新的长期支持版是J***a 11,下一次长期支持版是J***a 17.如果你所在的公司技术很牛逼,那么现在你用的J***a应该就是11了,等到下一次切换版本应该就是明年的J***a 17了。
到此,以上就是小编对于编程语言j***a落后的问题就介绍到这了,希望介绍关于编程语言j***a落后的2点解答对大家有用。