《Django源码解析》视频课程目录 by the5fire
更新进度,完成 * 以下是全部课程目录:
- 前言 - 开篇词
 第一章 Django结构概览
- 第一节 功能概览
 - 第二节 搭建源码阅读环境
 - 第三节 源码目录大体结构介绍
 
第二章 安装和创建Django项目
- 第一节 安装时发生了什么
 - 第二节 如何做到创建项目
 - 2.2.1 创建Project
 - 第三节 complete
 
第三章 初步进入Django世界
- 第一节 ./manage.py的作用
 - 第二节 runserver时发生了什么
 - 3.2.1 环境变量设置
 - 3.2.2 settings中的那些依赖
 - 3.2.3 这是个全局的settings?
 - 第三节 不同参数下runserver的行为
 - 3.3.1 autoreload
 - 3.3.2 multiple Threads
 - 3.3.3 Single Thread
 - 第四节 当用户的请求来临
 - 3.4.1 HTTP协议的转换
 - 3.4.2 初始的首页请求
 
第四章 编写我们的App
- 第一节 Django怎么知道我们写了App?
 - 4.1.1 创建App逻辑
 - 4.1.2 加载所有App
 - 4.1.3 加载所有的Model
 - 第二节 喂,你写了Model但没创建表
 - 4.2.1 创建我们的Model
 - 4.2.2 创建migrations文件
 - 第三节 URL Dispatch
 - 4.3.1 重要的URL中转站——URLResolver
 - 4.3.2 如何获取到对应http request的方法
 - 4.3.3 reverse解耦的实现逻辑
 - 第四节 自动发现你的admin
 
第五章 模板专题 - inside Django Template
- 第一节 什么是模板引擎
 - 第二节 Tornado模板引擎
 - 第三节 Django模板引擎基础逻辑
 - 第四节 Django模板引擎整体流程
 
第六章 Form专题 - inside Django Form
- 第一节 如何实现一个 Form
 - 第二节 Django Form 源码阅读
 
第七章 ORM专题- inside Django ORM
- 第一节 Django ORM 概览
 - 第二节 Django ORM 源码概览
 - 第三节 一次 Save 的原理
 - 第四节 数据库连接详解
 - 第五节 一次查询的过程——all()、filter、select_related
 
第八章 Signal专题-解耦
- 第一节 Signal 使用
 - 第二节 观察者模式
 - 第三节 Signal 实现原理
 
第九章 专题 - Cache
- 第一节 不同层级的 Cache 及源码
 
第十章 用户相关专题 - User、Auth和Session
- 第一节 你是谁?
 - 第二节 User or Anonymous and Register
 - 第三节 权限原理
 - 第四节 权限部分后台实现
 
第十一章 解构Admin之ModelAdmin
- 第一节 自动发现admin
 - 第二节 CRUD界面的实现
 
- 第十二章 最终总结
- 阅读源码不易,且看且珍惜 ^.^
 
 
以下是草稿部分
更新进度:第五章
原则:从实际用处着手,逐步深入
整体思路:从认识框架、安装框架、使用框架开发项目、到项目最终上线被用户访问的思路来分析源码。
目标读者:
- 能够使用Django开发项目,想要更深入的了解Django内部原理
 - 已经开始尝试翻源码,希望找个人一起交流
 - 想要通过学习Django源码,写出更好代码
 
注意事项:
本套视频的更新频率为周更,每次更新两三节内容(每节控制在30分钟左右)
- [前言 - 开篇词]
 - [第一章 Django结构概览]
- [第一节 功能概览]
 - [第二节 整体结构梳理]
 - [第三节 源码目录结构介绍]
 
 - [第二章 安装和创建Django项目]
- [第一节 安装时发生了什么]
 - [第二节 如何做到创建项目]
- 2.2.1 创建Project
 
 
 [第三章 初步进入Django世界]
- [第一节 ./manage.py的作用]
 - [第二节 runserver时发生了什么]
- 3.2.1 环境变量设置
 - 3.2.2 settings中的那些依赖
 - 3.2.3 这是个全局的settings?
 
 - [第三节 不同参数下runserver的行为]
- 3.3.1 autoreload
 - 3.3.2 multiple Threads
 - 3.3.3 Single Thread
 
 - [第四节 当用户的请求来临]
- 3.4.1 HTTP协议的转换
 - 3.4.2 初始的首页请求
 
 
[第四章 编写我们的App]
- [第一节 Django怎么知道我们写了App?]
- 4.1.1 创建App逻辑
 - 4.1.2 App目录详解
 
 - [第二节 App的加载逻辑]
 - [第三节 URL Dispatch]
 - [第四节 喂,你写了Model但没创建表]
 - [第五节 自动发现你的admin]
 
- [第一节 Django怎么知道我们写了App?]
 [第五章 模板专题]
- [第一节 什么是模板引擎]
 - [第二节 解读Tornado模板引擎]
 - [第三节 Django模板引擎基础逻辑]
 
[第六章 解构Admin之ModelAdmin]
- [第一节 ModelAdmin的组成]
 - [第二节 meta class的作用]
 - [第三节 自动实现的增加页面]
 - [第四节 自动实现的删除页面]
 - [第五节 自动实现的列表页面]
 
[第七章 从一个完整的App实现来看]
- [第一节 编写完整的App实现]
- function view
 - Class-based View
 - Form
 - Middleware
 - Template
 
 - [第二节 Middleware的实现]
 - [第三节 URL Dispatch详解]
 - [第四节 一个GET请求的处理]
 - [第五节 一个POST请求的处理]
 
- [第一节 编写完整的App实现]
 [第八章 专题-模板]
- [第一节 你知道有多少种模板引擎吗]
 - [第二节 ]
 - [第三节 ]
 - [第四节 ]
 
[第九章 专题-ORM之Model]
- [第一节 一个ORM实现涉及的模块]
 - [第二节 从Field说起]
 - [第三节 再看对应的Widget]
 - [第三节 合成到Model中]
 
[第十章 专题-ORM之Manager]
- [第一节 Manager or QuerySet?]
 - [第二节 从Model到Table]
 - [第三节 多DB引擎的实现逻辑]
 
[第十一章 专题 - User、Auth和Session]
- [第一节 你是谁?我是谁?]
 - [第二节 User or Anonymous and Password]
 - [第三节 我给你光,你才能有光]
 - [第四节 谁还没个后台,要你给光]
 
[第十二章 专题 - Cache]
- [第一节 统一的接口,统一的味道]
 
[第十三章 专题 - 存储]
- [第一节 二进制的砖头可不能乱放]
 
[第十四章 最终总结]
以上就是暂定大纲,其实可以分为上下两部分,上部从实际入手到源码,下部专题分析核心模块。 如果你对大纲有任何建议都欢迎与the5fire交流(QQ:304060162)。

微信公众号:Python程序员杂谈
