
推荐编程书籍:Python项目开发实战(第2版),由人民邮电出版社2016-12-01月出版发行,本书编译以及作者信息 为:[日] BePROUD股份有限公司 著,支鹏浩 译,此次为第2次发行, 国际标准书号为:9787115438560,品牌为人民邮电出版社, 这本书采用平装开本为16开,纸张采为胶版纸,全书共有424页字数万字,是本Python 编程相关非常不错的书。
此书内容摘要
本书来自真正的开发现场,是BePROUD公司众多极客在真实项目中的经验总结和智慧结晶。作者从Python的环境搭建开始讲起,介绍了Web应用的开发方法、项目管理及审查、测试与高效部署、服务器调试等内容,尽可能网罗了Python项目开发流程中的方方面面,有助于开发者建立有序生产环境,提高开发效率,让编程事半功倍。此外,在本书中Python仅仅是一个载体,很多知识点在非Python下也适用。
关于此书作者
日本BeProud股份有限公司,BeProud是一家专注于Python开发的公司,因云集了众多杰出的Python工程师而闻名于日本国内。多年来在Python开发上硕果累累,以其精湛的技术水平,得到了客户及业界人士的认可和好评。
编辑们的推荐
                                    会写代码≠能做好项目! 
1.建立有序生产环境 
2.迅速融入开发团队 
3.高效处理项目问题 
网罗Python项目开发中的流程,让你的编程事半功倍
Python项目与封装/团队开发环境/问题驱动开发/源码管理(Mercurial) 
Jenkins持续集成(CI)/环境搭建与部署的自动化(Ansible)/Django框架…… 
日本极客和书虫们的智慧结晶和经验总结 
BeProud里不乏极客和书虫们。在这里,很多人对特定领域的了解程度能吓掉你的下巴。大家一旦发现感兴趣的事,就会拿出私人时间来学习、实践。要知道,极客和书虫们不会为这种事情吝啬时间。 
正如人们印象中的那样,极客和书虫们大多有些怪癖,但BeProud 的员工都具备下列共识。 
1.希望能不做不想做的事 
2.希望学会好的方法并付诸实践 
3.希望工作时有个好心情 
本书的内容全部基于事实,都是BeProud员工实际尝试、实践过的。我们希望给各位提供一些能实际应用且行之有效的知识,而不是让各位去死记硬背一大堆晦涩难懂的概念。我们很愿意看到本书的知识能对各位有所帮助,愿各位能在工作中有个好心情。
Python项目开发实战(第2版)图书的目录
    第1部分Python开发入门1 
