怎么编写高质量的web开发代码

发布时间:2022-04-01 16:35:51 作者:iii
来源:亿速云 阅读:200

本文小编为大家详细介绍“怎么编写高质量的web开发代码”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么编写高质量的web开发代码”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

Spring、Apache Common等源码是一件赏心悦目的事情,究其原因,无外两点:

1)代码质量非常高;

2)命名特别规范(这可能跟老外的英语水平有关)。

怎么编写高质量的web开发代码

要写高质量的代码,不是一件容易的事,需要长年累月的锻炼,是一个量变到质变的过程,但要写好命名,只需要有比较好的英语语法基础和一种自我意识即可轻松达到。本博文将会结合本人的开发经验,总结出若干命名规则,这些命名规则纯属个人的使用习惯,不代表是一种理想的规则,在这里列举出来,供大家交流讨论。

1.切忌使用没有任何意义的英语字母进行命名

for(int i=0; i<10; i++) {
        ...
    }

这是在很多教Java基本语法的书上常见的代码片断,作为教学材料,这样写无可厚非,但作为真正的代码编写,程序员必须要养成良好的习惯,不要使用这种没有任何含义的命名方式,这里可以使用“index”。

2.切忌使用拼音,甚至是拼音首字母组合

cishu =5; // 循环的次数
zzje = 1000.00 // 转账金额

笔者在做代码检查的时候,无数次遇到过这样的命名,使人哭笑不得

3.要使用英文,而且要使用准确的英语,无论是拼写还是语法

4.方法名的命名,需要使用“动宾结构短语”或“是动词+表语结构短语”

笔者曾看到过千奇百怪的方法命名,有些使用名词,有些甚至是“名词+动词”,而且,如果宾语是一个对象集合,还是***使用复数:

createOrder(Order order) //good
orderCreate(Order order) //bad
removeOrders(List<Order> orders) //good
removeOrder(List<Order> order) //bad

5.对于常见的“增删改查”方法,命名***要谨慎:

6.宁愿方法名冗长,也不要使用让人费解的简写

笔者曾经遇到一个方法,判断“支付账户是否与收款账户相同”,结果我看到一个这样的命名:

checkIsOrderingAccCollAccSame(...) // 很难理解,我马上把它改为:
isOrderingAccountSameAsCollectionAccount(...) // 虽然有点长,但非常容易阅读,而且这种情况总是出现得比较少。

7.如果你在设计业务系统,***不要使用技术化的术语去命名

笔者曾经工作的公司曾经制订这样的命名规则,接口必须要以“I”开头,数据传输对象必须以“DTO”作为后缀,数据访问对象必须以“DAO”作为后 缀,领域对象必须以“DO”作为后缀,我之所以不建议这种做法,是希望设计人员从一开始就引导开发人员,要从“业务”出发考虑问题,而不要从“技术”出 发。

所以,接口不需要非得以“I”开头,只要其实现类以“Impl”结尾即可(注:笔者认为接口是与细节无关的,与技术无关,但实现类是实现相关的,用 技术化术语无可口非),而数据传输对象,其实无非就是保存一个对象的信息,因此可以用“**Info”,如CustomerInfo,领域对象本身就是业 务的核心,所以还是以其真实名称出现,比如Account、Customer,至于“DAO”,这一个词来源于J2ee的设计模式,笔者在之前的项目使用“***Repository”命名,意味“***的仓库”,如AccountRepository.

关于“Repository”这个词的命名,是来源于Eric Evans的《Domain-Driven  Design》一书的仓库概念,Eric  Evans对Repository的概念定义是:领域对象的概念性集合,个人认为这个命名非常的贴切,它让程序员完全从技术的思维中摆脱出来,站在业务的 角度思考问题。说到这里,可能有人会反驳:像Spring、Hibernate这些优秀的框架,不是都在用“I”作为接口开头,用“DAO”来命名数据访 问对象吗?没错!但千万别忽略了语义的上下文,Spring、Hibernate框架都是纯技术框架,我这里所说的场景是设计业务系统。

8.成员变量不要重复类的名称

例如,很多人喜欢在Account对象的成员变量中使用accountId,accountNumber等命名,其实没有必要,想想成员变量不会鼓孤立的存在,你引用accountId,必须是account.accountId,用account.id已经足够清晰了。

读到这里,这篇“怎么编写高质量的web开发代码”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. 如何编写高质量的 JS 函数(1) -- 敲山震虎篇
  2. 编写高质量代码:改善Objective-C程序的几个建议

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

web开发

上一篇:C语言怎么使用位运算符来判断正负数

下一篇:C语言怎么判断是不是闰年

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》