有些事总是说起来简单做起来难。养成良好的习惯,是在我们编程中最重要的。在学习的时候我们往往注重的是如何快速的理解例子,练习的时候没人强迫你要些的如何如何规范。开放式的,更何况我们在练习的时候大部分是拷贝,编译执行看结果。正真的自己去一行一行认认真真的去敲的人很少,都想速成。囫囵吞枣,都消化成半成品。如果是大学学习,你见又哪位老师说要把代码写规范。应为他们也基本不写代码,何来规范?
所以一开始我们要重点强调:
1、代码书写规范,学习或写代码之前一定先去找本代码规范看看,严格执行之
2、代码较长时记得写好注释,整个项目写好文档。关键地方必加注释,代码清晰的情况下关键注释能让人快速理解和找到问题。
3、尽量拆分函数功能及类,保证一个函数只做一件事,不要全堆一个函数里。一个函数几百行?一个函数六七重循环?不晕才怪。
4、考虑好异常处理,无论用if还是try。程序小没事,要是工程大了找个错误都很难。
5、掌握好你所用语言的设计逻辑,语言本身的一些特性需要我们熟悉,在分析问题的时候能帮助理清时序逻辑关系。
6、出现问题时,请先怀疑自己的代码。
7、务必看懂错误提示。其实是编程的最基本要求,编译器(解释器)及运行时给出的错误提示务必看懂。其实没啥难的,常见的也就那么些个单词,就那么几项概念。
有了上面这些基础我们再来讲:
1、做什么?
2、怎么做?
写代码完成功能也好还是排查错误也罢,先明白我们要做什么,关于做什么,其实就是分析需求,说白了理清楚问题就行。我们也达不到架构师级别的面面俱到,就如在我们项目中要完成一个功能,可能很小微不足道。但是我们还是要先理理承上启下的脉络,能给别人提供什么,需要用到别人什么,何种方式实现。画画流程图,列列要实现函数,最后一口气搞定代码编写,然后调试。这单纯来讲的是作为一个螺丝钉要干的工作。
怎么做?这个是最头痛的东西了,可能大家基础呀什么都一样,但是有的人干事或解决问题就是快。一个比较实际的例子。曾经有一次我们在解决显示输出偶尔出现错位现象问题,大家都在议论绘制函数哪里出现错误纠结了很久,由于没有找到规律,其中一位硬件工程师什么也没说拿个了个尺子量起了显示错误的长度。一语道破,写显存buf行越界。因为他丈量的结果是每行显示错位相同在某一结果下。
代码高手是如何炼成的?怎么做方法最重要,解决问题时候其实就将一个个方法列举然后用排除法验证。方法不固定,套路是一样的。组合拳打完,看问题有没有解决,如果没有那要换一套组合拳再打。凡事三思。
坚持有思考的去解决问题,凡事有问做什么、怎么做。