我相信人人都喜欢看时装表演吧,模特们那妙曼的身材,漂亮的脸蛋,加以时髦的时装,真是美丽动人。的确,时装让我们魅力四射,让我们看起来与众不同,为我们赚来了不少的回头率。我们不断的变换我们的服饰,以至于朋友们都认不出自己,这也是一种美丽的尴尬。
张扬个性是一种美丽,但整齐划一也不失一种美感。还记得九九年国庆阅兵式吗?多么威武,多么壮观。各方队统一的服装,整齐的步伐,响亮的口号,展示了军人的英武壮美,我们深深的被这些场面打动着。走到哪里我们只要看到军装,我们就知道这是人民解放军,看到绿色我们知道这是骁勇善战的陆军,看到蓝色我们知道只是展翅在蓝天的雄鹰,看到白色我们隐约听到海军归来汽笛的声音。在我眼里,穿正装的女孩也是分外的漂亮,严肃而不拘谨,整齐而不失个性。
时装和正装都是美的体现,你喜欢哪个呢?
在软件开发中,我们需要张扬个性,发挥个人主观能动性,但是我们更需要协调、规范。我们思考一下,谁能成为我们写的程序的读者呢?第一,我们自己。我们是自己的读者,我们需要经常拿出我们自己的程序进行修改重构,如果代码让我们都难一是从,我们是什么心情?第二,编译器。这是最好伺候的家伙,也是让人头大的家伙。只要你的程序,在逻辑和语法上符合他的口味,它是多么和蔼可亲的家伙。但是,如果你即使少些了一个逗号,在它哪里也通不过,管你是漂亮的代码还是乱作一团糟。第三,其他人。对,我们不能忽视这些读者,在现代的软件开发中团队协作是必不可少的,相互阅读代码也是必须的,想想怎样让这些人能读的懂你的代码这也是非常重要的。看一个例子吧。
int fn(String arg){return ts.getById(arg).getAccessNum()+1;}
我们先不理会这个方法的含义,如果满屏的都是这样的代码,你是什么感觉呢,是不是要崩溃掉。的确,没有缩进,没有分行,杂乱无章。这就是我要阐述的第一个观点,请将你的衣服穿整齐,最好能找到一个合适的格式编排,并坚持使用它。我们现在就来改造它。
public int fn(String arg) {
return ts.getById(arg).getAccessNum() + 1;
}
是不是比以前好看多了,K&R式缩进,方法名和方法体分离,代码变得就很清新。
但是我们仍然感到不知所云,我们是不是再想,如果有注释那该多好啊,的确,缺少注释的代码就像一本看不懂字符集,可能只有编译器才能明白,这对于阅读和维护你代码的人来说,无疑是一个梦魇。让我们再来改造它吧。
/**
* 得到当前文章的阅览量
* @param arg 文章ID
* @return
*/
public int fn(String arg) {
return ts.getById(arg).getAccessNum() + 1;//得到文章原有访问数将其加一
}
的确,看着注释我们终于明白了这个代码的意思,我们长舒一口气。我们发现注释可能对于编译器毫无用处,它会被忽略,但是对于每个阅读你代码的人来说,你可以让他少花多少大量的时间来阅读你晦涩的代码。作为负责的程序员,我们有义务添加必要的注释。注释是对程序的一种额外的说明,我们不要过度使用注释来描述程序。同时,团队开发一定要有一个注释规范,让所有人的注释都能整齐划一,一目了然。幸好,现在的IDE大部分都有注释模板的功能,让我们可以制定相同的注释模板。同时,像java语言,JavaDoc也有一些强制的规范和标准供我们参考执行。另外值得注意的时候,要及时维护你的注释。我们经常会为一些未实现的方法标注/**该方法稍后实现*/,然而我们再维护了代码以后,却没有及时的更新注释,这必然给其他维护代码的人造成误解和不必要的工作。就上面几行代码却充满了这么多的注释,阅读注释其实也成为一种负担,因为我们是关注的程序本身,而不是注释,怎么做呢?前辈们给我们提出了这样一个概念—文学性编程。这的确比较困难,我们不是作家,那么简单一点就是自文档化的编程方法。
我们经常为写文档而发愁,我们是程序员,我们热爱编程,我们不希望每天都要处理那没完没了的文档,还有阅读文档并不能最大程度的提高我们编程的效率,如果你也有这些困扰时,那就开始自文档化编程吧。还是改造上面那段代码。
private final int MAXVISITS=85;//最大访问限制数
public int addVisitNum(String topicId){
Topic topic = topicService.getTopicById(topicId);
if(topic.getVisits()>=MAXVISITS){
return MAXVISITS;
}else{
return (topic.getVisits()==null?0:topic.getVisits())+1;
}
}
这样的程序,难道还要写过多的注释来说明吗?代码就是注释,这样的代码阅读起来难道不是一种享受吗?既然意识到这一点,那我们就从现在开始书写自文档化的代码吧。
上面说的这些,其实就是我们大家一直在强调的规范问题,现在的软件开发已经不是一个人的游戏,它是一个团队协作配合的结果,每个程序员用程序进行着相互的交流,致力于书写规范的一致性的代码其实是我们迫切需要的。如果您的团队已经有了相应的代码规范,那就坚持使用它,不要轻易更改。如果您的团队还没有相应的规范,参考现行的一些通用规范,再结合自身的实际,花点时间制定自己的规范,对您的团队绝对是有好处的。
要时装还是要正装?我们心里其实已经渐渐明白了,那就为您的团队制定一身合体的正装吧。
分享到:
相关推荐
[从快感到美感]-高峰体验与美感.docx
黑白装饰画的美感-教案.doc
这套课程我们计划一共出三个阶段,目标是帮助孩子完整的理解编程的概念,并且可以独立创作自己想要的作品。目前大家看到的只是第一阶段。 第一阶段的课程主要侧重点在于让孩子熟悉scratch的编程环
小学语文:引导品读,发掘美感-《去年的树》教学片断和反思(实用文本).pdf
设计说明:一个城市街角恰好是街道汇聚额交点,在这次有限的场地街角条件下,我们希望简洁的处理建筑体块,而在更为近人的尺度上去考虑、空间、材料、语言如何能给到达这个场所的人一些些细微美感或者情感上的波动。...
Android应用源码开发Demo,主要用于毕业设计学习。
小白的短视频美感剪辑课程是一个专为初学者设计的课程。通过学习本课程,你将了解短视频剪辑的基础知识和技巧,包括画面剪辑、音乐选择、字幕添加等。我们将引导你掌握如何用简洁而有趣的方式讲述故事,提升你的视频...
Android应用源码开发Demo,主要用于毕业设计学习。
行业分类-设备装置-具有美感而且可以安全使用的多功能书签.zip
线的美感与表现,线的美感与表现课件,线的美感与表现PPT
基于深度学习的手写汉字美感评分,庄子明,张洪刚,为帮助青少年儿童提高汉字书写质量,更好地辅助汉字书写教学,本文探究了手写汉字美感评分的有关技术,结合当前最新的深度学习理
基于卷积神经网络的人脸图像美感分类
初中语文语文论文语文课要培养学生“三感”__语感情感美感
Beef编程语言Beef是一种面向性能的开源编译语言,已与其IDE环境紧密结合。 语法和许多语义是最直接从C#派生的,而Beef编程语言Beef是一种开放源代码的面向性能的编译语言,已与其IDE环境紧密结合。 语法和许多语义...
把它隐藏到你们的作品中,完全不会影响整体美感。 尽管Cheapduino作为目前最实惠的控制器,定位于创客、学生和入门玩家,但是我们仍然非常关注使用细节。Cheapduino具有3个pwm数字接口,3个模拟口,以及电源接口。...
电影论文-论科学美及其美感详细内容.doc
几十个精美PNG格式大图标,给你程序增添美感
短短十多年,企业对大数据分析的需求不仅从简单的报表软件上升到BI,而且进一步对数据可视化有了更高阶的需求和期待。去年,亿信华辰的BI4.7重磅推出了酷屏分析功能,通过大屏对数据进行可视化展示,该功能在诸多...