j***a糟糕语言,j***a 垃圾语言

kodinid 14 0

大家好,今天小编关注到一个比较意思的话题,就是关于java糟糕语言问题,于是小编就整理了1个相关介绍Java糟糕语言的解答,让我们一起看看吧。

  1. oracle如何把java“玩死”?java程序员该何去何从?

oracle如何把j***a“玩死”?j***a程序员该何去何从?

个人认为J***a生态过于松散是Oracle缺乏战略掌控的错。

  • J***a生态中大量的开源框架无序竞争,让开发人员无所是从,经常为了寻找一个技术解决方案不得不在一大堆类似的框架中比选;Oracle并没有主导生态中强势的技术,而是听之仍之,自生自灭
    ——一门语言被生态所累是可悲的!

    java糟糕语言,java 垃圾语言-第1张图片-安济编程网
    图片来源网络,侵删)
  • J***a语言自身的面条式风格越来越严重,匪夷所思的各种代码范式让程序员疲于记忆大量的跟具体框架相关的书写规则
    例如:Object.GetValue().ConfigThis().ConfigThat().ConfigOther() ...这样的拉面语法被各种框架过度使用
    ——一门语言被框架***也是可悲的!(类似的其他语言的例子诸如Angular.js对于Javascript)

  • J***a的开发环境并没有做到极致,主要依赖Eclipse作为IDE,开发效率受到开发环境的制约太严重,例如Eclipse就有M***en,Gradle,Ant等编译环境的配置管理,导致不同的开源工程使用
    不同的配置体系,每个程序员需要花大量的时间了解这些配置的差异和修改方法,今天要学点M***en的XML配置,明天又要搞定Gradle的Groove语法……
    ——一门语言被开发环境***更是可悲的。

J***a程序员最佳去处——转型为C#程序员,原因如下:

java糟糕语言,java 垃圾语言-第2张图片-安济编程网
(图片来源网络,侵删)
  • J***a和C#语法非常类似,转到C#非常顺当;例如:包引用改import 为using ,类继承改extends 为“:”,多写一点代码就搞定了,大部分知识可以共享,而且未来需要的时候要返回j***a也是容易的;
  • C#有Linq——一种J***a没有的语法特性,这是C#官方定义的一种极为便捷的非传统语法特性,它主导了对集合的全面操作,把程序开发中最乏味的部分解决了。虽然Linq也会导致类似J***a那种面条式语句,但是这是一套放之四海而皆准的面条,在所有程序中都可以用。例如:Collection.ToEnumerable().OfType<ObjectA>().Select(i=> i.a=conditionA).ToList(),这些方法来自官方框架,在所有程序中都是通用的,长一点问题不大,反而作为一种固定的通用范式。J***a有一点理想主义的倾向,导致有时候语法就是一种形式上的桎梏;而C#则要实用主义许多,Linq就是这种突破的表现,为了开发习惯上的实用,不一定要延续一致性的语法原则。除此之外的例子还有扩展方法(向现有类型追加任何方法)等等。
  • 使用C#则可以利用所有.net的生态,而且.net生态几乎由微软主导,尤其在微软收购了Github之后,在开源界C#的生态也将受到微软的管理(有时候选择太多不是好事)。

  • C#拥有目前世界上最好的代码开发环境Visual Studio。VS的各方面功能都是极佳的,对于程序员开发调试都是一大福音,用了VS你会恨死Eclipse。

  • 随着.net core的流行,C#同样具备了跨平台能力,而且微软还在积极开发.net native编译器,今后用C#开发本地代码程序或许会非常便捷。

    java糟糕语言,java 垃圾语言-第3张图片-安济编程网
    (图片来源网络,侵删)

总结一下,C#既没有被语法、也没有被第三方框架或者开发环境所***,解决方案出来的时候你非常清晰你的路径,而不会被犹豫的选择、晦涩的语法和经常崩溃而且还找不到统一支持的开发环境所困扰。

如同天要下雨、娘要嫁人一般,对于我们j***a程序员而言,这事儿谁都无法把控,又何必现在自寻烦恼,恐慌担心并不能解决问题。我来说说自己的看法吧,以下权当个人已见,不代表任何方面观点,不喜勿喷,想喷请前往评论区。

