proj misc
=======2016.2.19=======
1. 对于数据统计, 分钟级别记录一次统计数据(可以按规定的格式写入文件), 然后支持图形化显示供方便查看;
至于秒级别的统计数据,比如开服初期每N秒的新增tcp连接数,新增tcp断开数,新增/减少的在线数,网络收/发量, 一般就不要记录到文件了(否则记录太多,文件太大),写一个小型工具,支持打印到控制台查看(纯文本显示)即可, 类似top, etop;
btw,直接用etop还是不太方便,需要封装下,便于使用。
2. 让code review成为团队的开发过程中的习惯(考虑每周固定时间举行一到两次)。
3. 培养团队意识,写足够的单元测试以及联合测试,并且尽量支持自动化。
4. 强化代码复用,“引擎”化(跨项目复用)的意识,并落实。
======= 2016.3.1========
虽然说敏捷一点也没错,有些重构或模块细分,非不必要,也不需太早就去做。
但是,不能把敏捷作为懒惰的借口,一开始就考虑充分点,做好设计和模块划分,很多时候,这不是杞人忧天或过度工程,而是未雨绸缪和保留退路。
############################
##### coding memo #####
1. 类似get, lookup, find等操作函数,如果找不到数据或数据不存在,则统一返回NONEXIST或NODATA宏。
-define(NONEXIST, '__nonexist__').
-define(NODATA, '__no_data__').
ps: 为什么不统一返回null? 因为可能null也是一个合法的数据,尽管这种情况较少。 当然,一般情况,尽量不要用null来初始化变量!