大家好,我是 王有志,一个分享硬核 Java 技术的金融摸鱼侠,欢迎大家加入 Java 人自己的交流群“共同富裕的 Java 人”。
最近小组内心来了两个实习生,各方面都很不错,基础知识扎实,勤奋好学(卷?),人也很谦虚,但同样的他们也存在一些问题,最明显的就是工程能力较差,一方面是在校期间做的项目规模较小,遇到动辄数十万行的项目时有些懵逼,另一方面,他们对开发中常用的软件使用不够熟练。
第一个问题,只能靠工作中不断的积累,或者是通过团队内部的系统培训上手了;至于第二个问题,我们可以通过主动学习的方式来解决,快速掌握这些软件的使用方式。
因此,我们今天的主题是:开发中必备软件的使用。公众号 内回复关键字:20240626,即可获取。
注意:
- 大部分时候,你可以把文中推荐的书籍当做时软件使用的参考说明,而不必深入研究;
- 相关方面的书籍并不多,因此选择的余地也比较小。
必备软件
首先是集成开发环境(IDE),版本控制软件和项目管理软件。
这 3 者上的选择上基本已成定式,集成开发环境选择 IntelliJ IDEA,版本控制软件选择 Git,项目管理软件使用 Maven(据说 Android 那边的选择是 Gradle),因此我推荐 4 本书来学习这些软件的使用方式:
- IntelliJ IDEA 入门与实战
- Pro Git(中文版),官方出品,不二之选
- Maven 实战
- Gradle 实战
当然还会有一些其它的选择,例如集成开发环境还有免费的 Eclipse 和 MyEclipse,版本控制还有 SVN,VSS 和 CVS 等等,只不过目前这些已经不是主流的选择了。
代码质量
在企业内部的开发中,通常会有 3 个环节来把控代码的质量:程序员自主完成的单元测试,项目组内部的代码评审,以及在 CI/CI 中集成的代码检测。
常用的单元测试软件为 JUnit,这也是 Spring Boot 中默认的单元测试软件,常用的代码检测工具为 SonarQube,因此这里推荐的两本书为:
- JUnit 实战
- SonarQube in Action(英文版)
与前面不同的是,JUnit 和 SonarQube 并没有占据绝对的领先地位,各类单元测试软件和代码检测软件层出不穷,如:TestNG,Mockito 等。只是这两者相对来说较为流行。
《JUnit 实战》和《SonarQube in Action》都是著名的“in Action”系列,只不过《JUnit 实战》有中译本,而《SonarQube in Action》目前还没有中译本。
其它
最后推荐一个文本处理软件以及一些关于 GIt 其它方面的书籍:
- Visual Studio Code 权威指南
- Git 团队协作
- GitHub 入门与实践
与其说 Visual Studio Code 是文本处理软件,倒不如说它是开发工具(毕竟是 2019 年 Stack Overflow 最受欢迎开发工具的榜首),Visual Studio Code 的功能非常强大,通过不同的插件组合,可以将 Visual Studio Code 打造成各类语言的开发工具,早期我就是使用 Visual Studio Code 来写 Python 的,只不过现在换成了 PyCharm。