前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2018年我应该学习Java吗

2018年我应该学习Java吗

作者头像
程序你好
发布2018-07-23 09:26:49
1.1K0
发布2018-07-23 09:26:49
举报
文章被收录于专栏:程序你好程序你好

我应该学习Java吗?这是一个不断出现的问题。如果你刚开始是一个开发人员,如果你已经是一个前端开发人员,或者即使你是一个。net背景的人,很多人都想知道学习Java是否是一个正确的职业/个人开发步骤。让我们看看在2018年学习Java有多有用。

2007年左右,当我第一次使用Java时,它的名声好坏参半。一方面,它是一种相当新颖和现代的语言,但另一方面,它因其糟糕的性能(在我看来不是完全值得的)和冗长(与当时的,非常高的Python相比)而臭名昭著。

10多年后的今天,这个问题变得有趣起来,原因有很多。

让我列出我经常听到的关键问题:

Java过时了,过时了。

有更好的JVM语言,如Scala、Clojure和Kotlin。

我是一个前端开发人员,NodeJS不是更实用吗?

使用Java是不愉快的。

Java太慢/消耗太多内存。

为什么我应该学Java而不是X、 Y、 Z等其它语言 ?

我确信可能会有更多的问题和担忧,所以请在评论中告诉我。我可以编辑文章或直接回答你。

让我们一起来看看这些问题吧!

问题1:Java过时了,过时了。

Java在1995年发布(根据其维基百科页面),因此它可能已经超过了它的一些用户。那是老了吗?这是主观的,比许多语言都要古老,这是肯定的!这是一个问题吗?这就是年龄歧视!当然,年龄本身并不是一个争论点,所以让我们来看看这个陈述的另一部分。

Java真的过时了吗?TIOBE索引跟踪编程语言的流行程度。

以下是截至2018年的前20名:

请输入描述

根据TIOBE的说法,Java不仅是最受欢迎的语言,而且它实际上也越来越受欢迎!当然,也有其他语言的流行速度更快,排名也更高,但是说Java已经过时是不正确的。

关注点2:有更好的JVM语言,如Scala、Clojure和Kotlin

这是一个有趣的观点,尤其是在Kotlin迅速走红的情况下。如果您是JVM新手,您是否应该使用Java,或者应该直接使用(比方说)Kotlin?

我认为,如果您想成为JVM上的职业开发人员,了解Java是必不可少的。当然,你可以孤立地学习任何语言,但你可能会错过一些背景知识。这些语言中有许多依赖于Java库,您很可能至少不会避免阅读Java。

实际上,我认为了解Java的一个主要好处是——它为您提供了基础。JVM是一个拥有诸如Groovy、Scala、Clojure、Kotlin等语言的丰富平台——几乎所有这些语言都有一些灵感或与Java (JVM之外)的关系。

我鼓励每个人在JVM上探索其他语言——这常常是Java创新的来源。我不认为这是避免学习Java的理由!学习Java会让你在任何一种语言中都有一个开头,这真的是一项值得投资!

关注点3:我是一个前端开发人员,NodeJS不是更实用吗?

这可以推广到任何前端开发人员,他们想知道学习像Java这样的服务器端语言是否有用。

NodeJS非常实用和流行。您可以快速有效地构建服务。然而,Java在服务器端建立得更牢固,而且也很容易使用。

这个问题只有在你审视自己的个人情况时才能得到真正的回答。您是宁愿永远保持领先的开发人员,还是希望在服务器端进行更深入的研究?我认为,至少学习如何阅读Java可能是有益的。

已经编写了许多Java服务器端代码。即使你不打算自己写得更多,你也会因为无法理解语言而限制自己。

这种关注有一些优点,就好像您已经在使用JavaScript(或TypeScript)在客户机和服务器上使用node - js,您需要一个很好的理由来开始使用Java。这对未来是否值得投资?这是你的回答。

关注点4:使用Java不愉快

Java Enterprise Edition因在bean配置中使用XML而声名狼藉……这玷污了Java作为一种讨厌的语言来编写代码的名声。这已不再是事实。

我最近写过关于Java微框架的兴起。现在,编写Java服务是一件非常简单的事情。

让我们看看用Spark Java编写的“Hello World”:

代码语言:java
复制
import static spark.Spark.*;
public class HelloWorld {
public static void main(String[] args) {
get("/hello", (req, res) -> "Hello World");
}
}

是真的不愉快吗? 恰恰相反!Java是乐趣!有了Spring Boot之后,它甚至在企业中变得有趣起来!

Java喜欢的另一件事是大量高质量的工具、支持和在线材料,它们使解决大多数问题变得非常简单。

关注5:Java太慢/占用太多内存

Java运行在JVM上,因此它过去常常被启动时间较慢所困扰。当您需要启动JVM时,您将不会获得与bash实用程序类似的C编写程序。您可能很难在速度上赢得超小和超轻,本地应用程序。这就是不使用Java的原因吗?对于那些特定的案例,可能是这样。

那么您可以使用Java做什么呢?这些天真的快吗?

Java在大数据空间中大量使用,例如用Java编写的Apache Hadoop等工具。

世界上最大的银行和金融企业都在运行Java,以满足他们的需求。

在某些情况下,当Java在性能上可以与c++相比时,它实际上被用于高频交易应用程序。

Java在Android设备上被大量使用。

Java在嵌入式空间中很大。

更多。

如果你想写视频游戏——Java也不是你最好的选择。我认为实际上这更多的是与JVM可用性有关,而不是人们对“性能”的担忧。

为什么我应该学Java而不是X 、Y、 Z等其它语言 ?

Java是一门神奇的语言。作为目前世界上最流行的语言,它是软件开发的核心技能之一。

你不需要学习Java而是学习另一种语言。对于大多数人来说,成为程序员(业余爱好或专业人士)是一件持续时间超过几个月的事情。不要把自己局限于学习Java。不学习Java将把您从庞大的、动态的社区中隔离出来。

Java的发展速度也比以往任何时候都要快,发布周期改为每年两个主要的版本。这是令人兴奋的。它已经给我们带来了一些伟大的东西,比如从Java 10开始使用var来进行类型推断。未来还有更多。

我应该学习Java吗?

是的,你应该学习Java。这是当今世界上最流行的语言。它相当简单、现代、快速,而且正在进化。有大量的图书馆可以帮助您编写令人惊叹的代码,并且可以方便地在线获取帮助和资料。

如果你还在犹豫,我希望你不会再犹豫了——去学Java吧!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-06-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序你好 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题1:Java过时了,过时了。
  • 关注点2:有更好的JVM语言,如Scala、Clojure和Kotlin
  • 关注点3:我是一个前端开发人员,NodeJS不是更实用吗?
  • 关注点4:使用Java不愉快
  • 关注5:Java太慢/占用太多内存
  • 为什么我应该学Java而不是X 、Y、 Z等其它语言 ?
  • 我应该学习Java吗?
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档