当前位置: 首页 > 科技观察

写出优雅Java代码的八个建议

时间:2023-03-13 12:17:23 科技观察

在每一位新手程序员的心中,编程是一种神圣的艺术创作。他们都希望自己的代码作品简洁明了,可读性强,有一定的容错能力。本文将为您带来八个提示和技巧,帮助您编写干净、干净的Java代码。其中一些可能会让你觉得有点奇怪,但请相信我,以下每一项我都亲身实践过。1.使用IntelliJIDEA作为你的集成开发环境(IDE)虽然我用了六年的Eclipse,三年的NetBeans,偶尔还会用,但这些天大部分时间,我只是用IntelliJIDEA。我并不是要在这里展开关于IDE的大讨论,只是想告诉你,IDEA可以根据它自己的最佳集成实践标准不断提示你编写更短、更好、更干净的代码。您只需按Alt+Enter,它就会自动开始为您工作。大多数时候,IntelliJIDEA能够为您提供各种智能实用的代码建议。当然,你也可以从中学习到不同的编程知识和技能。另外推荐使用IDEA的快捷键来加快编码速度。IDEA有很多非常方便的快捷键和功能,多用就会熟悉!为了更好的获得IDEA的服务性能,你最好在你的电脑上使用固态硬盘(SSD)。就我自己的旧笔记本电脑而言,由于其传统的硬盘(HDD),它不再能够流畅地运行IDEA。所以我个人建议你至少使用256GB的SSD。2.使用JDK8或更高版本JDK8及更高版本引入了诸如:lambda表达式(lambda表达式,一种匿名函数)、函数式接口、流接口(StreamAPIs,提供更具可读性的源代码实现方法)等诸多新特性,它可以帮助您编写更短、性能更高的Java代码。当然,你不需要一一记住这些功能,因为前面提到的IDEA会帮助你在实际的编程过程中实现这些功能和服务。这就是为什么我首先向您推荐IDEA。3.使用Maven/Gradle请使用Maven(一种用纯Java编写的开源项目管理工具,见)或Gradle(一种基于ApacheAnt和Maven的项目自动化构建工具,见)来管理代码中的依赖关系,以及构建和部署您自己的项目。大多数Java后端开发人员使用Maven,可能是因为几乎所有Java开发人员都熟悉XML。让我们看看Maven能为我们做什么。Maven能为我们做什么?我们可以使用maven轻松构建项目。借助maven,我们可以轻松添加项目的jar和其他依赖。Maven提供项目信息(日志文档、依赖项列表、单元测试报告等)Maven在更新JAR和其他依赖项的中央存储库时对项目非常有帮助。在Maven的帮助下,我们可以将任意数量的项目构建为JAR、WAR等输出类型,而无需编写任何脚本。使用Maven,我们可以轻松地将我们的项目与源代码控制系统(如Subversion或Git)集成。4.使用Lombok是时候告别setter/getter、ashcode/equals和constructors/toString等样板代码了。您只需要一个注释:@Data即可完成所有操作。Lombok是一个可以帮助开发者通过简单的注解来简化和消除Java代码膨胀的工具(查看详情)。它不仅可以减少您编写的代码量,还可以帮助您处理那些生成的字节码。5.编写单元测试可测试的代码通常意味着在组织结构上具有更合理、更简洁的代码质量。因为它会驱使你提前去管理各个类之间的关系,各种方法的访问级别等等。我什至发现,即使是最小的单元测试也可以促进更快、更容易的开发过程,这反过来又让我能够编写更短、更扁平、更快的Java代码。当然,在实际的开发工作中,总会听到一些“我根本没时间写单元测试”或者“项目时间快到了,别把时间浪费在单元测试上”之类的反对意见。这听起来很有道理,但根据我的经验,在大多数情况下,事实并非如此。如果您没有时间编写单元测试,您是否有更多时间来修复代码中可见或不可见的错误?如果跳过单元测试,仓促完成的代码并不能保证稳定性。尤其是一些新的代码变更,你没有办法及时反馈,不知道那些新生成的代码是否存在错误隐患,未来在特定场景下是否会出现不可预知的异常问题。总的来说,Junit和TestNG是两个优秀的Java应用和单元测试框架。我个人更喜欢使用TestNG。6、重构:常见,但也很慢简洁精干的Java程序代码不是一蹴而就的,往往需要你反复琢磨、反复改进。通过逐行重构代码并运行各种测试用例,您可以确保您的更改不会破坏现有代码的正确功能。同样,IDEA也极大地提供了对代码重构的支持,包括extractmethod(提取方法,将一个大函数拆分成多个小函数)、rename、inline(内联)等功能。当然,如果你不太了解什么是代码重构,它有什么作用,MartinFowler的经典《重构:改善既有代码的设计 (第 2 版),Refactoring: Improving the Design of Existing Code (2nd Edition)》绝对是你必备的参考书。7.注意代码规范。从学习编程的第一天起,就要养成良好的编码习惯。包、类和方法的命名是最基本的。推荐阅读:8.定期联系客户以获得他们的反馈最后但可能也是最重要的:客户付钱让你编写代码来解决他们的问题、满足他们的需求并解决他们的痛点。然而,你可能会在不知不觉中花太多时间去实现你认为重要但与客户无关的特殊功能,而忽略了代码整体的健壮性和可维护性。那么,如何才能尽早发现这个问题呢?请经常与客户保持联系,尽早得到他们的反馈。话虽如此,知道比做容易。即便是经验丰富的产品经理也未必能在短时间内领悟到需求的真正含义,何况是那些只关注功能实现的“码农”?因此,一个切实可行的建议是:如果不能直接接触到最终用户,请尽量与系统的产品经理或运维人员礼貌、频繁地沟通。磨刀不误砍柴工。这几个小时的投入对于后期节省时间来说绝对是值得的。总结在过去几年的编程实践和项目应用中,以上八点经验让我受益匪浅。在此,希望它们也能对你的代码工作有所帮助。编程愉快!