前几天公司培训编码规范:
第n条:
i ; j ; // prohibit
should be:
i ;
j ; // ok
第m条:
if( aBool = bBool ) // prohibit
should be:
if( (aBool = bBool) == true ) // ok
且不说 if( (aBool = bBool) == true ) 这样的代码是如何混进规范的,单是这两条规范之后蕴藏的自相矛盾的原则,就表明这是不成熟的规范:
第n条背后的思想是每行一条语句,只做一件事,那么为何第m条中aBool = bBool,if(aBool)这两件截然不同的事要放在一行中呢?
事实上宁可允许 i ; j 出现在一行中,也不能允许if( (aBool = bBool) == true )出现在一行中,至少前者做的还是类似的事,事实上前者我觉得可读性最好的形式是逗号表达式:
i , j ; //当然,Java里没有逗号表达式
编码规范肇始于没有智能编辑器的时代,掺杂了很多格式方面的要求,现在各种自动化代码美化功能,可以眨眼间将杂乱无章的代码整理的一帆风顺,将一种风格转换为另一种风格,规范中对格式的规定实在应该弱化,况且Java已经有了官方Code Convention,有了<<The Elements of Java Style>>,企业如果要制定自己的规范,更应注重代码逻辑方面的规范,应多多参考<<Effective Java>>,
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!


