概览:
1.安装基本环境、跑通代码
2.看配置文件,了解所用技术和框架
3.根据项目文档,理解系统层次、模块划分
4.弄清系统增删改查、通信、用户交互实现方式。
最简单的方法是根据系统的分层,先从前端到数据库把代码疏通一下,搞不清楚的话打开debug模式一步一步走一下。
一、熟悉项目
1. 先搞清楚新的系统是搞什么的。
谁在用这个系统?
用这个系统做什么?
2. 系统分层、分模块是什么样的。
系统是怎么分层、分模块的?
每层、每个模块都用到了什么技术和框架,之间是怎么通信的?
有架构设计文档的话学习一下最好,没用过的技术先查查资料知道个大概。
4. 搭环境,跑代码,看流程
把开发环境搭起来,通过几个典型的功能弄清楚系统里面增删改查、通信、用户交互是怎么实现的。
最简单的方法是根据系统的分层,先从前端到数据库把代码疏通一下,搞不清楚的话打开debug模式一步一步走一下。
经过上面三个步骤基本上就可以改几个bug和照葫芦画瓢做个功能了。后面重点关注那些没用过的技术和组件:先搞清它的目的、背景、实现原理和功能列表,再照着文档做几个demo,平常工作时把它的文档建个快捷方式,随手查询学习一下。
二、理解系统核心
1,弄明白系统是什么(定位,以及对外提供的功能)
2,有文档就看系统的设计文档,弄明白系统的模块结构,理解系统是如何构成的。(如果没文档只好看代码目录结构了,然后试图通过模块间的接口梳理清楚模块关系)
3,看一下核心功能实现,理解整个功能流程是如何走通。
三、具体方法
仅从单个项目的角度而言,有两个思路:
- 按接口从上往下梳理
- 按数据库从下往上梳理
需要梳理的东西主要有两个:
- 类/方法/函数之间的调用关系
- 参数传递与变化
通过上面的方法基本能整理出一套从接口到各处理类/方法/函数再到数据库的逻辑链条,然后再具体看每个类/方法/函数的实现,基本就能快速上手了
常见问题
1.怎么可以快速了解项目中用了什么技术框架?
看配置。通看一遍配置文件,了解当前项目用了哪些框架,做到心中有数。
2.业务复杂繁多,怎样快速梳理?
了解各页面间的跳转及异步请求,写一个临时Filter,拦截/*的所有请求,在doFilter()方法中,打印出每次请求的路径( System.out.println(((HttpServletRequest) request).getServletPath()); ),根据每次跳转路径寻找对应的处理类,了解每一步的业务需求。
参考:
https://blog.csdn.net/qq_36610462/article/details/83105376
https://www.cnblogs.com/anranwuse/p/3700036.html