第1章Python入门2 
1.1安装Python2 
1.1.1安装deb包3 
1.1.2安装第三方包4 
1.1.3virtualenv的使用方法5 
1.1.4多版本Python的使用7 
1.2安装Mercurial9 
1.2.1Mercurial概述10 
1.2.2安装Mercurial10 
1.2.3创建版本库11 
1.2.4文件操作12 
1.3编辑器与辅助开发工具14 
1.3.1编辑器14 
1.3.2开发辅助工具20 
1.4小结22 
第2章开发Web应用24 
2.1了解Web应用24 
2.1.1Web应用是什么24 
2.1.2Web应用与桌面应用的区别25 
2.1.3Web应用的机制25 
2.2前置准备28 
2.2.1关于Flask28 
2.2.2安装Flask28 
2.3Web应用的开发流程29 
2.4明确要开发什么应用30 
2.4.1留言板应用的需求30 
2.4.2明确必备的功能30 
2.4.3明确必备的页面31 
2.5页面设计31 
2.5.1确定成品页面的形式31 
2.5.2编写HTML和CSS32 
2.6实现功能37 
2.6.1保存留言数据37 
2.6.2获取已保存的留言列表38 
2.6.3用模板引擎显示页面39 
2.6.4准备评论接收方的URL42 
2.6.5调整模板的输出43 
2.7查看运行情况45 
2.8小结47 
第3章Python项目的结构与包的创建48 
3.1Python项目48 
3.2环境与工具49 
3.2.1用virtualenv搭建独立环境49 
3.2.2用pip安装程序包55 
3.2.3小结62 
3.3文件结构与发布程序包62 
3.3.1编写setup.py62 
3.3.2留言板的项目结构64 
3.3.3setup.py与MANIFEST.in——设置程序包信息与捆绑的文件65 
3.3.4setup.py——创建执行命令69 
3.3.5python setup.py sdist——创建源码发布程序包71 
3.3.6提交至版本库71 
3.3.7README.rst——开发环境设置流程73 
3.3.8变更依赖包75 
3.3.9通过requirements.txt固定开发版本77 
3.3.10python setup.py bdist_wheel——制作用于wheel发布的程序包78 
3.3.11上传到PyPI并公开79 
3.3.12小结85 
3.4小结86 
第2部分团队开发的周期87 
第4章面向团队开发的工具88 
4.1问题跟踪系统88 
4.1.1Redmine88 
4.1.2安装Redmine89 
4.1.3Redmine的设置91 
4.1.4插件93 
4.2版本控制系统94 
4.2.1Mercurial与Redmine的联动94 
4.2.2用于生成版本库的插件95 
4.3聊天系统97 
4.3.1Slack97 
4.3.2Slack的特点98 
4.3.3Slack做不到的事101 
4.3.4Slack的注册102 
4.4对团队开发有帮助的工具102 
4.4.1Dropbox102 
4.4.2Google Drive102 
4.5小结103 
第5章项目管理与审查104 
5.1项目管理与问题的区分使用104 
5.1.1项目管理的前置准备工作104 
5.1.2创建问题105 
5.1.3整理问题107 
5.1.4分割问题107 
5.2问题模板108 
5.2.1安装插件108 
5.2.2问题模板的使用方法109 
5.2.3Global Issue Templates111 
5.2.4问题模板示例112 
5.3问题驱动开发114 
5.3.1别急着敲代码,先建问题114 
5.3.2创建与问题编号同名的分支115 
5.3.3让发布与分支相对应115 
5.3.4分支的合并116 
5.4审查117 
5.4.1为什么需要审查117 
5.4.2审查委托:代码审查篇118 
5.4.3审查委托:作业审查篇119 
5.4.4实施审查:代码审查篇120 
5.4.5实施审查:作业审查篇123 
5.5小结123 
第6章用Mercurial管理源码125 
6.1Mercurial版本库的管理与设置125 
6.1.1服务器上的Uinx用户群设置125 
6.1.2创建版本库126 
6.1.3hgrc的设置127 
6.1.4使用设置好的版本库127 
6.1.5使用hgweb建立简易中央版本库127 
6.2灵活使用“钩子”128 
6.2.1钩子功能的设置方法129 
6.2.2尝试钩子脚本129 
6.2.3钩子事件130 
6.2.4钩子功能的执行时机131 
6.2.5编写钩子脚本134 
6.3分支的操作136 
6.4关于合并137 
6.4.1未发生冲突的合并138 
6.4.2合并时发生冲突以及用文本编辑器解决冲突的方法140 
6.4.3合并的类型与冲突143 
6.4.4用GUI的合并工具进行合并144 
6.5GUI客户端147 
6.5.1GUI客户端的介绍147 
6.5.2GUI客户端的优点149 
6.5.3GUI客户端的缺点151 
6.6考虑实际运用的BePROUD Mercurial Workflow152 
6.6.1概述152 
6.6.2背景152 
6.6.3版本库的结构153 
6.6.4提交源码154 
6.6.5提交设计156 
6.6.6分支的合并157 
6.6.7集成分支158 
6.7小结160 
第7章完备文档的基础162 
7.1要记得给项目写文档162 
7.1.1写文档时不想做的事162 
7.1.2什么样的状态让人想写文档164 
7.2Sphinx的基础与安装165 
7.2.1Sphinx的安装166 
7.2.2reStructuredText入门167 
7.2.3用Sphinx写结构化文档的流程169 
7.2.4Sphinx扩展174 
7.3导入Sphinx可解决的问题与新出现的问题175 
7.3.1由于是纯文本,所以能在平时用的编辑器上写文档176 
7.3.2信息与视图相分离,所以能集中精神编辑内容,不用顾虑装饰等外观问题176 
7.3.3可根据一个源码输出PDF等多种格式179 
7.3.4通过结构化,文档可分成几个文件来写180 
7.3.5能用Mercurial等轻松实现版本管理181 
7.3.6API参考手册与程序的管理一体化182 
7.3.7通过Web浏览器共享184 
7.3.8导入Sphinx后仍存在的问题185 
7.4文档集的创建与使用186 
7.4.1什么是文档集186 
7.4.2项目所需文档的一览表187 
7.4.3面向项目组长、经理187 
7.4.4面向设计者189 
7.4.5面向开发者189 
7.4.6面向客户189 
7.5小结190 
第8章模块分割设计与单元测试191 
8.1模块分割设计191 
8.1.1功能设计191 
8.1.2构成Web应用的组件192 
8.1.3组件设计194 
8.1.4模块与程序包195 
8.2测试197 
8.2.1测试的种类197 
8.2.2编写单元测试198 
8.2.3从单元测试中剔除环境依赖209 
8.2.4用WebTest做功能测试215 
8.3通过测试改良设计219 
8.4推进测试自动化221 
8.4.1用tox自动生成执行测试的环境221 
8.4.2可重复使用的测试环境223 
8.5小结223 
第9章Python封装及其运用224 
9.1使用程序包224 
9.1.1程序包的版本指定224 
9.1.2从非PyPI服务器安装程序包226 
9.1.3程序包的发布格式228 
9.1.4生成wheelhouse的方法230 
9.1.5从wheelhouse安装231 
9.2巧用程序包232 
9.2.1私密发布232 
9.2.2巧用requirements.txt232 
9.2.3requirements.txt层级化233 
9.2.4为部署和CI+tox准备的requiremests234 
9.2.5通过requirements.txt指定库的版本235 
9.3小结236 
第10章用Jenkins持续集成237 
10.1什么是持续集成237 
10.1.1持续集成的简介237 
10.1.2Jenkins简介239 
10.2Jenkins的安装239 
10.2.1安装Jenkins主体程序239 
10.2.2本章将用到的Jenkins插件240 
10.3执行测试代码241 
10.3.1让Jenkins运行简单的测试代码241 
10.3.2添加Job242 
10.3.3Job的成功与失败244 
10.4测试结果输出到报告246 
10.4.1安装pytest246 
10.4.2调用pytest命令246 
10.4.3根据pytest更改Jenkins的设置246 
10.5显示覆盖率报告247 
10.5.1安装pytest-cov248 
10.5.2从pytest获取覆盖率248 
10.5.3读取覆盖率报告248 
10.6执行Django的测试250 
10.6.1安装Python模块250 
10.6.2Django的调整251 
10.6.3示例代码251 
10.6.4Jenkins的调整255 
10.6.5“构建后操作”选项卡的设置257 
10.7通过Jenkins构建文档260 
10.7.1安装Sphinx261 
10.7.2在Jenkins添加Job261 
10.7.3Sphinx构建发出警告时令Job失败261 
10.7.4查看成果262 
10.7.5通过Task Scanner Plugin管理TODO263 
10.7.6Task Scanner Plugin的设置示例264 
10.8Jenkins进阶技巧265 
10.8.1好用的功能265 
10.8.2进一步改善267 
10.9小结268 
第3部分服务公开269 
第11章环境搭建与部署的自动化270 
11.1确定所需环境的内容270 
11.1.1网络结构270 
11.1.2服务器搭建内容的结构化272 
11.1.3用户的设置273 
11.1.4选定程序包274 
11.1.5中间件的设置277 
11.1.6部署280 
11.2用Ansible实现自动化作业282 
11.2.1Ansible简介282 
11.2.2文件结构287 
11.2.3执行Ansible288 
11.2.4与最初确定的结构相对应288 
11.2.5将各步骤Ansible化289 
11.2.6整理Ansible的执行环境295 
11.3小结296 
第12章应用的性能改善298 
12.1Web应用的性能298 
12.1.1Web应用面对大量集中请求时会产生哪些问题298 
12.1.2针对高负荷的对策299 
12.2评估留言板应用的性能300 
12.2.1什么是应用的性能300 
12.2.2安装ApacheBench300 
12.2.3用ApachBench评估性能301 
12.3gunicorn简介303 
12.3.1安装gunicorn304 
12.3.2在gunicorn上运行应用304 
12.4nginx简介306 
12.4.1安装nginx306 
12.4.2检测nginx的性能307 
12.5在nginx和gunicorn上运行应用310 
12.5.1gunicorn的设置310 
12.5.2nginx的设置310 
12.5.3评估nginx+gunicorn的性能311 
12.5.4性能比较312 
12.6小结313 
第4部分加速开发的技巧315 
第13章让测试为我们服务316 
13.1认识现状:测试的客观环境316 
13.2将测试导入开发各个阶段317 
13.2.1文档的测试(审查)317 
13.2.2测试设计的编写方法(输入与输出)320 
13.2.3测试的实施与测试阶段的轮换(做什么,做多少)323 
13.3小结:测试并不可怕326 
第14章轻松使用Django327 
14.1Django简介327 
14.1.1Django的安装327 
14.1.2Django的架构327 
14.1.3Django的文档331 
14.2数据库的迁移331 
14.2.1什么是数据库的迁移331 
14.2.2Django的迁移功能332 
14.3fixture replacement339 
14.3.1什么是测试配置器339 
14.3.2几种不便使用默认配置器的情况342 
14.3.3如何使用factory_boy343 
14.3.4消除“不便使用默认配置器的情况”345 
14.4Django Debug Toolbar346 
14.5小结353 
第15章方便好用的Python模块355 
15.1轻松计算日期355 
15.1.1日期计算的复杂性355 
15.1.2导入dateutil357 
15.2简化模型的映射359 
15.2.1模型映射的必要性359 
15.2.2映射规则的结构化与重复利用360 
15.2.3导入bpmappers363 
15.2.4与Django联动366 
15.2.5编写JSON API367 
15.3图像处理369 
15.3.1安装Pillow369 
15.3.2图像格式转换371 
15.3.3改变图像尺寸372 
15.3.4剪裁图像374 
15.3.5对图像进行滤镜处理375 
15.4数据加密377 
15.4.1安装PyCrypto377 
15.4.2通用加密系统的加密及解密377 
15.4.3公钥加密系统(RSA)的加密与解密378 
15.5使用Twitter的API382 
15.5.1导入tweepy382 
15.5.2添加应用与获取用户密钥382 
15.5.3获取访问令牌385 
15.5.4调用Twitter API385 
15.5.5编写用Twitter认证的系统387 
15.6使用REST API393 
15.6.1REST简介394 
15.6.2导入Requests394 
15.6.3导入测试服务器394 
15.6.4发送GET请求396 
15.6.5发送POST请求397 
15.6.6发送JSON格式的POST请求398 
15.6.7使用GET/POST之外的HTTP方法399 
15.7小结400 
附录401 
附录AVirtualBox的设置402 
A.1安装VirtualBox402 
A.2新建虚拟机403 
A.3备份虚拟机404 
附录BOS(Ubuntu)的设置407 
B.1安装Ubuntu407 
B.2SSH的设置417 
B.3中文的设置419 
B.4添加用户419    
部分内容试读
暂无.
关于此书评价
暂无.
书摘内容
暂无.
Python项目开发实战(第2版)最新最全的试读、书评、目录、简介信息由Python中文网整理提供。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试
 
                     
                


