如何写出高质量的代码,这应该是每个程序员都在追求的,也是作为一个程序员的成就所在。什么样的代码才算得上是高质量的代码呢?答案很简单:高可读性、高稳定性、高扩展性。如果能写出这样的代码,那你就是一个优秀的程序员了。如何才能写出高质量的代码呢?接下来我将分享一些自己总结的经验。
首先我把写代码分为两个阶段:初级阶段和高级阶段。初级阶段:有良好的编码风格、没有魔鬼数字、不存在大量重复代码等,代码易读结构良好,但是代码整体不是很优雅,缺乏完整的面向对象思想。高级阶段:代码符合java的基本设计原则,充满面向对象的思想,具有高扩展性。很多程序员都处在初级阶段或者略高,JDK、JUnit、Spring等的源码就处在高级阶段,阅读这些代码就是一种享受。
那么如何编写高质量的代码呢?首先需要有一个良好的代码风格,适当的命名、空行、缩进、注释等,代码风格可以参见Sun的编码规范。然后要养成一些良好的编码习惯,避免复制粘贴、控制类和方法的长度、少用静态变量和静态方法、拒绝魔鬼数字。如果这些都能够做到的话,代码质量已经达到了一个较高的水平。如果想要代码质量进一步提高,让代码看上去更优雅、充满面向对象的思想,那就需要深入的了解java的基本设计原则并在这个基础上活用设计模式,切记不要乱用设计模式。当然这个说起来简单,真正要做到这一点还是很难的。这需要长时间的积累,多阅读一些优秀的开源代码,能从其中得到很大的启发。
下面简单的说一下我对java五大基本设计原则的理解:
单一职责原则(SRP:Single Responsibility Principle),是指一个类只干他该干的事,通俗点的说就是少管闲事。在设计类、接口和方法的时候,都需要考虑是否满足了单一职责原则。这是最简单最基本的一条设计原则,也是在编码过程中最容易被忽视,最容易引起争议的。
开闭原则(OCP: Open-closed principle),是指对修改关闭,对扩展开放。这是一个高层次的设计总则,让整体代码架构具有高稳定性的同时,也能满足对不同需求的高扩展性。
依赖倒置原则(DIP: Dependence Inversion Principle),是指依赖于抽象,而不依赖于具体,抽象不应当依赖于细节,细节应当依赖于抽象。简单的说就是,要针对接口编程,不针对实现编程。
里氏替换原则 (LSP: Liskov Substitution Principle),是指子类可以替换它的父类。当你需要继承一个类之前,需要仔细的思考这两个类是Is-A还是Has-A的关系。不要仅仅是因为要复用某个类的一些方法而去继承这个类。在Java中,代码复用有两种形式:继承和组合。如果两个类之间确实是Is-A的关系,那么可以用继承,否则请用组合方式。组合优于继承。
接口隔离原则(ISP: Interface Segregation Principle),是指使用多个专门的接口比使用单一的总接口要好。同一个实现提供宽、窄不同的接口,提供给不同的客户端使用。 个人觉得这和单一职责原则有点类似。
在深入理解这五大设计原则的再去理解设计模式,你会发现每个设计模式的优缺点,在什么情况下用什么设计模式比较好。
最后要说的一点是责任心和成就感。代码不是写完就完事了,要抱着一种把代码写好、稳定、易于后人维护的一种态度去写代码,需要持续的重构,让代码不断的改进。当你写出的代码能够稳定的运行,并具有高扩展性,让阅读代码的人感觉这是一种享受,这是作为一个程序员最大的成就感。
java代码如何做对应的店铺评价 java如何写出高质量代码
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
如何写出高质量代码?
看过之后就是写,写首先要注意一些最基本的代码规范,比如变
程序员 代码规范 设计模式 Go 变量命名 -
如何写出高质量的代码?
每位软件工程师都想写出高质量代码,高质量的代码也就等同于易维护、易读、易 扩展、灵活、简洁、可复用、可测试的代码。
java 算法 开发语言 设计模式 设计原则 -
如何保障项目组写出高质量的代码
Java项目开发过程中,由于开发人
编码规范 代码评审 开发人员