JavaRush /Java 博客 /Random-ZH /喝咖啡休息#68。关于 Java 及其生态系统的诚实看法。2021 年值得考虑的三种新 Java 工具

喝咖啡休息#68。关于 Java 及其生态系统的诚实看法。2021 年值得考虑的三种新 Java 工具

已在 Random-ZH 群组中发布

关于 Java 及其生态系统的诚实看法

来源:Dev.to 好吧,我承认我的主要语言是 C#。但这是我对 Java 及其周边生态系统的公正看法。我经常在 Java 中使用 bash 命令,看到它的所有缺点。例如,Java 没有属性,它本身没有事件,没有结构,没有运算符重载,并且直到 Java 10 才没有推理,因此没有“var”。C# 里有一切!另外,由于缺少 LINQ、var 和 enum,我在 Java 中使用了 bash。然而我用 Java 写了很多东西,特别是当我为 Android 创建应用程序时,但也为其他东西创建应用程序。我的第一个项目也是用 Java 编写的!于是,周五晚上,由于时间紧迫,我不得不用Java连续写了几个小时。猜猜我发现了什么?溪流!喝咖啡休息#68。 关于 Java 及其生态系统的诚实看法。 2021 年值得考虑的三种新 Java 工具 - 1显然 Java 8 引入了线程!我对此一无所知!对于那些不知道的人来说,Streams 是 LINQ 的 Java 实现。我还发现Java 10有类型推断,所以Java现在有了var函数!我不敢相信我的知识有多么过时,但说实话,这是有原因的。这两件事对我的思想产生了很大的影响!您是否知道 Java 总是检查异常,但 C# 却不会?我承认我真的很怀念C#中的这个功能!是的,没有结构、属性等,但是该死的,它很优雅!我认为 Java 的设计迫使开发人员编写更健壮的应用程序。而在 .NET 世界中,这很大程度上由编码人员自行决定。一些开发人员喜欢这些限制,而另一些开发人员则喜欢自由。虽然两种语言都相当安全,但 Java 显然略占优势。那么,为什么大公司更青睐Java呢?我想我现在知道答案了!最让我沮丧的是......在你在互联网上看到的大多数代码示例中,这些高级功能并不总是被使用......我认为如果一个新的Java开发人员看到'var'写在整个代码库中,他会发疯的!那么流呢?什么是流?Java 开发人员喜欢 For 循环!事实上,即使是 foreach 循环在 Java 世界中也相当罕见(也许有一个原因:For 循环更加优化)。但这些功能都不错!我会进一步说这些功能太棒了!当我编写 Android 应用程序并注意到 Android API 中几乎没有地方使用枚举时,这真的让我很痛苦!这是公平的,因为 Android 是很多年前编写的。最让我烦恼的是,每次需要在Android中使用Activity for Results函数时,我都必须使用常量,如下所示:int PICK_IMAGE_FROM_GALLERY = 3000 兄弟,这太疯狂了!然而世界各地的人们已经开始接受它。甚至我。Java 还缺乏原生事件实现!如果它有像​​ C# 这样的事件和委托就好了...(嘿,Java 语言的创建者,如果你们正在阅读本文,您需要添加事件!如果您已经拥有它们或正在开发它们,请告诉我)。现在我将告诉您 Java 生态系统中最大的缺陷是什么。文档!!!Oracle 网站上杂乱且无用的文档看起来愚蠢且过时,处于 2007 年的水平。它甚至并不总是有代码示例。如果你开始寻找一个相对不寻常的功能或 API 方法,你会发现一个无聊的定义、声明、参数、它属于哪个包 - 就是这样。我认为这是荒谬的。你不觉得这很荒唐吗?没有代码片段吗?因此,我们开发人员必须严重依赖像 StackOverflow 这样的论坛,或者像 TutorialsPoint 这样的其他编程网站...有时它们确实很有帮助,提供了展示此功能的良好代码示例,但有时它们并没有那么有用。我建议将 Microsoft 的 C# 文档与 Oracle 的 Java 文档进行比较……天上地下!不相信我?去查一下:甲骨文微软。Microsoft 网站上的文档看起来很漂亮!他们甚至还有黑暗模式!我们开发者对黑暗模式非常着迷。Oracle 文档怎么样?正如我所说,它仍然是 2007 年。也许那时候还没有深色模式?所以,我想说Java太神奇了!但这种语言因过时的文档而受到很大影响。这些大多是旧文档和旧手册,没有突出显示急需的新功能,例如线程、变量和枚举。现在人们说 Java 开始过时了,将会被 Kotlin 取代,但我不同意。因为即使这是真的,他在很长一段时间内也不会取代她。这将需要很多很多年。你还记得Scala也试图取代它吗?那么结果是什么呢?Java 仍然统治着整个 JVM 生态系统。尽管我承认 Scala 与 Java 有很大不同,主要是在功能上。现在,终于...还有一件事比 Java 世界中的任何事情都更让我感动。这就是获取JDK。为什么下载JDK这么难?我的意思是,如果我需要 JDK,简单的 Google 搜索就会将我指向 Oracle 网站,我会去那里找到我需要的 JDK 版本。到目前为止,一切都相对容易,但为了下载它,我需要注册。为什么我要在 Oracle 上创建一个帐户,然后每周处理他们的电子邮件,而不是仅仅下载 JDK?请记住,Java 从第一天起就是开源的!与 C# 不同的是,C# 直到 2015 年才开源。所以,我已经很沮丧并转到谷歌搜索结果中的第二个网站。它引导我访问 OpenJDK 站点。我在那里找到 JDK 并单击“下载”。但是(令人惊讶!)他们提供了来自其他站点的 JDK 实现的链接!在这些网站中,有一个该死的 Oracle,但也有一个到 Red Hat 网站的链接。是的,红帽很棒,它是世界上开源公司的先驱之一。好的,我要去他们的网站!我会从那里下载它!我点击此链接,找到我正在寻找的 JDK 版本,你猜怎么着?我也必须在那里注册...(戏剧性的停顿)这真是悲伤...操它!这些人怎么了?最后,我屈服并安装了 Chocolatey(它类似于 apt-get,但适用于 Windows。我认为它是第一个广泛分发和使用的 Windows 包管理器)。所以在这之后我需要在 PowerShell 中编写一个简单的命令,例如:choco install jdk-1.8。我做到了!(如果您是一名 C# 开发人员,您就会知道只需点击 2-3 次即可轻松获得 .Net SDK,无需注册或类似操作)。总结一下我的长篇大论:Java 是一种很棒的编程语言。它美观、可靠,并且拥有(在我看来)世界上最好的 IDE - 来自 JetBrains 的著名 IntelliJ IDEA。此外,Java 拥有非常有帮助的社区和庞大且多样化的生态系统。我是这么说的 - 一个 C# 开发人员...但我们需要更新文档。代码示例。API。我们需要让获取 JDK 变得更加容易。总的来说,Java 正在朝着正确的方向发展,虽然最近它的受欢迎程度可能有所下降,但这不会让 Java 消失。多年来它一直位居世界最佳语言排行榜榜首!我一直使用Java,并且将来也会继续这样做。

