主页 详情

《PYTHON项目开发实战 第2版》_(日)日本BEPROUD股份有限公司著;支鹏浩译_14085029_7115438560

【书名】:《PYTHON项目开发实战 第2版》
【作者】:(日)日本BEPROUD股份有限公司著;支鹏浩译
【出版社】:北京:人民邮电出版社
【时间】:2017
【页数】:424
【ISBN】:7115438560
【SS码】:14085029

最新查询

内容简介

第1部分 Python开发入门

第1章 Python入门

1.1 安装Python

1.1.1 安装deb包

1.1.2 安装第三方包

1.1.3 virtualenv的使用方法

1.1.4 多版本Python的使用

1.2 安装Mercurial

1.2.1 Mercurial概述

1.2.2 安装Mercurial

1.2.3 创建版本库

1.2.4 文件操作

1.3 编辑器与辅助开发工具

1.3.1 编辑器

1.3.2 开发辅助工具

1.4 小结

第2章 开发Web应用

2.1 了解Web应用

2.1.1 Web应用是什么

2.1.2 Web应用与桌面应用的区别

2.1.3 Web应用的机制

2.2 前置准备

2.2.1 关于Flask

2.2.2 安装Flask

2.3 Web应用的开发流程

2.4 明确要开发什么应用

2.4.1 留言板应用的需求

2.4.2 明确必备的功能

2.4.3 明确必备的页面

2.5 页面设计

2.5.1 确定成品页面的形式

2.5.2 编写HTML和CSS

2.6 实现功能

2.6.1 保存留言数据

2.6.2 获取已保存的留言列表

2.6.3 用模板引擎显示页面

2.6.4 准备评论接收方的URL

2.6.5 调整模板的输出

2.7 查看运行情况

2.8 小结

第3章 Python项目的结构与包的创建

3.1 Python项目

3.2 环境与工具

3.2.1 用virtualenv搭建独立环境

3.2.2 用pip安装程序包

3.2.3 小结

3.3 文件结构与发布程序包

3.3.1 编写setup.py

3.3.2 留言板的项目结构

3.3.3 setup.py与MANIFEST.in——设置程序包信息与捆绑的文件

3.3.4 setup.py——创建执行命令

3.3.5 python setup.py sdist——创建源码发布程序包

3.3.6 提交至版本库

3.3.7 README.rst——开发环境设置流程

3.3.8 变更依赖包

3.3.9 通过requirements.txt固定开发版本

3.3.10 python setup.py bdist_wheel——制作用于wheel发布的程序包

3.3.11 上传到PyPl并公开

3.3.12 小结

3.4 小结

第2部分 团队开发的周期

第4章 面向团队开发的工具

4.1 问题跟踪系统

4.1.1 Redmine

4.1.2 安装Redmine

4.1.3 Redmine的设置

4.1.4 插件

4.2 版本控制系统

4.2.1 Mercurial与Redmine的联动

4.2.2 用于生成版本库的插件

4.3 聊天系统

4.3.1 Slack

4.3.2 Slack的特点

4.3.3 Slack做不到的事

4.3.4 Slack的注册

4.4 对团队开发有帮助的工具

4.4.1 Dropbox

4.4.2 Google Drive

4.5 小结

第5章 项目管理与审查

5.1 项目管理与问题的区分使用

5.1.1 项目管理的前置准备工作

5.1.2 创建问题

5.1.3 整理问题

5.1.4 分割问题

5.2 问题模板

5.2.1 安装插件

5.2.2 问题模板的使用方法

5.2.3 Global Issue Templates

5.2.4 问题模板示例

5.3 问题驱动开发

5.3.1 别急着敲代码,先建问题

5.3.2 创建与问题编号同名的分支

5.3.3 让发布与分支相对应

5.3.4 分支的合并

5.4 审查

5.4.1 为什么需要审查

5.4.2 审查委托:代码审查篇

5.4.3 审查委托:作业审查篇

5.4.4 实施审查:代码审查篇

5.4.5 实施审查:作业审查篇

5.5 小结

第6章 用Mercurial管理源码

6.1 Mercurial版本库的管理与设置

6.1.1 服务器上的Uinx用户群设置

6.1.2 创建版本库

6.1.3 hgrc的设置

6.1.4 使用设置好的版本库

6.1.5 使用hgweb建立简易中央版本库

6.2 灵活使用“钩子”

6.2.1 钩子功能的设置方法

6.2.2 尝试钩子脚本

6.2.3 钩子事件

6.2.4 钩子功能的执行时机

6.2.5 编写钩子脚本

6.3 分支的操作

6.4 关于合并

6.4.1 未发生冲突的合并

6.4.2 合并时发生冲突以及用文本编辑器解决冲突的方法

6.4.3 合并的类型与冲突

6.4.4 用GUI的合并工具进行合并

6.5 GUI客户端

6.5.1 GUI客户端的介绍

6.5.2 GUI客户端的优点

6.5.3 GUI客户端的缺点

6.6 考虑实际运用的BePROUD Mercurial Workflow

6.6.1 概述

6.6.2 背景

6.6.3 版本库的结构

6.6.4 提交源码

6.6.5 提交设计

6.6.6 分支的合并

6.6.7 集成分支

6.7 小结

第7章 完备文档的基础

7.1 要记得给项目写文档

7.1.1 写文档时不想做的事

7.1.2 什么样的状态让人想写文档

7.2 Sphinx的基础与安装

7.2.1 Sphinx的安装

7.2.2 reStructuredText入门

7.2.3 用Sphinx写结构化文档的流程

7.2.4 Sphinx扩展

7.3 导入Sphinx可解决的问题与新出现的问题

7.3.1 由于是纯文本,所以能在平时用的编辑器上写文档

7.3.2 信息与视图相分离,所以能集中精神编辑内容,不用顾虑装饰等外观问题

7.3.3 可根据一个源码输出PDF等多种格式

7.3.4 通过结构化,文档可分成几个文件来写

7.3.5 能用Mercu rial等轻松实现版本管理

7.3.6 API参考手册与程序的管理一体化

7.3.7 通过Web浏览器共享

7.3.8 导入Sphinx后仍存在的问题

7.4 文档集的创建与使用

7.4.1 什么是文档集

7.4.2 项目所需文档的一览表

7.4.3 面向项目组长、经理

7.4.4 面向设计者

7.4.5 面向开发者

7.4.6 面向客户

7.5 小结

第8章 模块分割设计与单元测试

8.1 模块分割设计

8.1.1 功能设计

8.1.2 构成Web应用的组件

8.1.3 组件设计

8.1.4 模块与程序包

8.2 测试

8.2.1 测试的种类

8.2.2 编写单元测试

8.2.3 从单元测试中剔除环境依赖

8.2.4 用WebTest做功能测试

8.3 通过测试改良设计

8.4 推进测试自动化

8.4.1 用tox自动生成执行测试的环境

8.4.2 可重复使用的测试环境

8.5 小结

第9章 Python封装及其运用

9.1 使用程序包

9.1.1 程序包的版本指定

9.1.2 从非PyPI服务器安装程序包

9.1.3 程序包的发布格式

9.1.4 生成wheelhouse的方法

9.1.5 从wheelhouse安装

9.2 巧用程序包

9.2.1 私密发布

9.2.2 巧用requirements.txt

9.2.3 requirements.txt层级化

9.2.4 为部署和Cl+tox准备的requiremests

9.2.5 通过requirements.txt指定库的版本

9.3 小结

第10章 用Jenkins持续集成

10.1 什么是持续集成

10.1.1 持续集成的简介

10.1.2 Jenkins简介

10.2 Jenkins的安装

10.2.1 安装Jenkins主体程序

10.2.2 本章将用到的Jenkins插件

10.3 执行测试代码

10.3.1 让Jenkins运行简单的测试代码

10.3.2 添加Job

10.3.3 Job的成功与失败

10.4 测试结果输出到报告

10.4.1 安装pytest

10.4.2 调用pytest命令

10.4.3 根据pytest更改Jenkins的设置

10.5 显示覆盖率报告

10.5.1 安装pytest-

10.5.2 从pytest获取覆盖率

10.5.3 读取覆盖率报告

10.6 执行Django的测试

10.6.1 安装Python模块

10.6.2 Django的调整

10.6.3 示例代码

10.6.4 Jenkins的调整

10.6.5 “构建后操作”选项卡的设置

10.7 通过Jenkins构建文档

10.7.1 安装Sphinx

10.7.2 在Jenkins添加Job

10.7.3 Sphinx构建发出警告时令Job失败

10.7.4 查看成果

10.7.5 通过Task Scanner Plugin管理TODO

10.7.6 Task Scanner Plugin的设置示例

10.8 Jenkins进阶技巧

10.8.1 好用的功能

10.8.2 进一步改善

10.9 小结

第3部分 服务公开

第11章 环境搭建与部署的自动化

11.1 确定所需环境的内容

11.1.1 网络结构

11.1.2 服务器搭建内容的结构化

11.1.3 用户的设置

11.1.4 选定程序包

11.1.5 中间件的设置

11.1.6 部署

11.2 用Ansible实现自动化作业

11.2.1 Ansible简介

11.2.2 文件结构

11.2.3 执行Ansible

11.2.4 与最初确定的结构相对应

11.2.5 将各步骤Ansible化

11.2.6 整理Ansible的执行环境

11.3 小结

第12章 应用的性能改善

12.1 Web应用的性能

12.1.1 Web应用面对大量集中请求时会产生哪些问题

12.1.2 针对高负荷的对策

12.2 评估留言板应用的性能

12.2.1 什么是应用的性能

12.2.2 安装ApacheBench

12.2.3 用ApachBench评估性能

12.3 gunicorn简介

12.3.1 安装gunicorn

12.3.2 在gunicorn上运行应用

12.4 nginx简介

12.4.1 安装nginx

12.4.2 检测nginx的性能

12.5 在nginx和gunicorn上运行应用

12.5.1 gunicorn的设置

12.5.2 nginx的设置

12.5.3 评估nginx+gunicorn的性能

12.5.4 性能比较

12.6 小结

第4部分 加速开发的技巧

第13章 让测试为我们服务

13.1 认识现状:测试的客观环境

13.2 将测试导入开发各个阶段

13.2.1 文档的测试(审查)

13.2.2 测试设计的编写方法(输入与输出)

13.2.3 测试的实施与测试阶段的轮换(做什么,做多少)

13.3 小结:测试并不可怕

第14章 轻松使用Django

14.1 Django简介

14.1.1 Django的安装

14.1.2 Django的架构

14.1.3 Django的文档

14.2 数据库的迁移

14.2.1 什么是数据库的迁移

14.2.2 Django的迁移功能

14.3 fixture replacement

14.3.1 什么是测试配置器

14.3.2 几种不便使用默认配置器的情况

14.3.3 如何使用factory_boy

14.3.4 消除“不便使用默认配置器的情况”

14.4 Django Debug Toolba r

14.5 小结

第15章 方便好用的Python模块

15.1 轻松计算日期

15.1.1 日期计算的复杂性

15.1.2 导入dateutil

15.2 简化模型的映射

15.2.1 模型映射的必要性

15.2.2 映射规则的结构化与重复利用

15.2.3 导入bpmappers

15.2.4 与Django联动

15.2.5 编写JSON API

15.3 图像处理

15.3.1 安装Pillow

15.3.2 图像格式转换

15.3.3 改变图像尺寸

15.3.4 剪裁图像

15.3.5 对图像进行滤镜处理

15.4 数据加密

15.4.1 安装PyCrypto

15.4.2 通用加密系统的加密及解密

15.4.3 公钥加密系统(RSA)的加密与解密

15.5 使用Twitter的API

15.5.1 导入tweepy

15.5.2 添加应用与获取用户密钥

15.5.3 获取访问令牌

15.5.4 调用Twitter API

15.5.5 编写用Twitter认证的系统

15.6 使用REST API

15.6.1 REST简介

15.6.2 导入Requests

15.6.3 导入测试服务器

15.6.4 发送GET请求

15.6.5 发送POST请求

15.6.6 发送JSON格式的POST请求

15.6.7 使用GET/POST之外的HTTP方法

15.7 小结

附录

附录A VirtualBox的设置

A.1 安装VirtualBox

A.2 新建虚拟机

A.3 备份虚拟机

附录B OS(Ubuntu)的设置

B.1 安装Ubuntu

B.2 SSH的设置

B.3 中文的设置

B.4 添加用户


书查询(www.shuchaxun.com)本网页唯一编码:
169848c7d03d1d2a156f6310e1a03f55#be554f259ce3c66959984e60bb56447d#84067062#14085029.zip