程序员的自我修养
高级程序员之所以高级, 在于他们认识到代码 bug 是不可避免的, 有千万种理由可以导致 bug, 但他们可以在设计和逻辑上保证(追求)滴水不漏, 并用逻辑的百分之百准确性还减少代码 bug. 没错, 严谨的逻辑能力是高级程序员区别于低级程序员的最主要原因。
类似于武侠小说中的武术一样,程序员也分内功和招式。招式就是各种编程技巧和编程概念(框架,架构等),通过经验可以不断习得。而内功就是数据结构 + 算法了,招式可以决定你干活的速度,而且绝大多数情况下,不需要深厚的内力(知道加减乘除就行)。而内功可以决定你能解决问题的高度,就是一件事情,难到一定程度,内力不够的话是解决不了的。
优秀程序员的行为:
拿到任务,就开始仰望星空或天花板上那盏高悬的电灯棒,状如老僧入定
忽而皱眉,忽而展颜一笑,忽而手舞足蹈,忽而在纸上指指戳戳,忽而口中念念有词,忽而长吁……感觉有点神经病啊
桌子上摆的是代码大全、设计模式、敏捷实践之类的书籍,并且没有灰尘
chrome或firefox的书签栏里分门别类,类别多于10个,8个以上是技术相关的
容不得破窗户,看见别人的烂代码就想改过来
随手就能在白板上画出软件的流程图或者时序图……
普通程序员的行为:
拿到任务就开始噼里啪啦敲键盘,一天写了好几千行代码
没事儿就被测试MM叫过去沟通……
都早上10点多了还想着昨晚的球赛,10点半就琢磨中午要吃拉面、扯面、刀削面、牛肉面、旗花面、臊子面、窝窝面还是炒细面……