程序员必备技能——怎样快速接手一个项目

做为一个程序员,咱们不多能从头至尾参与一个新项目的开发。若是你常常开发的是新项目,那你真是太幸福了。git

更多的状况是半路进入一个项目组进行开发,或者是有其余同事离职了,以前由他维护的系统转交给你维护。程序员

还有一种状况就是领导不知道从哪里弄过来一个系统和一堆文档,而后就直接就把系统交给你了维护了。数据库

遇到以上几种状况咱们怎样才能快速熟悉上手项目,应对生产问题呢?下面是我本身在工做中的一点总结,但愿能对你们有所帮助。svn

资料要要全

当你接手一个新项目(别人的项目)的时候,你要第一时间向把项目移交给你的人要到全部的资料。由于在这以后,这个同事可能就会离职了,到时再要什么文档就不太方便了。通常状况下,你须要拿到这些资料:加密

  • 项目代码的地址(svn地址或者是git地址);
  • 系统部署的Linux机器地址,登录的用户名和密码(方便登录上去看看机器的运行情况)
  • 数据库地址/用户名/密码(不要觉得全部项目中都会有用户名密码,有些项目会将用户名密码加密)
  • 系统的登录用户/密码(若是系统有页面,将能够登录的用户要一个,不用本身再造用户了)
  • 其余中间件地址(MQ、Redis等)
  • 需求文档
  • 接口文档
  • 其余全部资料(上面的文档时必须的,若是除此以外还能拿到其余文档,均可以保存下来)

技术栈要看懂

拿到文档资料后,我我的的经验是先要快速浏览下文档,不须要看清文档的每一个段落,可是咱们要经过略读文档知道这个系统大概是干什么的,有哪些功能。这点对咱们后续看代码帮助很大。debug

熟悉项目技术栈

快速浏览完文档以后,咱们就要开始看代码了。这个阶段,你须要能将代码在本地跑起来,知道这个项目运用了哪些技术栈,每一个技术栈的做用是什么。设计

熟悉上下游系统

搞清楚了上下游系统,咱们就知道了谁调用了咱们系统,或是咱们的系统调用了谁,查起问题来也能有的放矢。3d

知道去哪里查日志

日志是查线上问题的关键,必需要知道怎么查日志,去哪里查日志。日志

知道怎么打包

接了新需求或者改了Bug以后你确定要发布吧,那你必需要知道这个怎么打包部署。中间件

知道怎么部署

同上

熟悉业务代码

到了最关键的一步了,可是对于这步我以为不一样的系统咱们能够区别对待下。有的系统咱们接手过来是要在此基础上长期开发维护的,那这种系统就须要咱们好好梳理下业务。

可是有的系统比较稳定了,也不会再加什么新功能,对于这种系统要不要深刻研究就须要咱们本身权衡了。由于时间成本上可能划不来。

下面是我熟悉业务的通常流程:

  • step1:在看业务代码以前,首先须要看完数据库的表设计,否则会不知所云。

  • step2:而后就是梳理各个接口了,通常是各个Controller(通常系统功能都是经过Controller暴露出去的),若是你能每一个接口跟进去debug一遍,整个调用流程都梳理清楚,那么这个业务你就梳理清楚了(这步最好根据接口文档来梳理)

  • step3:固然,系统的功能不都是由Controller提供的,有的是经过定时任务来触发的,因此你要看看系统中配置了哪些定时任务,都实现哪些功能;

  • step4:还有的功能是经过消费MQ触发的,因此也要看看有没MQ相关的交互;

  • step5:相似其余的交互

关于熟悉业务代码这块可能没有太通用的方法,仍是须要你们本身总结。

相关文章
相关标签/搜索