先来看个小故事:
小王:老大,这里怎么没有执行成功呢?代码我从其他地方拷过来的呢!
老大:报异常了没有?
小王:报了,说的是文件导入失败,可是我的文件写入的方法没有问题呀!
老大:你看看人家怎么写的?
小王:人家没写这一块,只有我这里才需要对文件内容进行特殊处理。
老大:那么问题就在这一块儿了。(缩小问题范围了)
小王:我只是把文件内容写好了就导入了数据库了呀!
老大:数据库导入文件那个我看了是公共的sql,没问题。
小王:你看我文件写入这一块的代码嘛,没啥问题呢,我看了文件内容都是正常的。
老大:既然如此,那么肯定是导入的时候存在问题,但是公共方法是可行的,肯定是你的文件格式有问题,你调整一下文件的编码试一试。
......
小王:老大,搞定了,果然是文件编码的问题,不同的编码读取的字节长度不一样,数据库总是以它认为的编码去读取,保持编码一直就行了。
老大:好的,我知道了。
从始至终,老大没有看过代码。
解决问题能力很重要!
其实,评论一个程序员技术的高低,不是看他会多少技术,又懂多少技术。参加过什么大型的项目,也不是看他有没有自己的博客,github有多少star。
而是看他解决问题,定位问题的能力。这个很重要,真的很重要。
技术可以很快上手使用,但是解决问题定位问题的能力不是轻易就行的。特别是在高压下解决问题的能力。
下面是师姐为大家整理的一些建议:
1.代码的命名要规范。
代码是写给人看的好嘛!代码是写给人看的好嘛!代码是写给人看的好嘛!
headImg是什么鬼?我能以为是banner么,头部的图片,请原谅我蹩脚的中式英语!avatar这个呢、portrait这个呢?会不会更好些?英语不好就不能用好有道、google翻译么?还有用中文拼音命名的,亲,我们用的是英文做为脚本好么?你要用这样的,用易语言可好?!
为什么要用框架?一个很重要的原因是命名规范,目录规范,结构规范,分层规范,有利于团队协作,不要本末倒置!
2.架构和规划能力很重要,模块分层,解耦设计什么的,文件目录嵌几层?
这其中又跟命名的能力能搭上点关系。命名都命不好,目录结构怎么建?
url不要做的漂亮些吗?不考虑seo了?
你喜欢addGoods还是喜欢goodsAdd?
请你尊重点我的那些初高中英语语法好么?
3.协助能力、可持续能力。
最好的程序代码是脱离其产生者的。
为自己程序处处救火的程序汪并不是一条好汪。
我记得一句话就是:别想着你的代码以后还有机会重构!
每次说,额,这里我后面会改的,会改的,但是可惜,现实情况是根本不会给你这个时间的。
代码写出来,一是要爽了自己,二是也要爽了别人。
4.debug的能力、总结能力、学习能力真的很重要,代码写出来真的花的时间不长,但擦屁股的时间比写代码的时间多多了!
出了问题不记录,写个博文都好啊,我可没那么强大的记忆力,所以最讨厌考记忆力。
5.不要一贯的使用各种算法,秀算法的你们够了,要写去写底层,应用的场景比较多。
应用层面的程序,算法的应用不是特别多,大部分都是业务代码。以这个作为评价标准的,真心然并卵。
6.有github是加分项,有博客是加分项!?
我还真没见过几个面试官面试的时候跟我说,我看过你github、你博客中的某篇文章不错什么的。
没有,真没有,面试官那种浮躁的要死,面试官也时脱产来面试的,根本没有时间看嘛。
但搞的好像没有github、博客就没有竞争优势似的,大家都注册成风了,尤其是新人!我写博客只是记录和分享我的经验的,不是来给你们加分的。
说到底,想成为好的程序员,还是要努力提升专业技术才是王道!
上一篇:程序员一般都是如何度过七夕节的?