《Python全栈开发指南》第3版 Alex著(LFXC2018)

时间:2023-03-08 21:44:22

第一章 Python基础——Python介绍&循环语句

  • 1.1 编程语言介绍
  • 1.2 Python介绍
  • 1.3 Python安装
  • 1.4 第一个Python程序
  • 1.5 变量
  • 1.6 程序交互
  • 1.7 基本数据类型
  • 1.8 格式化输出
  • 1.9 基本数据类型
  • 1.10 流程控制之 if...else
  • 1.11 流程控制之循环
  • 1.12 开发工具IDE
  • 1.13 本章小结

第二章 Python基础—-Python数据类型

  • 2.1 变量及身份运算补充
  • 2.2 二进制
  • 2.3 字符编码
  • 2.4 基本数据类型-数字
  • 2.5 基本数据类型-字符串
  • 2.6 基本数据类型-列表
  • 2.7 基本数据类型-元组
  • 2.8 可变、不可变数据类型和HASH
  • 2.9 基本数据类型-字典
  • 2.10 基本数据类型-集合
  • 2.11 collections
  • 2.12 本章小结

第三章 Python基础-文件操作&函数

  • 3.1 三元运算
  • 3.2 字符编码
  • 3.3 文件处理
  • 3.4 函数
  • 3.5 函数进阶
  • 3.6 生成器&迭代器
  • 3.7 本章小结

第四章 Python基础-常用模块

  • 4.1 模块、包介绍和相关语法
  • 4.2 time&datetime模块
  • 4.3 random模块
  • 4.4 os模块
  • 4.5 sys模块
  • 4.6 shutil模块
  • 4.7 json&pickle模块
  • 4.8 shelve模块
  • 4.9 xml模块
  • 4.10 configparser模块
  • 4.11 hashlib模块
  • 4.12 subprocess模块
  • 4.13 logging模块
  • 4.14 re模块
  • 4.15 软件开发目录规范
  • 4.16 本章小结

第五章 面向对象编程设计与开发

  • 5.1 什么是面向对象的程序设计
  • 5.2 类与对象
  • 5.3 属性查找与绑定方法
  • 5.4 小结
  • 5.5 继承与派生
  • 5.6 组合
  • 5.7 抽象类
  • 5.8 多态与多态性
  • 5.9 封装
  • 5.10 绑定方法与非绑定方法
  • 5.11 内置方法
  • 5.12 元类
  • 5.13 面向对象的软件开发
  • 5.14 领域模型
  • 5.15 本章小结

第六章 网络编程-socket开发

  • 6.1 C/S架构介绍
  • 6.2 TCP/IP各层详解
  • 6.3 SOCKET介绍
  • 6.4 SOCKET代码实例
  • 6.5 粘包现象与解决方案
  • 6.6 通过SOCKET发送文件
  • 6.7 本章总结

第七章 并发编程

  • 7.1 操作系统介绍
  • 7.2 进程理论
  • 7.3 开启进程的两种方式
  • 7.4 join方法
  • 7.5 守护进程
  • 7.6 互斥锁
  • 7.7 队列
  • 7.8 生产者消费模型
  • 7.9 线程理论
  • 7.10 开启线程的两种方式
  • 7.11 多线程与多进程的区别
  • 7.12 Thread对象的其他属性和方法
  • 7.13 守护线程
  • 7.14 GIL全局解释锁
  • 7.15 死锁现象与递归锁
  • 7.16 信号量、event、定时器
  • 7.17 线程queue
  • 7.18 线程池与进程池
  • 7.19 协程介绍
  • 7.20 greenlet模块
  • 7.21 gevent模块
  • 7.22 io模型介绍
  • 7.23 本章小结

第8章 线程、进程、IO多路复用

  • 8.1 线程与进程的区别及优缺点
  • 8.2 Python GIL全局解释器锁原理
  • 8.3 互斥锁、信号、事件、join、队列
  • 8.4 queqe实现线程间通信
  • 8.5 通过manger、管道实现进程间通信
  • 8.6 GIL、进程间通信、管道、队列
  • 8.7 生产者消费模型
  • 8.8 异步模型与事件驱动
  • 8.9 IO多路复用模型原理
  • 8.10 select、poll、epoll高性能IO模型源码实例解析
  • 8.11 实战案例:通过multiprocess+paramiko模块开发高并发远程主机批量命令执行+文件分发
  • 8.12 实战案例:通过select、selectors模块 实现基于IO多路的并发FTP程序

