考虑改动影响,为空判断以及高价值事情
1. map和mapRet搞混了;导致最后在处理返回值的时候,返回的类型怎么都不对;
2. cs应该在第一次实例化的时候,放入到Map以及List里面;
3. 修改思路,将cs初始化实例的时候同时放入到mapRet和list里面;但是之前的腐败的代码:最后遍历mapRet中的对象放入到ret里面,并没有删除;
4. field获取注解可能为空,这个场景没有做判断;
这几个Bug说明了什么?
开发是一件需要仪式感的事情,我是说要心中存有敬意,什么叫敬意?敬意是需要一系列的思维方式做支撑,在开发的时候,你要对于你的实现的逻辑十分清晰,在实现的过程中你要对于使用的每个变量心知肚明;而且规范性要做好,对于第一个问题,map和mapret的变量搞混,说明两个问题:第一个就是你在开发的时候头脑没有行程清晰地变量列表、地图;第二个就是你的变量的命名,无法清晰地把这两个变量区分开来;
对于第二个问题,我觉得还是没有形成清晰地思路。
对于第三个问题,就是对于修改点所引起的改动没有做充分的考虑,直接就是干,要知道,干这个是个体力活,真正有件事情是思考,尽管“干”更容易让人体验到成就感,即时反馈的快感,但是这个恰恰是他的价值低廉的地方;高价值的人从来都是把时间花在高价值的地方,这样你的积累才是这些高价值的东西。
对于第四个问题,常规的处理机制要对参数,对过程参数做非空判断,每次当你使用的时候,都要形成一种警戒,这个对象是否为null,为null是否有影响,是否需要处理。