今早想了一下,该怎么快速的上手一个项目,想多少就写了多少。
答:
一,基本步骤(步骤顺序可以没有那么严格):
(1)了解项目的架构,分为哪些模块。
(2)熟悉用户角度的业务逻辑。做软件要深入的知道怎么用,做游戏要深入的会玩。
(3)了解各模块与数据存放位置的对应关系,比如哪几个模块访问redis,哪几个模块访问和共用哪个mysql。哪几个模块访问和共用某个磁盘。
(4)将整个项目要跑起来,能运行,能调试。这一点很重要。
有些公司让你做事不给权限,或者搞网络限制虚化机等导致环境太差,跑起来太困难。就知道一味的催进度,不注重解决实际问题,询问解决问题的办法,就说给了你工资你自己去解决,现在想来,像这种公司正确的做法应该短时间内就离职。
(5)找到各个模块间交互的协议或者交互的入口函数,回调函数。
(6)先选择两个简单的基本功能,打断点跑一下,看一下该功能有哪些数据,从哪个模块流到哪个模块。
(7)最好能画一下(6)中简单功能的模块交互时的状态变换图,数据流向图。
(8)着重看一些重点的,难以理解的数据结构。
二,执行上面步骤时需要的技巧:
(1)每一步都要做笔记,笔记可以随意,但要描述完整。做笔记写完整,一方面是看自己是否真的理解了,另一方面强化记忆,第三重要才是方便今后回来查阅和复习。
(2)可以询问熟悉该项目的同事。
(3)以上步骤并不严格按顺序执行,某些步骤因为困难没执行,或只执行了部分,可跳过,执行了的再回来看,说不定就看懂了。