第9章 数据库开发

  • 9.1 数据库基本介绍、类型、特征介绍
  • 9.2 MySQL数据库安装、连接方式、启动、停止
  • 9.3 表字段类型、主键约束、表构建语句
  • 9.4 常用增删盖查语句、分组、聚合
  • 9.5 外键关联、unique字段、表结构修改语法
  • 9.6 跨表查询、inner、join、left join、right join、full join语法
  • 9.7 复杂sql语句如group by 、子查询、函数的使用
  • 9.8 索引原理及作用、普通索引、多列索引、唯一索引、全文索引等

第10章 HTML、CSS、JavaScript

  • 10.1 HTTP协议原理及HTML介绍
  • 10.2 HTML标签纸html、meta、div、span、a、img、input、pre等使用
  • 10.3 select、form、textarea、input系列表单的使用
  • 10.4 列表、超链接、表格、表单元素的使用
  • 10.5 CSS的基本概念及语法
  • 10.6 CSS选择器类型及优先级
  • 10.7 伪类选择器
  • 10.8在HTML中使用CSS的方法
  • 10.9 文字、段落属性、背景属性、列表属性、布局属性
  • 10.10 display与overflow属性的应用及定位
  • 10.11 掌握定位属性的方向值有运用规范
  • 10.12 掌握定位属性的方向值有运用规范
  • 10.13 掌握z-index空间位置的运用规范
  • 10.14 Javascript概述及组成
  • 10.15 JS引用、变量、typeof、数据类型、表达式、运算符讲解
  • 10.16 流程控制之if、switch、for、跳转、while语句的使用
  • 10.17 函数、参数、局部变量、数组及遍历方式

第11章 DOM、JQuery、Bootstrap

  • 11.1 DOM概念、节点、文档写入
  • 11.2 查找元素的各种方法
  • 11.3 节点遍历的各种方式
  • 11.4 window对象操作、全局作用域、location对象、navigator对象、screen及history对象讲解
  • 11.5 事件对象、鼠标、键盘、表单实例讲解
  • 11.6 DOM0级、DOM2级事件处理、事件冒泡、阻止事件传递、碰撞检测
  • 11.7 面向对象、继承、封装、多态、构造函数
  • 11.8 作用域、闭包、原型
  • 11.9 实战案例:购物商城开发、实现商品浏览、选择商品、加入购物车等功能
  • 11.10 jQuery介绍与入门
  • 11.11 jQuery选择器
  • 11.12 jQuery筛选器
  • 11.13 jQuery属性、文档、样式、拓展、事件、动画
  • 11.14 实战案例:加载、删除对话框
  • 11.15 实战案例:单行编辑框
  • 11.16 实战案例:全选、反选及取消
  • 11.17 实战案例:左侧菜单
  • 11.18 实战案例:Tab菜单
  • 11.19 实战案例:滚动菜单
  • 11.20 实战案例:返回顶部
  • 11.21 实战案例:点赞+1 效果
  • 11.22 实战案例:跑马灯
  • 11.23 实战案例:多行文本编辑
  • 11.24 实战案例:轮播图
  • 11.25 Bootstrap框架学习
  • 11.26 响应式布局学习
  • 11.27 实战案例:抽屉新热榜开发、实现登录注册、发布文章、段子、图片、多级评论、点赞、即时聊天等功能

第12章 Django框架基础

  • 12.1 Web框架原理剖析
  • 12.2 Web请求生命周期剖析
  • 12.3 自行开发一个简单的web框架
  • MTV、MVC框架介绍
  • Django框架基本使用
  • 路由系统URL、精确、模糊匹配模式、URL分组
  • 视图views、Function、based、view、VS、Class、based、view
  • get、post请求方法分别处理
  • 通过Template模板语言返回动态数据到前端页面
  • template tags使用
  • HttpResponse、render、redirect等方法使用
  • Django orm介绍、models定义语法、各种sql增删改查语句使用
  • FK、M2M、OneToOne、CharField、IntegerField、DateFiled等字段讲解
  • 通过makemigrations、migare命令同步数据
  • 实战案例:图书管理系统开发

第13章 Django框架进阶

  • Django Cookie&Session
  • CSRF原理、csrf_token、XSS跨站攻击防护
  • 跨站请求伪造
  • 中间件原理、工作流程、自定义中间件
  • Django paginator分页功能、自定义开发分页功能
  • cache缓存系统、cache的作用及使用
  • 信号事件、通过给modles绑定信号来监测数据库改动
  • message组件,通过message实现在前端页面显示消息提示
  • 自定义用户认证系统
  • 实战案例:校花投票系统开发
  • 实战案例:问卷调查系统开发