2021 年值得考虑的三种新 Java 工具

来源:OpenSource 尽管 Python、Go 和 Node.js 很受欢迎,近年来也被积极用于实施人工智能、机器学习和 Kubernetes 相关项目,但 Java 技术在企业应用程序开发中仍然发挥着关键作用。根据 Developer Economics 的数据,2020 年第三季度全球有 800 万企业 Java 开发人员。喝咖啡休息#68。 关于 Java 及其生态系统的诚实看法。 2021 年值得考虑的三种新 Java 工具 - 2Java 编程语言已存在超过 25 年,并且不断更新。新的工具和框架不断涌现,可以增强您的应用程序和职业生涯。绝大多数 Java 平台都是为了实现具有动态行为的长时间运行的进程而创建的,旨在在服务器或虚拟机上运行。随着 2014 年 Kubernetes 容器的出现,这种情况发生了变化。现在,在 Kubernetes 上运行 Java 时面临的最大挑战是:通过减少内存占用、加快启动和响应时间以及减小文件大小来优化应用程序性能。

三个新的 Java 框架和工具

Java 开发人员一直在寻找将流行工具和开源项目集成到他们的 Java 应用程序中的最简单方法。新的高性能工具显着提高了开发效率,并鼓励更多公司和个人开发人员使用 Java 堆栈。今天我们将讨论三个新的 Java 框架和工具:

夸库斯

Quarkus 专为开发云微服务和无服务器应用程序而设计。它在 Kubernetes 等容器编排平台中具有快速启动时间、较小的内存驻留集 (RSS) 大小以及较高的内存密度。根据 JRebel 的第九次年度报告,Java 开发人员中 Quarkus 的使用率增长了 6%(不到前一年的 1%)。Micronaut 和 Vert.x 分别增长至 4% 和 2%(去年约为 1%)。

Eclipse JKube

借助 Eclipse JKube,Java 开发人员可以使用 Docker、Jib 或 Source-To-Image 构建策略创建基于云 Java 应用程序的容器映像。该工具还在编译时生成 Kubernetes 和 OpenShift 清单,并改善调试、监控和日志记录工具的体验。

微轮廓

MicroProfile 解决了与优化 Java 微服务企业架构相关的问题,而无需引入新框架或重构整个应用程序。此外,MicroProfile 规范(例如 Health、Open Tracing、Open API、Fault Tolerance、Metrics、Config)随着 Jakarta EE 的实现而不断发展。

结论

很难说哪些 Java 框架或工具最适合企业 Java 开发人员。只要有机会改进 Java 堆栈并加速企业业务增长,我们就可以期待新的框架、工具和平台的出现。检查它们,看看它们是否可以在 2021 年改进您的 Java 应用程序。
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION