𝔖 Scriptorium
✦   LIBER   ✦

📁

Python高效开发实战——Django、Tornado、Flask、Twisted

✍ Scribed by 刘长龙


Publisher
电子工业出版社
Year
2016
Tongue
Chinese
Leaves
516
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


也许你听说过全栈工程师,他们善于设计系统架构,精通数据库建模、通用网络协议、后端并发处理、前端界面设计,在学术研究或工程项目上能独当一面。通过对Python及其周边Web框架的学习和实践,你就可以成为这样的全能型人才。 本书分为3部分:第1部分是基础篇,带领初学者实践Python开发环境和掌握基本语法,同时对网络协议、Web客户端技术、数据库建模编程等网络编程基础深入浅出地进行学习;第2部分是框架篇,学习当前最流行的Python Web框架,即Django、Tornado、Flask和Twisted,达到对各种Python网络技术融会贯通的目的;第3部分是实战篇,分别对4种框架进行项目实践,利用其各自的特点开发适用于不同场景的网络程序。

✦ Table of Contents


扉页
版权页
前言
目录
第1 篇 打好Python 基础
第1 章 Python 基础知识
1.1 Python 综述
1.1.1 了解Python 的特性及版本
1.1.2 安装Python
1.1.3 使用Python 原生编辑器
1.1.4 使用Eclipse 开发环境
1.1.5 Python 编程入门——解决“斐波那契数列”问题
1.2 数据类型
1.2.1 Number 类型
1.2.2 Sequence 类型簇
1.2.3 String 类型
1.2.4 Tuple 类型
1.2.5 List 类型
1.2.6 Set 类型
1.2.7 Dictionary 类型
1.3 流程控制
1.3.1 程序块与作用域
1.3.2 判断语句
1.3.3 循环语句
1.3.4 语句嵌套
1.4 函数
1.4.1 定义与使用
1.4.2 变长参数
1.4.3 匿名函数
1.5 异常
1.5.1 处理异常
1.5.2 自定义异常
1.6 面向对象编程
1.6.1 什么是面向对象
1.6.2 类和对象
1.6.3 继承
1.7 本章总结
第2 章 Web 编程之网络基础
2.1 TCP/IP 网络
2.1.1 计算机网络综述
2.1.2 TCP 和UDP
2.1.3 C/S 及B/S 架构
2.2 HTTP
2.2.1 HTTP 流程
2.2.2 HTTP 消息结构
2.2.3 HTTP 请求方法
2.2.4 基于HTTP 的网站开发
2.3 Socket 编程
2.3.1 Socket 基础
2.3.2 实战演练:Socket TCP 原语
2.3.3 实战演练:Socket UDP 原语
2.4 本章总结
第3 章 客户端的编程技术
3.1 HTML
3.1.1 HTML 介绍
3.1.2 HTML 基本标签
3.1.3 HTML 表单
3.2 CSS
3.2.1 样式声明方式
3.2.2 CSS 语法
3.2.3 基于CSS+DIV 的页面布局
3.3 JavaScript
3.3.1 在HTML 中嵌入JavaScript
3.3.2 JavaScript 的基本语法
3.3.3 DOM 及其读写
3.3.4 window 对象
3.3.5 HTML 事件处理
3.4 jQuery
3.4.1 使用jQuery
3.4.2 选择器
3.4.3 行为
3.5 本章总结
第4 章 数据库及ORM
4.1 数据库概念
4.1.1 Web 开发中的数据库
4.1.2 关系数据库建模
4.2 关系数据库编程
4.2.1 常用SQL 语句
4.2.2 实战演练:在Python 中应用SQL
4.3 ORM 编程
4.3.1 ORM 理论基础
4.3.2 Python ORM 库介绍
4.3.3 实战演练:Peewee 库编程
4.4 本章总结
第2 篇 详解主流Python Web 框架
第5 章 Python 网络框架纵览
5.1 网络框架综述
5.1.1 网络框架及MVC 架构
5.1.2 4 种Python 网络框架:Django、Tornado、Flask、Twisted
5.2 开发环境准备
5.2.1 使用Python 虚环境
5.2.2 Windows 环境下的安装
5.2.3 Linux 环境下的安装
5.2.4 easy_install 与pip 的使用
5.3 Web 服务器
5.3.1 实战演练1:WSGI 接口
5.3.2 实战演练2:Linux+Nginx+uWSGI 配置
5.3.3 实战演练3:建立安全的HTTPS 网站
5.4 本章总结
第6 章 企业级开发框架——Django
6.1 Django 综述
6.1.1 Django 的特点及结构
6.1.2 安装Django
6.2 实战演练:开发Django 站点
6.2.1 建立项目
6.2.2 建立应用
6.2.3 基本视图
6.2.4 内置Web 服务器
6.2.5 模型类
6.2.6 表单视图
6.2.7 使用管理界面
6.3 Django 模型层
6.3.1 基本操作
6.3.2 关系操作
6.3.3 面向对象ORM
6.4 Django 视图层
6.4.1 URL 映射
6.4.2 视图函数
6.4.3 模板语法
6.5 使用Django 表单
6.5.1 表单绑定状态
6.5.2 表单数据验证
6.5.3 检查变更字段
6.6 个性化管理员站点
6.6.1 模型
6.6.2 模板
6.6.3 站点
6.7 本章总结
第7 章 高并发处理框架——Tornado
7.1 Tornado 概述
7.1.1 Tornado 介绍
7.1.2 安装Tornado
7.2 异步及协程基础
7.2.1 同步与异步I/O
7.2.2 Python 关键字yield
7.2.3 协程
7.3 实战演练:开发Tornado 网站
7.3.1 网站结构
7.3.2 路由解析
7.3.3 RequestHandler
7.3.4 异步化及协程化
7.4 用户身份验证框架
7.4.1 安全Cookie 机制
7.4.2 用户身份认证
7.4.3 防止跨站攻击
7.5 HTML5 WebSocket 概念及应用
7.5.1 WebSocket 概念
7.5.2 服务端编程
7.5.3 客户端编程
7.6 Tornado 网站部署
7.6.1 调试模式
7.6.2 静态文件
7.6.3 运营期配置
7.7 本章总结
第8 章 支持快速建站的框架——Flask
8.1 Flask 综述
8.1.1 Flask 的特点
8.1.2 在Windows 中的安装
8.1.3 在Linux 及Mac 中的安装
8.2 实战演练:开发Flask 站点
8.2.1 Hello World 程序
8.2.2 模板渲染
8.2.3 重定向和错误处理
8.3 路由详解
8.3.1 带变量的路由
8.3.2 HTTP 方法绑定
8.3.3 路由地址反向生成
8.4 使用Context 上下文
8.4.1 会话上下文
8.4.2 应用全局对象
8.4.3 请求上下文
8.4.4 回调接入点
8.5 Jinja2 模板编程
8.5.1 Jinja2 语法
8.5.2 使用过滤器
8.5.3 流程控制
8.5.4 模板继承
8.6 SQLAlchemy 数据库编程
8.6.1 SQLAlchemy 入门
8.6.2 主流数据库的连接方式
8.6.3 查询条件设置
8.6.4 关系操作
8.6.5 级联
8.7 WTForm 表单编程
8.7.1 定义表单
8.7.2 显示表单
8.7.3 获取表单数据
8.8 本章总结
第9 章 底层自定义协议网络框架——Twisted
9.1 Twisted 综述
9.1.1 框架概况
9.1.2 安装Twisted 及周边组件
9.2 实战演练:开发TCP 广播系统
9.2.1 广播服务器
9.2.2 广播客户端
9.3 UDP 编程技术
9.3.1 实战演练1:普通UDP
9.3.2 实战演练2:Connected UDP
9.3.3 实战演练3:组播技术
9.4 Twisted 高级话题
9.4.1 延迟调用
9.4.2 使用多线程
9.4.3 安全信道
9.5 本章总结
第3 篇 实战项目
第10 章 实战1:用Django+PostgreSQL开发移动Twitter
10.1 项目概览
10.1.1 项目来源(GitHub)
10.1.2 安装PostgreSQL 数据库并配置Python 环境
10.1.3 项目结构
10.2 页面框架设计
10.2.1 基模板文件
10.2.2 手机大小自适应(jQuery 技术)
10.2.3 文本国际化
10.2.4 网站页面一览
10.3 用户注册及登录
10.3.1 页面设计
10.3.2 模型层
10.3.3 视图设计
10.4 手机消息的发布和浏览
10.4.1 页面设计
10.4.2 模型层
10.4.3 视图设计
10.5 社交朋友圈
10.5.1 页面设计
10.5.2 模型层
10.5.3 视图设计
10.6 个人资料配置
10.6.1 页面设计
10.6.2 图片上传(第三方库PIL)
10.7 Web 管理站点
10.7.1 定义可管理对象
10.7.2 配置管理员
10.7.3 使用管理站点
10.8 本章总结
第11 章 实战2:用Tornado+jQuery开发WebSocket 聊天室
11.1 聊天室概览
11.1.1 项目介绍
11.1.2 安装和代码结构
11.2 消息通信
11.2.1 建立网站
11.2.2 WebSocket 服务器
11.2.3 WebSocket 客户端
11.3 聊天功能
11.3.1 昵称
11.3.2 消息来源
11.3.3 历史消息缓存
11.4 用户面板
11.4.1 用CSS 定义用户列表
11.4.2 服务器通知
11.4.3 响应服务器动态通知(jQuery 动态编程)
11.5 本章总结
第12 章 实战3:用Flask+Bootstrap+Restful开发学校管理系统
12.1 系统概览
12.1.1 来源及功能
12.1.2 项目安装
12.1.3 代码结构
12.2 数据模型设计
12.2.1 E-R 图设计
12.2.2 SQLAlchemy 建模
12.3 响应式页面框架设计
12.3.1 基模板组件引用
12.3.2 响应式导航
12.4 新建学校
12.4.1 WTForm 表单
12.4.2 视图及文件上传
12.4.3 响应式布局
12.5 学校管理
12.5.1 查询视图
12.5.2 分页模板
12.6 Restful 接口
12.6.1 Restful 概念
12.6.2 Restless 插件
12.6.3 开发Restful 接口
12.7 本章总结
第13 章 实战4:用Twisted+SQLAlchemy+ZeroMQ 开发跨平台物联网消息网关
13.1 项目概况
13.1.1 功能定义
13.1.2 安装和测试
13.1.3 项目结构
13.2 项目设计
13.2.1 SQLAlchmey 建模
13.2.2 TCP 接口设计
13.3 通信引擎
13.3.1 跨平台安全端口
13.3.2 管理连接
13.3.3 收发数据
13.3.4 TCP 流式分包
13.3.5 异步执行
13.4 协议编程
13.4.1 执行命令
13.4.2 struct 解析字节流
13.4.3 序列号生成
13.4.4 连接保持
13.4.5 发送Response
13.4.6 错误机制
13.5 ZeroMQ 集群
13.5.1 内部接口设计
13.5.2 PUB/SUB 通信模型编程
13.6 本章总结


📜 SIMILAR VOLUMES


Python高效开发实战——Django、Tornado、Flask、Twist
✍ 刘长龙 📂 Library 📅 2019 🏛 电子工业出版社 🌐 Chinese

也许你听说过全栈工程师,他们善于设计系统架构,精通数据库建模、通用网络协议、后端并发处理、前端界面设计,在学术研究或工程项目上能独当一面。通过对Python 3及相关Web框架的学习和实践,你就可以成为这样的全能型人才。 本书分为3篇:上篇是Python基础,带领初学者实践Python开发环境,掌握基本语法,同时对网络协议、Web客户端技术、数据库建模编程等网络编程基础进行深入浅出的学习;中篇是Python框架,学习当前最流行的Python Web框架,即Django、Tornado、Flask和Twisted,达到对各种Python网络技术融会贯通的目的;下篇是Python框架实战,分别对4

Django企业开发实战: 高效Python Web框架指南
✍ 胡阳 📂 Library 📅 2019 🏛 人民邮电出版社 🌐 Chinese

<p>本书以博客系统贯穿始末,介绍了Django的方方面面。书中共分四部分,第一部分介绍了正式进入编码之前的准备工作,内容包括需求分析、基础知识和Demo系统的开发;第二部分开始实现需求,内容涉及环境配置、编码规范以及项目结构规划,编写了Model层、admin页面、Form代码和View逻辑,引入了Bootstrap框架;第三部分重点介绍xadmin、django-autocomple-light和django-rest-framework等第三方插件;最后一部分介绍调试、优化、自动化部署以及压力测试等内容。</p>

Django项目开发实战
✍ 黄索远 📂 Library 📅 2020 🏛 清华大学出版社 🌐 Chinese

本书将Django框架的特性和Web开发实战结合在一起,介绍如何使用Django框架进行Web应用的开发,帮助读者构建跨平台的应用程序,节省使用Django框架开发Web的宝贵时间。找到针对这些问题的解决方案,大多数编程难题都会迎刃而解。 本书内容涵盖表单处理、会话管理、数据库交互、安全防护及程序的部署维护等运维方面的知识,并且介绍了高可用的Web应用原理。在本书中,读者可以更加方便地找到各种编程问题的解决方案。 本书实用性强,特别适合使用Python/PHP等进行Web开发的IT从业者和对Web开发感兴趣的读者阅读。

Python Web开发实战
✍ 董伟明 📂 Library 📅 2016 🏛 电子工业出版社 🌐 Chinese

<p>这本书涵盖了Web开发的方方面面,可以分为如下部分:</p> <p>1. 使用最新的Flask 0.11进行Web开发,学习Jinja2、Flask-Script、Flask-Migrate、Flask-Security、Flask-Assets等8种常用扩展,帮助读者理解Flask 的 优秀设计(上下文、BluePrint等),最后利用Mako、Flask_mako、SQLAlchemy、Pillow等技术实现一个豆瓣一个真实的服务。</p> <p>2. 阐述笔者对REST的理解,并提出一些设计API的注意事项,最后通过jQuery和fetch实现使用Ajax的例子,让读者了解如何