一、 2018年度Oracle 和 J***a ***回顾

1. Oracle 以 J***a 侵权案从 Google 处获取高达 88 亿美元的赔偿款,这个行为让不少用户认为 Oracle 已然将 J***a 用作挣钱的工具

2. Oracle宣布J***a 8 将停止维护,取消 J***aOne 会议(专属 J***a 的开发者大会)。

上图为Oracle ***提示的 JDK8 终止更新公告。原文翻译:2019年1月之后,Oracle将不会在其网站上发布J***a SE 8商业使用的进一步更新下载。需要持续获取安全的bug修复和安全补丁以及J***a SE 8或以前的稳定性支持,可以通过Oracle J***a SE高级版、Oracle J***a SE高级桌面或Oracle J***a SE套件。有关更多信息以及如何获得Oracle JDK 8长期支持的详细信息,请参阅Oracle支持路线图。

简言之,即:J***a 8 在 2019 年 1 月之后不再免费企业提供更新,想要更新就得付钱或者升级到 J***a 9 之上,这让不少程序员认为 Oracle 已然将 J***a 用作挣钱的工具。现在要么赶紧熟悉 J***a 9,不然就付费吧,很多连j***a8都还没用熟的程序员表示一脸懵逼。

二、Oracle与j***a的前世今生

j***a是编程语言,oracle是数据库,同时,oracle也是一家生产oracle数据库的公司,oracle于2009年以74亿美元收购了生产j***a语言的公司sun,现在oracle是j***a的老板。

试想,一个老板会轻易放弃重金得到的产品吗?

大概在两年前,当Oralce输掉了和Google在Android上的J***a官司后,Oracle的J***a开发努力便开始逐步减慢,而在J***a EE方面则是处于完全停止的状态。J***a社区的大客户们不仅吐槽Oracle正在放弃已经有20年的J***a平台兼容性,更有人形容这是一场危险的游戏

的确J***a8还没用熟就停止更新了, Oracle又把一年一度J***aOne取消了,以及J***a付费时代的恐慌……这些种种都让人们不禁发出“Oracle把J***a玩死”的调侃。不过好在Oracle前不久官方声明对J***a SE 8的更新支持已经延展到了2019年1月,这对于广泛部署J***a的企业来说,J***a8免费支持时间的扩展的确是一个好消息。

现在大家最紧张的就是如果未来J***a失宠于Oracle,那么J***a程序员将何去何从?真的如我们想象中的那么糟糕吗?

选择J***a平台意味着获得健康广阔的生态系统,以及丰富的知识、劳动力与相关产品。作为[_a***_],由此带来的技术债务在于,该平台也许无法适应未来的技术演进,因为其所有者不打算继续开发它。现在,你或许可以开发出健康的产品,尽管未来会的开发成本会越来越高,甚至牺牲未来的业务敏捷度。 其他的平台选择都有各自的技术债务。但简而言之,各有各的不同。比如:

  • 选择 Node.js 平台意味着缺少丰富的稳定生态系统。但该平台非常活跃,欣欣向荣,可能会持续发展很长时间,而且 Node.js 人才也越来越多。

  • 选择 Ruby(很可能与 Rails 一起)平台意味着能以合算的成本快速建立起工作系统的基础架构,但坏处是扩展性不佳。

  • 你也可以选择 Microsoft/.NET 生态系统,该系统拥有一些与 J***a 平台相似的优点,但缺点是你的公司命运会与另一个企业软件巨头的选择绑定。

当然还会有许多其他选择,其实每个选择归根结底都是利弊权衡的问题。 简而言之,是否选用J***a平台作为新项目的基础平台很大程度上是个人决策,Oracle可能厌倦了 J***a,但这是否应该影响这个决策呢?当然应该。但是,这绝对不是唯一的考虑因素。

个人认为,将全部职业生涯都赌在J***a这一种平台的程序员,也不用过度焦虑和担心,毕竟围绕J***a生态系统的技能与知识需求不会在短时间内消失。

到此,以上就是小编对于j***a糟糕语言的问题就介绍到这了,希望介绍关于j***a糟糕语言的1点解答对大家有用。

标签: j***a oracle C#