为什么有些程序员不愿意缩进代码?

黄尚云


作为已经写了十几年代码的老程序员,虽然在编写代码的时候大部分情况还是遵循编码规范,但在这基础上会展示自己一些特性,有些程序员不喜欢缩进代码也是源于此,如同一个人长得什么样子靠体征能够判断得出,本身谁写的代码也会带有一定特性,很多程序员喜欢在写的代码注释上面摆个佛祖保佑,等等之类小特性东西,有的喜欢采用windows式编程风格,有些喜欢linux式的编程风格,当然这些习惯的养成主要和前期的工作性质有一定的关联。

如果前几期从事的工作在windows系统下开发基本上代码风格windows风范,开始写代码都是先会模仿,然后慢慢形成自己风格,这个风格的形成还有当时做项目场景以及遇到的直接主管都有一定关系,有个同事编程底子特别扎实,特别是c++方面,有一次吃饭聊到这个话题,他说是被逼出来的,刚入行的第一家公司直接主管有点强迫症,看到写的不好的代码就进行严厉的批评,那同事属于慢热型的接收事物比较慢,结果经常挨批评,被骂了几次就开始非常注重代码质量了,写的时候非常小心,后来被主管说代码的可读性不好,改了几次还不是很满意,于是就照着主管的风格来了,到现在已经写了将近20年代码了,还是那种风格,每次说起这件事总会对之前的主管充满了感激之情,还会在逢年过节的时候打个电话问候下,并且表达感激之情,据说已经是某公司的老总了,早期从事软件开发的老程序员基本上不是独自创业就是合伙创业,并且有很大一部分人已经功成名就了。

程序员的代码风格一旦养成很难改变,如同有些公司喜欢自己招收应届生培养成自己公司风格的人,这在行业内叫做可塑性,一般来讲新人的可塑性会更高点。五年以上的程序员很难改变其中风格了,但优秀的程序员除外,优秀的程序员基本上都具备一种特性不断的重构,修正身上的不足之处,所以可以看到很多已经做了很多年的程序员还是在修正自己的风格,从代码风格的变化能看出一个人对待代码的态度,现在很多程序员有一种不好的习惯,明明写的代码不符合规范,也不去修改还要当成一种特性,如同很多人对程序员产生一种误解,不通宵加班程序员都不是什么高手,高手都是白天睡大觉晚上有灵感写代码,绝大部分程序员都是白天搞代码,晚上好好休息,所以不能因为一些癖性混淆造成以偏概全,优秀的程序员在发现自己不足的时候都会选择优化改进,不会执迷不悟。

要想成为一个优秀的程序员首先是要,懂得优化自己代码,逐渐形成优势的特性,而不是以不规范的特性引以为傲。正式自己的缺点,不停的修正改正,才是走向优秀程序员的正道。


大学生编程指南


我想可能有以下几种原因吧:

第1,懒,谁也不想多按几个键。虽然只有几个键,但一个项目下来,可以节省好多体力。多数人的潜意识里认为,牛比的程序,就是让你看着吃力的程序。不缩进正好契合这种精神,无形之中又装13了一回,何乐而不为呢?


第2,缩进代码有两种方式,一是用空格,二是用tab键,不同的编辑器对待这二种方式有所有不同,在每个编辑器中,都可以设置是否把tab转成空格,并且设置一个tab转换成几个空格,如果设置不同,则打开就会大乱。 如此一来,就干脆不缩进了。


第3, 现在有自动格式化的工具,在写代码时,集中精力关注在业务逻辑上,格式化的事,交给自动化的格式工具去做。让机器为人分担一部分工作,岂不美哉?


第4,信仰问题。如果你喜欢用空格,你女朋友喜欢用tab, 你们会为孰优孰劣而争吵,久而久之,影响感情,可能会导致分手。这个问题很严重,所以就干脆不用了。 这不是天方夜谭,在HBO的喜剧片《硅谷》第三季中,不同的缩进风格竟然直接导致两位程序员分手,请看下图:



疯牛踢


我是souvc,在互联网公司做研发工作,很高兴为您解答。

一方面

如果不愿意做这些事情,估计是太忙或者这些项目被修改过或者机器自动化格式的时候把原来的格式覆盖掉了。

另一方面

如果看到没有缩进的代码或者代码格式的代码,那么就会感觉这个人也许也是很糟糕,不修边幅,并且这个人的思维可能会有点问题。编码的习惯是会体现出一个人的修养以及习惯。有好的编码规范,就有好的软件,健壮的系统。

额外俩点有编码规范的好处:

1、好的编码规范可以尽可能的减少一个软件的维护成本 , 因为几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护;好的编码规范可以最大限度的提高团队开发的合作效率;

2、好的编码规范可以改善软件的可读性,可以让开发人员尽快而彻底地理解新的代码;长期的规范性编码还可以让开发人员养成好的编码习惯,甚至锻炼出更加严谨的思维。

如果是java 的话,推荐阿里官方推出的编程语言规范。

大家还有什么好的建议呢?可以在留言区一起参与讨论。


souvc


感觉回答了一个假问题。你看到的不缩进的程序员,可能是个假程序员,要么用人单位是个假单位。回答完毕。


i家保


写惯了Python就觉得不缩进难受……至少也美观不是嘛……看前端JS都必须要要Chrome插件json view,不然浑身难受


赵子聋


有些平台,不支持哪么长的代码,行数超多,系统支持不了,必须压缩。这也是一种情况


UiMaker


嵌套太多,刘不喜欢了!四层以下还行。这个,我希望Python能改进。


李海珠2


不整理代码我可以直接理解为平时根本没写过长度超过100行的代码。


冷面杀手213


不缩进,不是合格的程序员


10086号段


换个好点的IDE吧,VS都是自动缩进的


分享到:


相關文章: