这段时间基本都花在维护系统,维护代码上了,所以也没什么大的拿得出手的东东来说事;
但这段时间感触还是挺多的;最大的感触是:编码一定要养成好的习惯,好的习惯也许你感觉不到
他的好,但是坏习惯迟早会让你吃大亏;
一些好习惯,有时看起来非常笨拙,显得非常没有必要,比如:类成员要全部初始化,指针删除后
要置成NULL;C的struct在使用前最好bzero之类的;一般人都听过也都知道,但恐怕很少有人完全做到,每
时每刻都做到了;我吃过指针的亏,所以我搞了个 DELETE_PTR 的宏来帮我做这件事;我也吃过C的struct
没有bzero带来的一些诡异bug,所以为了防止之类愚蠢的事情发生,我经常在自己写的mem pool的分配函数
返回前主动bzero,也许重复,也许浪费,也不不必要,但至少避免了很多问题的发生;特别是我用 valgrind
检查我以前写的代码,我震惊了,从那后,下决心一定要养成好的习惯;
这些不起眼的习惯有时看起来有些患强迫症,而且有时我会有意无意的去绕过这些原则,线上有个
程序在某种条件下一直莫名其妙的core,于是检查公共库的代码,汗颜的发现:好多类的变量都没初始化,
为什么?觉得麻烦,确实也麻烦,手动去对每个变量赋一个初始值低效无聊,有时会感觉到恶心,所以有时
就会跟着当时的懒惰的感觉走:如果觉得不赋初始值应该也不会出什么问题,于是就跳过去了;但事后(
也许是很久的时候)发现,自己这一感觉往往非常不靠谱;
写脚本,明知道那里非常重要,但就是凭感觉想:不会出问题吧,这地方;所以就不加监控了,也许
加条监控就几句话的事情;
我知道编码要养成好的习惯,很多时候我做到了,而且我也会要求我的兄弟他们一定也要这样做,我
想让他们快点养成这些好习惯,也许这些要求他们会觉得非常不必要;但往往自己做的还不够,于是bug还是
会不断的出现!!
严格要求自己,养成好的习惯!!懒是对的,但懒不是回避,而且要面对然后巧妙轻松懒惰的的解决
之!!
接口完备性:
写c++的类的时候,一定要暂时忘记其他的类的存在,一定要把这个类从其他类中解耦出来,假设
其他的类只知道这个类的接口,而不要做任何假设,这样设计写出来的类才是完备的;有点抽象,举例:c++
的类,有构造函数,有析构函数,构造函数或者init函数一定要对所有变量进行初始化,析构函数一定要
对所有的变量析构掉,而不要假设这个不析构,那个不初始化应该没什么事情!!
阅读(1599) | 评论(0) | 转发(0) |