接手老项目的方法总结

近期离职同事较多,且老项目也经常出现问题,需要接手的项目和阅读的代码也比较多,这里总结一下遇到的问题,以及一些方法。 

问题

一开始就往代码细节上钻

 

越是复杂的项目,这样做越是悲剧,你可能花费大量时间从代码上层层往下钻,结果却发现对于整体的功能根本无法掌握,最后迷失在源码中,给自己带来压力。
因为复杂的项目,涉及的业务和逻辑很多,相互之间存在关联关系,仅仅靠代码上去阅读,效率是很低的,而且有些和具体业务结合的代码逻辑,你可能很难了解,即使看懂代码片段的功能,也不知道为什么要这样设计。
记住:项目不是一个点,而是一个相互关联的面。

不做笔记,不写测试脚本

我自己很难看过一遍就记住,往往当时理解了,但是过几天就忘记了,后面需要调试时,又得重新做一遍前面的工作,费事又费力。
笔记和测试脚本,是一劳永逸的工作,其作用随着时间,越来越大。

急于求成

总想着很短时间就完全掌握,结果没有把握住细节,看似都知道了,真正遇到问题却发现还是无法解决。

 

方法

第一步,先用产品

亲自使用产品,多问问产品经理,这是了解项目的第一步

复杂的项目,先从目的和设计入手

这些内容相当于路标和线,能在大方向上给你指明道路,并帮你将代码片段串联起来。
越是复杂的项目,其目的和设计占的比重越是重要。

掌握名词的概念

特别是开发人员在开发过程中确定的一些名词,这有助于阅读代码,将其和具体功能联系起来。

优先了解数据流

大部分项目,数据都是核心,特别是外部接口,尤为重要

通过单元测试,将复杂项目拆分简化

项目难,往往是因为不了解,看着一大堆东西,心理上首先就有压力。
可以通过细致的单元测试进行拆分,一方面有助于理解项目,另外以后出问题了,这些单元测试还可以用于调试。

编写文档

如果项目没有文档,或者文档不够完善,那么一定要自己补上,今后你肯定会再次用到的。
编写文字不像说话,耗费的时间会多一些,在打字的过程中,你会花费心思去组织语言和思考,这会让你发现更多的问题(就像我平时不善言谈,但是QQ聊天就比较能说,因为打字能给我思考的时间)。

循序渐进,注意复习

除非很紧急,否则建议每天了解一些,然后每天思考一下,会发现更多的问题,同时一段持续时间的学习,相当于有个复习的过程,能够帮你巩固这些内容,否则很快就忘记了。

修改代码,查看输出

这仅限于接口类代码,不适合整个项目

编写记录日志的函数

在接口类功能的调试中,非常有帮助

一个好用的文件查找工具

EditPlus的搜索功能很不错

你可能感兴趣的:(总结)