一些阶段性目标:
-
参照网上查到的博客和文档,先列出大纲以及制定学习计划
大概以下五个主题的内容: -
Python 标准库
- Tornado
- Redis
- RabbitMQ (pika)
-
MySQL (SQLAlchemy/pymysql)
-
如果资源方面允许,可以实现一个内部系统开发,进行编码和设计方面的指导 - 阅读项目文档,理解邮件和短信的处理流程,项目结构,以及每个项目的核心逻辑
- 给定一个周边项目进行开发维护,小任务开发(Code Review)
- 从写文档和单元测试开始,逐渐参与核心项目的开发和维护
其他:Linux 基础,Git,我们的开发流程和规范
标准库
- 常用基础库: os, sys, shutil, re, time, datetime, ramdom, json, pickle ...
- 日志: logging
- HTTP 相关: urllib, http
- 邮件相关: email, smtplib, smtpd
- 编码和加密相关: md5, sha, base64, hmac, binascii
- 单元测试: unitest 非常重要
Tornado
- Web 框架先走起来
- 基本用法,比如
add_timeout
,call_later
,add_callback
... - 了解 IOLoop/IOStream
- 项目开发过程中的一些实践
Redis
- 安装
redis-cli
- 数据类型
- 命令清单
redis
库
RabbitMQ
- 基本概念 (Exchange / Queue / Binding / Channel / Connection)
- 安装和使用
pika
库- 发布/订阅 (生产, 消费)
MySQL
- 数据类型
- 连接
- 索引
pymysql
/mysqlclient
库- SQLAlchemy