今天与几同事一起下班,刚出公司大门一同事半开玩笑说“你这么总那么忙,你应该向我徒弟好好学习,编码快问题又少”。尽管是一个句玩笑,却让我如梦苏醒。感谢这么这为同事,如果你看到这篇博客,就在心里默默笑一下吧,记得千万不要发出声哦 * _ * 。回想最近一周,确实每天过得忙忙碌碌,甚至上个周末六从早晨九点加班到晚上8点。本来周一晚上和教会兄弟姐妹一起学乐队知识的,已经连续都没有参加了。但结果了,今天测试功能时候,发现了好多问题,自己都有点不好意思。今天同事的提醒,现在认真思考下面两个问题:
1. 为什么总是忙忙碌碌?
2. 怎么向优秀的人学习,学习什么?
最近一周在基于原先系统框架开发一个功能。大概3天时候完成然后上线。当我看到需求时候我先大概花了一个小时分析下相关的功能模块,然后想到由于开发周期短,然后立即投入精力开始编码。大概花了1天班时间完成基本功能的开发。由于明天要上线,今天上午完成功能后自测1个小时后就转到测试人员。经测试人员测试,才发现了好多问题,许多细节都没有考虑到,现在总结一下做这个功能模块时会出现这个问题的原因:
一、太注重编码阶段,而忽略分析和设计阶段。
以前功能时候我都会先详细地分析每个需求,然后写成文档与直接上属讨论,请其进一步确认需求,看是否有理解的问题。如果没有问题后,我会花更多的时间去研究现有的系统和框架以及模块功能。对于一个入职不到一个月的新人,这个时间可能会花整个需求的三分之一时间,甚至会更多。但是这次由于考虑到功能比较简单,并且由于以前做过类似的模块,没有经过详细分析和设计,直接编码,导致在编写过程中,对于现有的js组件不熟悉,从而在修改其上面花费了好长时间,并且导致了代码的冗余,违背了同一个功能代码只在一处修改的原则。
二、过于依赖测试人员,而忽视自测的重要性
想到开发周期时间短,就想着基本功能实现,然后是测试人员的任务了。这种根深蒂固的开发人员思想导致今天一编码后就自测不到一个小时就提交给测试人员,结果测试出了好多低级的问题。在此对测试我代码的同事,表示深深的抱歉。也感谢你的细心工作。在工程发现那么多的问题。更重要的是让我思想上重视这个问题。此外,还要注意一点,当实现一个大功能时候,没完成一个小功能就要进行全面测试。比如添加功能,光不要看到一条数据添加成功就OK了,而是要从各方面进行测试,比如输入数据非法,字段范围,异常提醒等等。
三、过于注重重复率,修改原先的公用方法
这个是今天所犯的错误中最白痴的一个。今天遇到一个功能就是仅仅在原先的问题添加一个字段。由于在系统自动化测试过程中要考虑代码重复率。所以把系统中一个公用的js文件和另一模块主要类中的方法修改了。结果在执行自动化脚本时候出现自己修改的那个方法出错导致原先功能无法用。当时真是后悔死了。然后立刻改变思路,重载那个方法,保持原先的方法不变。最后在执行自动化测试时顺利通过。所以以后一定要铭记,代码开发过程中对修改时关闭的,对扩展是开放的。一定要注意开关这个原则,分清主次。
四、不要轻易地推卸责任和任务。
由于刚入职不到一个月,有些事情不太清楚。今天提交代码后第一次运行自动化脚本时候,发现结果失败,后来发现由于自己修改过程把数据库没有更新。由于不太清楚这个问题。当时和一位好心的同事还争辩,怪对方没有把数据库更新,现在想想,确实是自己的问题。在此以上帝的名义进行忏悔。以后一定要有颗细心而谦虚的心,特别是作为新人,不要和资历较深的同事不要争辩,少说多做。
五、依赖他人,忽视自己自己解决问题的能动性。
由于时间长了满满与同事熟悉了,有了问题自己不主动去寻找解决方案,而立即去问同事,导致耽搁同事的工作时间,同时影响人家的工作时间。并且培养了自己的懒惰的习惯。不动脑筋尝试自己去解决问题。所以这点一定要记着,以后一定先自己研究问题,无论从现有的系统还是网上,然后再请教别人。一天请教别人的次数不要超过五次。
此外,要慢慢地静下心,今天发现自己有个不好的问题,就是当面临很多问题,心里会很烦躁,不由在无形中与同事交流会声音放大。会让别人误认为训斥对方。现在要慢慢克制这个问题。
今天又是新的一天,走起,加油。