第14章 项目实战:BBS论坛项目开发

  • 通过Django+Bootstrap 设计响应式布局
  • 开发基于Django的自定义用户认证
  • 开发多个论坛版块
  • 允许用户发帖、评论、点赞、收藏、帖子分页
  • 评论可多级展示、帖子置顶、头像更换
  • 支持文件上传下载

第15章 Redis\RabbitMQ\Celery等企业常用组件

  • Memcache缓存系统
  • Redis缓存系统使用
  • Redis支持的str、list、set、hash等类型讲解
  • 如何利用bitcount以最节省空间的方式统计网站当前在线用户
  • 如何通过Redis订阅发布功能实现批量任务处理
  • RabbitMQ队列原理、特性、安装配置
  • RabbitMQ队列原理、特性、安装配置
  • RabbitMQ1对1队列、fanout、direct、topic模式实例讲解
  • RabbitMQ Exchange各种参数配置
  • 实战案例:通过RabbitMQ实现RPC通信
  • Celery分布式队列原理、安装配置
  • 实战案例:通过Celery实现简单的任务负载均衡
  • 基于Django-beat+celery实现任务的web可视化配置

第16章 轻量级Flask框架

  • Werkzeug服务介绍
  • Flask框架介绍、我
  • 路由系统、自定义路由扩展
  • Session、Cookie
  • Http请求和响应
  • 蓝图
  • 消息闪现
  • 中间件
  • Flask常用拓展
  • WTForms
  • 使用SQLAchemy ORM
  • Admin
  • Restful
  • 自定义扩展

第17章 项目实战:基于Tornado框架开发高并发Web聊天软件

  • Tornado快速上手
  • 路由系统
  • RequestHandler
  • 模板语言
  • Cookie和安全Cookie
  • 跨站伪造请求的防范
  • 静态文件和主动式文件缓存
  • 本地化
  • 非阻塞式异步请求
  • 源码剖析(一):一个脚本引发的血案
  • 源码剖析(二):待请求阶段
  • 源码剖析(三):请求处理全过程
  • 实战案例:Web聊天软件开发、支持实现多用户在线、1对1、1对多聊天等功能

第18章 项目实战:Restful API框架

  • REST框架介绍
  • RESTful API设计规范
  • DjangoRestFramework框架基本配置
  • 序列化\viewset\url配置
  • 基于Session、Oaauth进行用户认证
  • 权限和授权
  • 请求验证
  • 各种status code
  • fiiler过滤器
  • FlaskRestful

第19章 项目实战:爬虫开发课程

  • 爬虫实现原理
  • request模块学习及常用参数介绍
  • request模块session使用
  • 实战案例:自动登录抽屉新热榜并对新闻点赞
  • 实战案例:自动登录GitHub
  • 实战案例:爬去汽车之家新闻页面
  • BeautifulSoup模块学习
  • 实战案例:破解Web微信,通过爬虫登录微信,实现更换头像,获取联系人列表,给好友发送消息等功能
  • 高性能IO相关模块:asyncio、aiohttp、Twisted学习
  • 利用gevent协程模块自定义开发一个高并发异步非阻塞的爬虫框架
  • Selenium自动化测试框架入门
  • PhantomJS快速上手
  • 图片滑动验证码实现原理剖析
  • 实战案例:通过Selenium+Phantom破解滑动验证码
  • Scrapy框架介绍
  • Scrapy程序创建及运行
  • Scrapy基本使用及选择器、url学习
  • 通过Scrapy发送post、get请求
  • Scrapy自定义去重规则
  • Scrapy持久化至pipeline
  • Scrapy基于下载中间件实现原理
  • Scrapy定制https证书
  • 实战案例:通过Scrapy登录拉勾网获取职位信息,并实现自动简历投递

第20章 企业开发应用工具

  • 互联网企业专业开发流程讲解及实例
  • git、github协作开发工具讲解
  • jirabug、任务管理系统讲解
  • 接口测试、单元测试、自动化测试相关工具介绍
  • 敏捷开发与持续集成介绍
  • 持续集成工具jekins介绍
  • Nginx高性能Web框架介绍、安装、配置
  • 通过Django+uwsgi+nginx在生产环境部署实现支持大并发请求
  • 配置Django settings文件、使其可自动适应dev、stage、production环境的不同
  • api接口文档编写实例
  • 如何通过CDN技术实现全球各地访问网站速度加快
  • 互联网企业大型项目架构图深度讲解

