• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

命名&可阅读的代码

JAVA相关 .NET西安 3060次浏览 0个评论

一、前言

  题外:昨天看了某知乎用户的回答颇为感慨,大意是说现在主流是框架程序员越来越多,原理、架构、底层方面的越来越少;依赖框架快速出活的程序员工作机会比较多,公司招聘的时候也比较受欢迎。

  不能说哪种优秀或者比较low。只要需要就必然有存在的价值,尤其是在快速迭代的今天,速度慢半拍可能就意味着淘汰。

  今天说命名可阅读的代码。

 

二、可阅读的代码

  写程序就像建造一栋高楼,包括方方面面,罗马不是一天建成的。软件开发领域,强调命名的重要性至今都不过时。代码开发阶段在大部分应用程序生命周期中占比都是很小的一个阶段,维护阶段是一个大头,后来的人员需要阅读你的代码<也可能包括未来的你>才能完成工作。很多时候,维护运营阶段阅读前人的代码,或者自己以前的代码会有一个感觉一个头两个大。

  什么是好的命名,没有固定答案,不过有一个原则就是:遵循团队或者项目的命名规范,如果团队或者项目还没有统一的命名规范,首先去创建她,然后贯彻到底。相信百分之九十九的组织都有自己的命名规范。

  关于注释也在存在争议,有的组织规定代码不能存在注释,有的组织要求必须写注释。优劣没有定论,不过好的命名可以是“自注释”,可以明确传达代码意图,描述逻辑。统一的命名规则可以使整个团队保持一致。

 

三、命名的一些实践

  1、名字完整准确的表达其所代表的的含义、名字反应实际问题、名字“足够长”、限定词放在名字最后、

  2、避免缩写或对缩写进行统一约定、使用约定对仗词<begin/end、min/max、up/down>等、使用有意义的循环下标

  3、命名规则能够区分类名、常量、枚举、变量

  以上简单罗列,更多实践,Google 一下。

 

四、一些例子

  1、常见的多层结构中:业务逻辑层,IxxService、xxService  ;数据访问层,IxxDao  、xxDao 等,当然每个组织可能不一样

  2、模式语言 xxFactory 、xxObserver、xxSingleton 等

  3、.Net Framework 中API 

  4、代码片段    

string add;  // person address
int a;  // person age

string address;
int age;

  

五、总结&推荐阅读

  强调命名是一个古老的话题,但是从来都不过时。最后用一个问答,强调一下命名的重要性。

  问:如何写出可阅读的代码,自注释代码? 答:遵循良好的命名实践。

  推荐阅读:

  1、《Code Complete》第11章 The Power Of Variable Names 

  2、How To Write Unmaintainable Code : https://github.com/Droogans/unmaintainable-code

  3、阿里《Java 开发手册》 https://github.com/alibaba/p3c

 

 


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明命名&可阅读的代码
喜欢 (0)

您必须 登录 才能发表评论!

加载中……