程序员是什么?
各个行业的人才都是为了解决各个行业的问题的,只不过用的专业知识不一样。比如互联网产品经理,他们是用产品的思维解决问题的,表现形式可能是axure图,设计师是用设计的眼光解决问题的,表现形式可能是一个psd文件,程序员是用程序员思维解决问题的,表现形式是代码。
什么是好的程序员?
我最开始对程序员的理解是这样的,比较初级的程序员是能解决问题但算法效率不高,高级一点的是能写出算法效率比较高的程序,这在我的眼中就是高手了。直到最近看了萧井陌在bilibili的直播
才认识到我的对程序员的理解太狭隘了,你看,人都有思维的局限性,只有不断的接触新的事物才能尽可能的降低这种局限。一个好的程序员固然要写出好的算法,这算是基本功了。但同时也要写出结构良好,易于阅读的代码,目的是方便阅读、方便维护。
什么是结构良好,易于阅读的代码?
在学习完c语言这种过程化的语言之后非常容易写出那种结构不良好,不易于阅读的代码。
比如这种
int a;
i=5
while(i)
{
alert('test');
}
for(int j=0,j<10;j++)
{
//xxxx
}
这种代码整体上看能解决问题,但是看起来特别乱,变量定义和 函数调用放在一起,没有那种结构化的感觉,真正结构良好易于阅读的代码,你拿到之后就感觉很舒服,感觉像是看了大师的作品一样。在学习了c++之情况就会变得好一些了。