当前位置: 首页 > 科技观察

2021年学习Java的三个理由

时间:2023-03-20 19:09:53 科技观察

Java功能强大、用途广泛、可扩展且有趣。这就是Java被我们广泛使用的原因以及我们如何正确使用它的原因。Java于1995年发布,到我写这篇文章时已经26岁了。起初它是专有的,但在2007年,Java在GPL许可下作为开源软件发布。如果您想了解是什么让Java变得重要,您就必须了解它声称要解决的问题类型,这样您才能理解它为什么以及如何使开发人员和用户受益。了解Java解决什么问题的最好方法是做软件开发,当然,如果你不做开发,仅仅使用软件是一个好的开始。作为一个开发者,当你把在你本地电脑上运行良好的软件部署到其他电脑上运行时,可能会出现一些奇怪的问题,软件可能无法正常运行。软件应该可以工作,但每个程序员都明白有些问题总是会被忽视。当您尝试在另一个操作系统上运行该软件时,事情会变得更加复杂。这就是为什么在每个软件获取页面上都有适用于不同操作系统的下载按钮:适用于Windows、macOS、Linux、移动设备,甚至许多其他操作系统环境的下载选项。作为用户,一个典型的场景是你想下载一些很棒的软件,但它不适用于你的平台。遗憾的是,在今天非常先进的计算机上仍然会发生这种情况,这些计算机可以在计算机内部运行虚拟机,可以通过仿真让老式视频游戏保持活力,甚至可以装在你的口袋里,但软件交付实际上是相当困难的。有没有更好的办法?也许会有。1.一次编码,在任何环境下运行令人惊讶甚至失望的是代码是特定于操作系统和环境的。代码需要从人类友好的高级编程语言编译成机器语言,即一系列旨在使CPU响应的二进制指令。在先进的计算世界中,很难理解为什么您不能只编写代码并将其发送到您想要运行它的任何平台,而不用担心它们在哪个平台上。Java可以解决这种不协调。它的代码是跨平台的,可以在它运行的任何系统上执行相同的工作。Java实现这一壮举的方式起初是违反直觉的。在某种程度上,Java只与一台计算机兼容。奇怪的是,这台电脑实际上并不存在。Java代码的目标计算机是Java虚拟机(JVM)。它是由Java的创建者编写的程序,可以在您能想到的任何计算机设备上使用。只要您安装了它,您运行的任何Java代码都将由您计算机内的这台“虚拟”计算机处理。Java代码由JVM执行,它向您的计算机发送适当的特定于平台的指令,因此在每个操作系统和体系结构上一切都一样。当然,Java使用的方法并不是这里的真正卖点。大多数用户和很多开发者并不关心软件的兼容性是如何实现的,只关心是否兼容。许多语言都承诺具有跨平台功能,而且通常情况下,这种承诺最终会成为现实,但实现这个过程并不总是那么容易。编程语言必须针对其目标平台进行编译,脚本语言需要特定于平台的解释器,两者都难以确保对底层系统资源的一致访问。跨平台支持越来越好,库可以帮助翻译路径、环境变量和设置,一些框架(尤其是Qt)在弥合外设访问方面的差距方面做了很多工作。但是,Java始终可靠地提供其兼容性。2.明智地编写代码Java的语法即使是最好的也是乏味的。如果你把所有流行的编程语言都放在一个石头杯子里,你就会得到Java。通过查看用Java编写的源代码,您或多或少会看到所有特定的编程表达式。括号表示函数和流程控制的范围,变量在使用前显式声明和实例化,表达式具有清晰一致的结构。我发现Java学习过程经常鼓励自学成才的程序员用结构化程度较低的语言编写更简洁的代码。在网上学习的源码技术中,有很多编程的“基础”经验是你学不会的,比如Javapublicfields风格的全局变量声明,异常的正确预测和处理,类和函数的使用,以及许多其他技术。从Java中借鉴的一个小改动可以产生很大的不同。3.对流行编程语言的脚手架和支持有一个很好的支持系统,这也是它成为流行语言的原因。它们都有大量文档、集成开发环境或IDE扩展、示例代码、免费和付费培训以及开发人员社区。另一方面,当您在尝试做某事时遇到困难时,似乎没有任何编程语言提供足够的支持。我不能说Java摆脱了这两个常见但相互矛盾的事实。尽管如此,我发现当我需要一个Java库时,我一定会为给定的任务找到多个选项。通常我不想使用库的原因是因为我不喜欢它的开发人员实现我需要的东西的方式,它的许可证与我喜欢的不同,或者还有其他一些琐碎的争议点。当一种语言有很多支持时,我有很多选择。我可以从众多合适的解决方案中选择最能满足我需求的解决方案,无论它多么微不足道。更好的是,围绕Java有一个健康的基础架构。ApacheAnt、Gradle和Maven等工具可以帮助管理构建和交付过程。SonatypeNexus等服务有助于监控安全性。Spring和Grails使Web开发更容易,而Quarkus和EclipseChe促进了云上的开发。当谈到Java语言本身时,您甚至可以选择使用哪个版本。OpenJDK提供了经典的、官方的Java,而Groovy是一种类似于脚本语言的简化方法(你可以将它比作Python),而Quarkus则提供了容器优先开发的框架。还有更多,但足以说明Java是一个完整的生态系统,无论您在其中寻找什么。此外,Java的易学性已被证明对我和各行各业的许多其他开发人员来说是一个明智的解决方案。以下是我喜欢使用Java的一些原因。您可能听说过或推断出Java是一种“专业”语言,仅适用于笨拙的政府网站,专供“真正的”开发人员使用。不要被Java25年的成名所愚弄!它的可怕之处只有它的出名之处的一半,也就是说,不比任何其他语言更可怕。无可回避的事实是,编程很难,它需要你逻辑思考,学习一种比你的母语表达更少的新语言,并想出如何解决难题,以便他们可以使用你的程序完全自动化执行,没有语言可以避免这些问题。然而,编程语言的学习曲线差异令人惊讶。有些一开始很简单,但当您开始探索细节时会变得复杂。换句话说,打印“helloworld”可能只需要一行代码,但是当你了解类和函数时,你就开始重新学习这门语言(或者至少是它的数据模型)。Java从一开始就是Java,一旦你学会了它,你就可以使用它的许多技巧和便利。简而言之:去学习Java!它功能强大、多样化、可扩展且有趣。为了帮助您解决问题,请下载我们的JavaCheatSheet,其中包含开发前十个项目所需的所有基本语法。之后,您就不再需要它了,因为Java是完全一致且可预测的。快来享受吧!