课程大纲
以下内容较为丰富,实际讲解深度与覆盖,会根据现场大部分学员的经验和水平进行适当的调整:
1. 环境安装准备:
a) Python和Virtualenv
b) 依赖库
c) IPython Notebook
2. Python 3核心变化
a) 基础变化: 变长解包、内置函数等
b) 字符串与类变化:Unicode、新类、魔法方法、格式化字符串等
c) 函数变化:限定关键字、标注、nolocal等
d) 模块与异常变化:模块导入、异常链等
3. 核心语法与原理 (含Py3变化)
a) With 语法
b) 迭代器原理
c) 生成器
d) 装饰器
e) 修饰符
f) 有用的魔法方法
4. 函数式设计模式
a) 函数重载与多路分派
b) 函数式:map、reduce、filter
c) 函数式:不可变对象
d) 函数式:高阶函数(函数式)
e) 函数式:Memorization
f) 函数式:Partial
5. 经典设计模式
a) 工厂方法
b) 单例模式
c) 原型
d) 装饰器
e) 迭代器与常见库
f) 代理器(Proxy)
g) 模板方法
h) 策略
i) 观察者
6. 并发技术
a) Python GIL
b) Python多线程
c) Python多进程
d) 锁、重入锁、队列
e) 跨进程数据交互
7. 并发模式:
a) Promise
b) 条件变量
c) 消费者生产者模式
d) 线程池
e) 执行服务(executor service)
8. 单元集成测试
a) doctest
b) unittest
c) 测试用例设计技巧
d) mock与实践
e) pytest
f) coverage
9. 诊断测量(部分可选)
a) stacktrace
b) RemoteDebug
c) Memory Profiling
d) objgraph
e) line_profiler
f) memory_profiler
g) profiler
h) Yappi