第21章 项目实战:CRM项目实战

  • CRM项目需求分析和讨论
  • CRM产品原型图设计
  • CRM项目表结构设计
  • 讲师角色:可创建每节上课记录、管理班级、在线店名、批复作业、查看成绩
  • 学员角色:可在线提交作业、查看成绩、合同、推荐学员、在线成绩、下载课件
  • 销售角色:可创建客户、跟踪客户记录、在线办理报名手续、查看销售报表
  • 管理员角色:可创建课程、校区、创建账户、创建调查问卷、查看问卷报告
  • 实现不同的角色拥有不同的权限
  • 细致的权限划分、可以将权限控制到是否允许一按键就可以点击的级别
  • 确保权限框架的通用性、使其能轻易迁移到其他项目
  • 开发类似DjangoAdmin一样的通用后台管理平台、并可以扩展至其他项目
  • 使用统一的界面模板、不同的角色动态生产业务菜单

第22章 前端框架VUE学习

  • 流行前端框架Vue、React、AngularJS介绍及对比
  • Vue架构剖析、mvvm开发思想
  • Vue数据绑定与计算属性、条件渲染
  • 类与样式绑定、表单控件绑定、事件绑定
  • webpack使用
  • vue-router使用
  • vuex单向数据流与应用结构
  • vuex actions与mutations热重载
  • 实战案例:vue单页面博客系统开发

第23章 项目实战:路飞学城项目开发

  • 路飞学城项目需求分析和讨论
  • 前后端分离相聚架构及表结构设计
  • 基于Django+Django-rest-framework+MySQL+Vue+Jekins开发部署
  • OAuth2 token认证,使用oauth2_provider 实现登录会话信息的保持
  • 采用rest_framework序列化以及自定义验证对请求数据合法性进行校验和认证
  • 滑动验证码使用geetest配置注册 防止频繁对发送验证码API的请求
  • 手机验证码服务API开发
  • 支持微信、QQ等第三方登录
  • API访问接口速率限制
  • 资讯点赞、点踩、收藏、更换头像、提问、评论等功能开发
  • 课程优惠券、通用优惠券、用户贝里支付策略
  • 支持支付宝、微信、银联支付
  • 开发在线看课程视频、倍速播放功能
  • 支持在线提交作业、在线课程练习功能
  • 定时任务:订单超过24小时未支付关闭,优惠券过期自动变更状态等
  • 学员未按时提交作业自动扣奖学金、导师未批复作业自动扣辅导费
  • 微信开发:针对关注微信服务号的学员,各种业务操作对用户进行微信通知等
  • 为学员、导师、管理员、班主任开发不通的界面、不同角色通过权限进行限制访问
  • 开发后台课程管理、会员管理、学员管理、导师管理、导师分配、订单管理、评论管理、作业管理等功能

第24章 常用算法&设计

  • 算法思想介绍
  • 算法时间复杂度、空间复杂度讲解
  • 排序LowB三人组之冒泡、选择排序、插入排序实例讲解
  • 排序牛B三人组快排、堆排序、归并排序实例讲解
  • 其他排序如折半、希尔排序、计数排序、基数排序实例讲解
  • 二叉树数据结构讲解、完全二叉树、链式存储、顺序存储、大顶堆、小顶堆讲解
  • 各种排序算法复杂度对比、优缺点
  • 算法常见面试题剖析
  • 常用数据结构散列、堆、栈、链表、二叉树讲解
  • 高级算法如动态规划、贪婪算法、分摊分析、矩阵运算、线性规划、最短路径等介绍
  • 设计模式介绍、作用、分类
  • 常见设计模式实例讲解、如工厂模式、单例模式、享元模式、代理模式、组合模式、观察者模式、策略模式、责任链模式、适配器模式等

第25章 项目实战:金融量化分析平台开发

  • 金融、股票知识入门
  • 股票基本概念、常见投资工具介绍、市场基本交易规划、A股构成等
  • K线、平均线、KDJ、MACD等各项技术指标分析
  • 股市操作模拟盘演示
  • 量化策略的开发流程
  • Python numpy模块学习
  • Python pandas模块学习
  • Python matplotlib模块学习
  • 在线量化投资平台:优矿、聚宽、米筐等介绍和使用
  • 常见量化策略学习、如平均线策略、因子选股策略、小市值策略、海龟交易法则、均值回归策略、动量策略、反转策略、羊驼交易法则、PEG策略等
  • 开发一个简单的量化策略交易平台、实现选股、择时、仓位管理、止盈止损、回测结果展示等功能

