题外:昨天看了某知乎用户的回答颇为感慨,大意是说如今主流是框架程序员愈来愈多,原理、架构、底层方面的愈来愈少;依赖框架快速出活的程序员工做机会比较多,公司招聘的时候也比较受欢迎。git
不能说哪一种优秀或者比较low。只要须要就必然有存在的价值,尤为是在快速迭代的今天,速度慢半拍可能就意味着淘汰。程序员
今天说命名可阅读的代码。github
写程序就像建造一栋高楼,包括方方面面,罗马不是一天建成的。软件开发领域,强调命名的重要性至今都不过期。代码开发阶段在大部分应用程序生命周期中占比都是很小的一个阶段,维护阶段是一个大头,后来的人员须要阅读你的代码<也可能包括将来的你>才能完成工做。不少时候,维护运营阶段阅读前人的代码,或者本身之前的代码会有一个感受一个头两个大。架构
什么是好的命名,没有固定答案,不过有一个原则就是:遵循团队或者项目的命名规范,若是团队或者项目尚未统一的命名规范,首先去建立她,而后贯彻到底。相信百分之九十九的组织都有本身的命名规范。框架
关于注释也在存在争议,有的组织规定代码不能存在注释,有的组织要求必须写注释。优劣没有定论,不过好的命名能够是“自注释”,能够明确传达代码意图,描述逻辑。统一的命名规则可使整个团队保持一致。code
一、名字完整准确的表达其所表明的的含义、名字反应实际问题、名字“足够长”、限定词放在名字最后、server
二、避免缩写或对缩写进行统一约定、使用约定对仗词<begin/end、min/max、up/down>等、使用有意义的循环下标blog
三、命名规则可以区分类名、常量、枚举、变量生命周期
以上简单罗列,更多实践,Google 一下。开发
一、常见的多层结构中:业务逻辑层,IxxService、xxService ;数据访问层,IxxDao 、xxDao 等,固然每一个组织可能不同
二、模式语言 xxFactory 、xxObserver、xxSingleton 等
三、.Net Framework 中API
四、代码片断
string add; // person address int a; // person age string address; int age;
强调命名是一个古老的话题,可是历来都不过期。最后用一个问答,强调一下命名的重要性。
问:如何写出可阅读的代码,自注释代码? 答:遵循良好的命名实践。
推荐阅读:
一、《Code Complete》第11章 The Power Of Variable Names
二、How To Write Unmaintainable Code : https://github.com/Droogans/unmaintainable-code
三、阿里《Java 开发手册》 https://github.com/alibaba/p3c