Java开发2018年值得学习的10大技术

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java开发2018年值得学习的10大技术相关的知识,希望对你有一定的参考价值。

Java开发2018年值得学习的10大技术

快,关注这个公众号,一起涨姿势~技术图片

全文字数: 1600
阅读时间: 5分钟
坐稳了没?要开车了哦

作为一个开发人员,我们最大的挑战就是保持自己了解新的技术。技术变化很快,你大概每两年就会看到一个新版本的编程语言和框架。

就拿2017年来说,AR、VR、区块链、人工智能等等已经扑面而来了。除了这些离我们较远的,说几个离我们最近的:JDK 9、 Spring 5、 Spring Security 5、 Spring Boot 2、ServiceMesh等。这一年对于一个Java开发来说可能是最忙碌的一年了,我们还在学习使用Java 8的Stream API的时候,Java 9的模块化已经来了。除此之外,JDK 9 还有很多有趣的功能如Jigsaw、JShell、Stack-Walking API等,所以,仅仅是这些东西足够2018年的你好好学习一番了。

再拿Spring来说说,可能情况更加严重,毫不客气的说,很多人可能还不知道Spring 4有哪些特性,甚至项目中还在用Spring 3.1 ,更别提新出来的Spring 5、 Spring Security 5这些东西了。

想想有多可怕,我们现在用的竟然是五六年前的技术。

前几天在帮GitChat审稿的时候,有一篇文章名字大概叫《搭建企业级项目》之类的文章,但是仔细一看,里面的内容竟然还是让开发者通过导入jar包的方式搭建SSH环境,看到这里,我真的有点担忧,尤其那些初级Java开发者,甚至是还没毕业的你。或者是很多工作了多年的你。新技术,请学起来!!!跟我一起!

下面是我列的我的2018学习清单(和Java相关部分),供你参考。

01
Gradle

Java世界中主要有三大构建工具:Ant、Maven和Gradle。经过几年的发展,Ant几乎销声匿迹,还剩Maven和Gradle两种,maven是我目前工作中用的版本管理工具。maven现在已经是行业标准,Gradle算是后起之秀,很多人对他的了解都是从android studio中得到的,Gradle抛弃了Maven的基于XML的繁琐配置。取而代之的是Gradle采用了领域特定语言Groovy的配置,大大简化了构建代码的行数。

正好也可以借着学习Gradle的机会深入学习一下Groovy。

02
Python

最近我已经在开始学习Python了。最初想学习他的动机是想借助Python做一些爬虫、数据分析相关的事情。作为一种语法简单的高级语言,Python有很多优点。对于一个Java程序员来说,学习Python是很容易的。

在StackOverflow2017开发者调查中。所有最受欢迎的语言中,Python超越php位居第五,在你最希望使用哪种语言排行榜中,Python 夺冠,而去年仅仅第四。所以,如果你准备学习一门新的语言,Python绝对是个很好的选择。

03
Java 8 和 Java 9

就像我说的,我和绝大多数Java开发人员一样,仍然在学习Java 8。2018年仍然会继续学习并大量使用Java 8。

我也会花一些时间学习Java 9的新特性,比如Jigsaw, Reactive Streams, Process API, HTTP2 client, JShell等也在学习清单中。

04
Spring 5

2017年我们见证了见证了Spring和Java生态系统的许多重大升级,Spring 5.0就是其中之一。 

Spring 5 的新反应式编程模型、HTTP/2 支持,以及 Spring 通过 Kotlin 对函数式编程的全面支持这些都值得我们好好了解一下。

05
Spring Security 5.0

Spring Security 5.0 提供了许多新功能,并支持 Spring Framework 5.0,总共有 400 多个增强功能和 bug 修复。在Spring Security 5.0.0之前,密码是明文保存,十分不安全,这一次的新版本则使用更安全的密码存储方式。

Spring Security 5.0.0的主要亮点在于它只需要最小化的JDK 8、反应式安全特性、OAuth 2.0(OIDC)和现代密码存储。

06

Spring Boot 2
Spring Boot 2.0 基于 Spring 5 Framework ,提供了 异步非阻塞 IO 的响应式 Stream 、非堵塞的函数式 Reactive Web 框架 Spring WebFlux等特性。

很多使用过SpringBoot的人都知道,使用SpringBoot搭建Web应用真的是又快又好,相信Spring Boot 2会带来更多惊喜。

07
Apache Spark 和 Kafka

另外一件2018年要深入学习的是大数据相关的知识。特别是Apache Spark 和 Kafka两个框架。

我不确定我是否会有时间看其他大数据技术,这两个至少在当前还是比较火的。

08
ServiceMesh

显然,这是个新东西,很新。或许在读这篇文章的你并没有听说过。那么恭喜你,此时此刻你已经在这个方面超过了大部分程序员。

ServiceMesh,他被业内誉为下一代微服务,现在整个领域都处于初级阶段。早学早受益。

09
Serverless

无服务器运算(英语:Serverless computing),又被称为功能即服务(Function-as-a-Service,缩写为 FaaS),是云计算的一种模型。以平台即服务(PaaS)为基础,无服务器运算提供一个微型的架构,终端客户不需要部署、配置或管理服务器服务,代码运行所需要的服务器服务皆由云平台来提供。

这东西,听上去就很高大上。

10

Others
Docker 、MicroService、Kubernets、Spring Cloud、Redis....
2018年,欢迎你和我一起学习,当然,我还是会把学习过程中的总结和感受写到我的博客(www.hollischuang.com)和公众号(Hollis),欢迎大家一起交流学习。
推荐阅读
高效学习新技术的10种方法——总结自StackOverflow 2017开发者调查
Java开发人员必知必会的20种常用类库和API
2017年排名Top 100的Java类库——在分析了259,885份源码之后得出的结论
Java中方法的重写与成员变量的隐藏

技术图片
技术图片
~求关注

喜欢的话欢迎分享朋友圈
长按扫码即可关注

以上是关于Java开发2018年值得学习的10大技术的主要内容,如果未能解决你的问题,请参考以下文章

第1350期2018年值得关注的10大JavaScript动画库

2018年最新Hadoop大数据开发学习路线图

老男孩教育2018年最新版大数据开发课程表

2020年Java程序员应该学习的10大技术

最值得Java开发者收藏的网站

1月中旬值得一读的10本技术新书(机器学习Java大数据等)!