第26章 机器学习与数据分析实战

  • 机器学习介绍及基本概念
  • 可视化库Seaborn学习
  • 线性回归算法、梯度下载、逻辑回归算法原理
  • 机器学习常见流派
  • 实战案例:Python实现逻辑回归
  • 实战案例:Python分析科比生涯策略
  • 实战案例:信用卡欺诈检测
  • 随机森林与集成算法
  • 实战案例:泰坦尼克号获救预测
  • 自热语言识别、分析原理
  • 词向量模型word2vec
  • 剖析分类、聚类、决策树、回归及神经网络
  • 介绍训练集、测试集以及评价标准
  • Python机器学习常用库scikit-learn
  • 实战案例:电影票房预测:数据预处理、特征及模型选择、建立模型以及训练模型、模型评估与调参

第27章 图像识别入门

  • 图像识别知识脉络
  • Google TensorFlow介绍
  • TensorFlow基础操作
  • TensorFlow建立机器学习模型
  • TensorFlow神经网络详解
  • 基于TensorFlow的CNN与RNN的模型
  • Caffe两种常用数据源制作
  • OpenCV库详解
  • Halcon库详解
  • 区域生成法
  • ADAS算法
  • 实战案例:网站验证码自动识别
  • 实战案例:车牌自动提取和遮蔽

第28章 无人机开发入门

  • 飞行动力学知识普及
  • 机械知识普及
  • 飞行控制器设计
  • 控制器和无人机仿真测试
  • 传感器数据获取和平衡
  • 无人机垂直起飞和着陆哦(垂直起降)
  • PID计算基本原理
  • 蓝牙和无线通信
  • 实战案例:大疆无人机API和开发

第30章 项目实战:CMDB系统开发

  • ITIL规范介绍
  • 设计符合企业实际需求的CMDB表结构
  • 安全API接口开发与使用
  • 开发支持Windows和Linux平台的客户端
  • 硬件信息的自动收集、硬件信息变更后会自动在服务端同步更新记录变更事件
  • 对其他系统开放灵活的API
  • 设计与开发IT资产的上线、下线、变更流程
  • 开发报表功能、可按业务线、资产类型、资产状态等维度对IT资产进行分析并以图表形式展现

第31章 项目实战:审计&主机管理系统开发

  • 用户行为审计
  • 底层使用原声ssh、不牺牲ssh使用体验、对用户操作无任何影响
  • 支持对主机进行分组管理
  • 可为运维人员分配指定服务器、指定账号的操作权限
  • 用户登录堡垒后的所有操作均可被记录下来以供日后审计
  • 主机管理
  • 可对指定数量的机器进行批量命令、文件分发操作,可实时查看操作进度和结果
  • 计划任务
  • 可以定制计划任务、在指定时间单次或重复执行指定的任务,可以是批量更新,上下线、部署等
  • 可查看当前登录用户、近期用户操作命令分析、近期用户登录报表等

第32章 项目实战:分布式监控系统开发

  • 同一台主机监控多个服务、不同服务监控间隔不同
  • 监控多种设备
  • 批量监控主机
  • 设定告警级别
  • 不同服务设定不同告警级别
  • 不同告警、发送不同用户
  • 告警升级
  • 告警的自动恢复
  • 长期监控数据存储的优化
  • 监控数据前端画图实现
  • 基于http+restful架构开发、实现水平拓展,可轻松实现分布式监控

第33 章 Go语言基础

  • Golang的发展介绍
  • 开发环境搭建
  • golang和其他语言对比
  • 字符串讲解
  • 条件判断
  • 循环
  • 使用数组和map数据类型
  • go程序编译和Makefile
  • gofmt工具简介
  • godoc文档生成工具详解
  • 实战案例:斐波那契数列实现

第34 章 Go语言数据类型和文件IO操作

  • 数据和切片
  • make&new
  • go程序调试
  • sqlice&map排序
  • 常用标准库使用
  • 文件增删改查操作

第35章 函数和面向对象编程

  • struct定义与使用
  • struct与tag应用
  • 匿名字段和嵌套stuct
  • method定义与使用
  • mothod的访问控制
  • 函数和method的区别
  • 面向对象与继承
  • 实战案例:会飞的猪
  • 接口嵌套
  • 类型断言
  • type switch语法介绍
  • 空接口概念介绍
  • 反射概念
  • struct与反射
  • 面向对象与多态
  • 动态类型介绍
  • 实战案例:多态应用场景案例

第36章 Go语言并发编程

  • 并发、 并行与goroute
  • channel详解
  • goroute同步
  • channel、超时与定时器
  • reover捕获异常
  • Go高并发模型
  • Lazy生成器
  • 多路复用介绍
  • 并发数控制
  • 实战案例:并发编程实战
  • 实战案例:开发一个简单的高并发Web服务器