首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2018年成为一个更好的Java开发人员的10个技巧

2018年成为一个更好的Java开发人员的10个技巧

作者头像
程序你好
发布2018-07-20 10:41:38
5540
发布2018-07-20 10:41:38
举报
文章被收录于专栏:程序你好程序你好

我经常收到我的读者的电子邮件,告诉他们如何成为一个更好的Java开发人员,他们应该学习什么东西,以及他们可以在哪个领域工作,成为一个rockstar Java开发人员。在过去的几年中,我逐一回答了这些问题之后,我想要记下一些我认为会使您成为更好的Java程序员和应用程序开发人员的观点。

如果您还没有读过它们,您可以在本文之后阅读它,它们将帮助您改进编程和编码技能,这对于成为一个更好的Java开发人员非常重要。

这些提示对于Java核心开发人员和Java web开发人员都同样有用。

1.Learn Java 8

对于Java开发人员来说,这是最重要的事情。这是一个很好的4年,甚至是Java 9在6个月后发布,人们现在谈论的是Java 10的特性。无论如何,我知道许多程序员使用Java 8特性(如lambdas和流API)没有编写过一行代码。

不幸的是,他们中的大多数都是经验丰富的Java开发人员,他们有7到10年的经验。我知道,在你的职业生涯的某个阶段,学习变得缓慢,但如果你现在不行动,你就会被抛在后面。

几乎所有的Java开发工作现在都需要Java 8技能,如果您没有这些技能,那么就很难做好。

2.学习Spring框架(Spring Boot)

现在,对于Java开发人员来说,了解Spring几乎是必要的,因为大多数公司都倾向于使用Spring MVC、Spring Boot和Spring Cloud这样的Spring框架来开发web应用程序、REST api和微服务。

它还促进了像依赖注入这样的最佳实践,并使您的应用程序更加可测试,这是现代软件的一个关键需求。

3.学习单元测试

如果有一个普通的东西将优秀的Java开发人员与普通的Java开发人员分开,那就是单元测试技能。

一个好的和专业的Java开发人员几乎总是为他们的代码编写单元测试,如果他们真的是一个rockstar开发人员,您可以从他们的代码和测试中看到这一点。

测试也有很长的路要走,有几个工具用于单元测试、集成测试和Java开发人员可用的自动化测试。

您可以花费大量的时间在Java中磨练您的测试技能,但是对于那些对Java世界和单元测试来说是新手的人来说,JUnit是最好的开始。最近的版本(JUnit 5)是强大且灵活的,每个Java开发人员都应该知道这一点。

学习单元测试以提高Java编程技能。

4.学习api和库

如果您与优秀的Java开发人员一起工作,您可能已经注意到他们对Java生态系统的全面了解,而api是其中的主要部分。

Java是世界上最流行、最成熟的编程语言,而且有大量的库和api可以用来做任何事情。

当然,您不需要知道所有这些内容,但是您应该熟悉一些关键的api,比如像Jackson和Gson这样的JSON处理api,像JAXB和Xerces这样的XML处理api,以及像Mockito和JUnit这样的单元测试库。

如果你不了解他们,你可以学习或者至少在2018年了解他们。首先,您可以查看我的每个Java开发人员应该知道的20个Java库的列表,这些库涵盖了从解析、字节码操作、并发、集合等关键领域的库。

5.JVM的内部学习

如果您想要成为一名rockstar Java开发人员,那么您必须花时间学习JVM内部,例如JVM的不同部分、它们如何工作、JIT、JVM选项、垃圾收集、收集器等等。

如果您熟悉JVM,那么您可以编写健壮的、高性能的Java应用程序,这就是rockstar Java开发人员所做的工作。

作为本文的一部分,您还应该了解如何配置Java应用程序以及如何找到性能瓶颈。

对于结构化学习,我推荐Scott Oaks对Java性能的权威指南,这是我在过去几年里读过的一本很棒的书。

对于那些更喜欢在线课程而不是书籍的人来说,在Pluralsight上了解Java虚拟机也是一个很好的集合,可以掌握JVM的内部结构。

6.学习设计模式

如果您从头开始编写Java应用程序,那么大多数情况下,您都在编写面向对象的代码,并对常见问题的解决方案进行尝试和测试。

通过了解并将它们集成到您的代码中,您的应用程序将更加灵活,并且在将来更容易改变。