Flask Web开发:基于Python的Web应用开发实战
✍ [美] Miguel Grinberg 📂 Library 📅 2014 🏛 人民邮电出版社 🌐 Chinese

书签已装载, 书签制作方法请找 [email protected] 完全免费 本书不仅适合初级Web开发人员学习阅读,更是Python程序员用来学习高级Web开发技术的优秀参考书。 • 学习Flask应用的基本结构,编写示例应用; • 使用必备的组件,包括模板、数据库、Web表单和电子邮件支持; • 使用包和模块构建可伸缩的大型应用; • 实现用户认证、角色和个人资料; • 在博客网站中重用模板、分页显示列表以及使用富文本; • 使用基于Flask的REST式API,在智能手机、平板电脑和其他第三方客户端上实现可用功能; • 学习运行单元测试以及提升性

Flask Web开发:基于Python的Web应用开发实战
✍ Miguel Grinberg 📂 Library 📅 2014 🏛 人民邮电出版社 🌐 Chinese

<p>本书不仅适合初级Web开发人员学习阅读,更是Python程序员用来学习高级Web开发技术的优秀参考书。</p> <p>• 学习Flask应用的基本结构,编写示例应用;</p> <p>• 使用必备的组件,包括模板、数据库、Web表单和电子邮件支持;</p> <p>• 使用包和模块构建可伸缩的大型应用;</p> <p>• 实现用户认证、角色和个人资料;</p> <p>• 在博客网站中重用模板、分页显示列表以及使用富文本;</p> <p>• 使用基于Flask的REST式API,在智能手机、平板电脑和其他第三方客户端上实现可用功能;</p> <p>• 学习运行单元测试以及提升性能;</p> <