如果是小项目 / 单文件

1. 看程序入口

2. 看主流程

3. 再看具体函数实现

4. 最后看细节

如果是大型项目(重点)

正确顺序应该是:

🔹 第一步:看整体结构

  1. 项目目录结构
  2. 模块划分
  3. 依赖关系
  4. README
  5. 配置文件

理解:

  1. 这个项目是干什么的?
  2. 核心模块在哪?
  3. 入口在哪?

🔹 第二步:找到入口

不同语言入口不同:

语言	入口
Python	main / app.py
Java	main()
C/C++	main()
前端	index.js / main.js
SpringBoot	@SpringBootApplication
Node	server.js

🔹 第三步:画调用链

比如:

isbl main() ├── init() ├── load_config() └── start_server()

      ├── route_a()
      └── route_b()

👉 你要搞清楚的是 调用流程

而不是细节。

🔹 第四步:看核心逻辑

不要一开始钻算法细节。

先问自己:

  1. 数据从哪里来?
  2. 数据怎么流动?
  3. 数据怎么被处理?
  4. 最终输出是什么?

这叫:

✅ 数据流思维

🔹 第五步:最后才看难点函数

比如:

  1. 复杂算法
  2. 递归
  3. 多线程
  4. 网络逻辑

二、怎么做代码笔记(非常关键)

代码笔记不能写成“代码翻译”。

❌ 错误方式:

第10行:定义了一个变量x

第11行:x加1

第12行:输出x

这种没意义。

✅ 正确做代码笔记的方法

我推荐 4 层笔记法:

🧠 第一层:一句话总结模块 例如:

auth.py:负责用户认证

db.py:数据库操作封装

router.py:接口路由

🧠 第二层:核心流程图(文字版) 例如:

用户登录流程:

前端提交账号密码 ↓ 后端验证 ↓ 查询数据库 ↓ 生成token ↓ 返回前端

🧠 第三层:关键函数说明

格式建议:

函数名:login(user, password)

作用:

  验证用户并生成token

输入:

  user: 用户名
  password: 密码

输出:

  token字符串

关键逻辑:

  1. 查询数据库
  2. 比对密码
  3. JWT生成

🧠 第四层:不懂点记录

专门记录:

不懂:

- JWT加密机制
- 为什么这里要加锁?
- 线程池怎么管理?

然后单独研究。