它还提高了总体代码质量和文档,因为其他Java开发人员也熟悉设计模式。因此,他们会很快理解你的解决方案。

但是不要只专注于代码部分,理解精神和创造性。使用像lambdas和Streams这样的Java 8特性来重写模式。

如果您正在寻找一些资源来学习设计模式,那么这个设计模式课程列表是一个很好的开始。而且,对于那些喜欢书籍的人来说,我推荐的关于设计模式的书可以在这里找到。

7.学习DevOps的工具

对于现代Java开发人员来说,DevOps的知识是必不可少的。您应该至少熟悉持续集成和持续部署,以及Jenkins如何帮助实现这一点。

对于高级Java开发人员来说,它变得更加重要,他们通常负责编写最佳实践和创建环境、构建脚本和指导方针。

我还建议您花些时间,了解更多关于DevOps的内容,包括Docker、Chef、Kubernetes等工具,以及Maven和Jenkins。

如果您需要一些资源,那么在Udemy上开发DevOps和开发人员可能是最好的开始。你不仅会了解CI和CD,还会深入了解Maven和Jenkins。

8. Learn Kotlin

几年前,我读了一本书,书名为“扎实的Java开发人员”,它突出了成为一个多语言程序员的优势。

它激发了我学习Scala的灵感,后来我也尝试了Groovy,因为它在创建构建脚本和单元测试方面的使用增加了。

这种经历对我帮助很大,这就是为什么我鼓励Java开发人员学习新的JVM语言。我曾经在3个JVM语言上写过关于Java开发人员应该在2018年学习的内容,但是如果您很着急,请学习Kotlin。

这是一个来自JetBrains的很棒的语言,是IntelliJ IDEA的公司,也是谷歌在2017年宣布的Android开发的官方语言。

它不仅能提高你的工作效率,还能帮助你进入Android开发。如果你想在2018年学习Kotlin,并寻找一些好的资源,那么这里有一个Kotlin课程的列表。

9.学习微服务Microservices

架构正在不断变化,许多公司正从单一的应用程序转向微服务。

现在是Java开发人员学习微服务体系结构和如何在Java中创建微服务以利用最近的wave的时候了。

幸运的是,Spring框架提供了Spring Cloud和Spring Boot,这大大简化了Java的微服务开发。

如果您正在寻找课程,那么使用Spring Boot和Spring Cloud的微服务是一个很好的开始。

10.学习更好的使用IDE

更好的Java开发人员最重要的特性之一是他们使用工具非常好。他们不仅比一般的开发人员知道更多的工具,而且他们也很了解他们的工具。

由于像Eclipse、NetBeans和IntelliJ IDEA这样的ide是Java程序员最重要的工具,所以花些时间去了解它们是很有意义的。

你可以学习一些让你的任务更容易的插件或者一些快捷键,帮助你更好的导航。

即使是一些小技巧也有很长的路要走,因为你可以比你想象的多得多。如果您是认真的将您的IDE技能提升到下一个级别并使用Eclipse,那么我建议您检查Eclipse调试技术和Udemy上的技巧,这是提高您对Eclipse知识的最佳教程。

这就是我在2018年成为一个更好的Java开发人员的秘诀。我知道要遵循所有这些建议是很困难的,我也不是要求你这么做——这根本不实际。您可以首先关注更重要的任务,例如,如果您还不了解Java 8和学习Spring框架,但是如果您擅长这些,那么您可以选择其他的主题,例如单元测试、JVM内部和DevOps。

所有最好的,不要忘记分享你认为已经使你成为更好的Java开发人员的技巧。如果你有任何建议或反馈,欢迎大家分享——我们都互相学习。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.Learn Java 8
  • 2.学习Spring框架(Spring Boot)
  • 3.学习单元测试
  • 4.学习api和库
  • 5.JVM的内部学习
  • 6.学习设计模式
  • 7.学习DevOps的工具
  • 8. Learn Kotlin
  • 9.学习微服务Microservices
  • 10.学习更好的使用IDE
相关产品与服务
CODING DevOps
CODING DevOps 一站式研发管理平台,包括代码托管、项目管理、测试管理、持续集成、制品库等多款产品和服务,涵盖软件开发从构想到交付的一切所需,使研发团队在云端高效协同,实践敏捷开发与 DevOps,提升软件交付质量与速度。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档