Java世界中存在着很多工具,从著名的IDE(例如Eclipse,NetBeans和IntelliJ IDEA)到JVM profiling和监视工具(例如JConsole,VisualVM,Eclipse Memory Analyzer等)。
在本文中,我将重点介绍适用于各种Java开发人员(例如核心Java和Web开发人员)的通用工具。该列表绝没有罗列出完整工具,如果您知道开发人员应该学习的一些好的工具,请在评论部分与大家分享吧。
1. Git
对于Java程序员,Git是更重要的工具之一。它是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。Git易于学习,占地面积小,具有闪电般的性能,但不幸的是,我还没有广泛地研究Git。我已经使用Git使用Eclipse从GitHub下载开源项目和示例,但是我还没有掌握Git命令行。
2.Docker
Docker是一个开源工具,用于自动在云或物理服务器上部署应用程序。它允许开发人员和系统管理员在笔记本电脑,数据中心VM或云上构建,交付和运行分布式应用程序。
3.Jenkins
Jenkins是用Java编写的开源自动化服务器。它有助于自动化软件开发过程中非人工的部分,例如,编译项目,运行单元测试,集成测试以及生成文档并在本地和远程存储库上上传工件。它是在项目中进行持续集成和实施持续交付的最受欢迎的工具之一。
4.Selenium
Selenium是Web应用程序的最佳软件测试框架之一。它提供了用于编写测试的回放工具,而无需学习测试脚本语言。Java开发人员可以使用Selenium来测试其HTML和JSP文件。它还提供了用于Web浏览器自动化的各种工具和库。如果您处于自动化和测试领域,那么Selenium是您必须的选择。
5. Groovy
您可以使用它编写构建脚本,测试脚本,甚至使用诸如Gradle和Spock之类的流行框架。顺便说一下,对于那些不了解的人,Apache Groovy是Java平台的一种面向对象的编程语言。它是一种动态语言,其功能类似于Python,Ruby,Perl和Smalltalk,并且通过提供简洁而强大的语法来扩展Java。如果如果你还不会使用它,那么一定要去学会!为什么?因为它是Java的补充。使用Groovy,您可以在Java项目中做更多的事情,而不仅仅是坚持简单的Java。
6. Spock
Spock是针对Java和Groovy应用程序的测试和规范框架。使它在人群中脱颖而出的是其优美而富有表现力的规范语言。由于其JUnit运行程序,Spock与大多数IDE,构建工具和持续集成服务器兼容。
7. Maven
如果您是经验丰富的Java开发人员,那么您应该已经了解Maven,但是如果您是拥有1至2年经验的新开发人员,那么它是学习的好工具。Apache Maven是一个构建和项目管理工具。基于项目对象模型(POM)的概念,Maven可用于从*信息管理项目的构建,报告和文档。Maven的另一个有用功能是依赖管理。由于我们在Java项目中使用了很多第三方库,因此手动管理每个JAR文件及其依赖项可能会非常麻烦。Maven通过自动为您下载JAR解决该问题。
8.Gradle
Gradle是另一个开源构建自动化系统,它使用Apache Ant和Apache Maven的最佳思想,并将其带入一个新的高度。它也是Android的默认构建工具。它引入了一种基于Groovy的域特定语言(DSL),而不是Apache Maven用来声明项目配置的XML,这使得配置项目依赖项和根据您的需要对其进行自定义更加容易。为什么选择Gradle而不是Ant或Maven?好吧,因为它结合了其他构建工具的最佳功能,并且具有Ant的灵活性和控制能力,Ivy的依赖关系管理,配置约定和Maven的插件,并且最重要的是,它在Ant之上使用了Groovy DSL。这使其成为Java的最佳构建工具。
9. JIRA
Atlassian的JIRA是当今敏捷开发中最重要的工具之一。它用于错误跟踪,问题跟踪和项目管理。如果您遵循敏捷开发方法,例如Sprint和Scrum,那么您必须了解JIRA。它使您可以创建Spring周期并跟踪软件开发的进度。如果您渴望成为Scrum Master,我强烈建议您通过实际示例来掌握JIRA和Learn JIRA。它不仅教授JIRA的基本和高级功能,而且还为您很好地介绍了Confluence。
10. Java架构师学习公众号
技术公众号作者,写有《JVM深入浅出系列》与《Spring Boot 从0-1》。励志做一位可以帮助程序员共同成长的技术分享者!