Python开发实战

出版日期:2014-6
ISBN:9787115320896
作者:[日] BePROUD股份有限公司
页数:378页

作者简介

作者从Python的环境搭建开始讲起,介绍了Web应用开发方法、任务管理,以及评审、测试及高效部署、服务器调试等内容,尽可能网罗了Python开发流程中的方方面面。在这里,Python仅仅是一个载体,很多知识点在非Python下也适用,这也是本书最大的特色所在。
本书适合有一定基础的Python开发者,以及使用PHP或Ruby进行网页开发的读者阅读。

书籍目录

第一部分  使用Python开发
01  开始使用Python  2
01.01  Python环境搭建  2
01.01.01  安装apt软件包  2
01.01.02  easy_install 与pip  3
01.01.03  安装virtualenv  4
01.01.04  使用不同版本的Python  9
01.02  Mercurial环境搭建  12
01.02.01  Mercurial的简介  12
01.02.02  Mercurial的安装  12
01.02.03  代码库的建立  13
01.02.04  文件的操作  14
01.03  编辑器与方便的开发工具  17
01.03.01  编辑器  17
01.03.02  Python开发小贴士  19
01.04  本章小结  22
02  开发Web应用程序  23
02.01  了解Web应用程序  23
02.01.01  什么是Web应用程序  23
02.01.02  Web应用程序与桌面应用程序的不同  24
02.01.03  Web应用程序的机制  24
02.02  Web应用程序开发的事前准备  27
02.02.01  关于Flask  27
02.02.02  Flask的安装  27
02.03  Web应用程序的开发流程  28
02.04  明确需要开发的目标系统  28
02.04.01  留言簿应用程序的需求  28
02.04.02  明确必要的功能  29
02.04.03  明确页面的表现形式  29
02.05  页面设计  29
02.05.01  页面设计草图  30
02.05.02  设计HTML和CSS  30
02.06  后台功能的开发  35
02.06.01  保存评论数据  35
02.06.02  取出保存过的评论数据  36
02.06.03  使用模板引擎显示页面  37
02.06.04  准备评论的目标URL地址  39
02.06.05  调整模板输出  40
02.07  功能验证  41
02.08  本章小结  42
第二部分  团队开发的周期和流程
03  准备团队开发环境  46
03.01  在公共服务器上建立用户、设置权限  46
03.01.01  用户与用户组的建立  46
03.01.02  sudoers  46
03.01.03  virtualenv  47
03.02  问题跟踪系统  47
03.02.01  Trac  48
03.02.02  安装Trac  48
03.03  版本控制系统  51
03.04  有利于团队开发的工具  52
03.04.01  Skype  52
03.04.02  DropBox  53
03.04.03  Google Docs  54
03.05  本章小结  54
04  编写开发文档的准备  55
04.01  编写项目开发文档  55
04.01.01  在写文档时,我们不想做什么工作  55
04.01.02  愿意在什么样的条件下编写文档  57
04.02  Sphinx的基础与安装  58
04.02.01  Sphinx的安装  58
04.02.02  reStructuredText入门  60
04.02.03  使用Sphinx编写结构化文档的流程  61
04.02.04  Sphinx的扩展  66
04.03  引入Sphinx后解决的问题与新的问题  67
04.03.01  采用纯文本,可使用一般的编辑器来写文档  67
04.03.02  内容与形式分离,不关注文档形式而专注于内容的编写  68
04.03.03  不仅仅是PDF,通过一个源可以输出多种格式  71
04.03.04  将文档分割成多个文件编辑,进行结构化处理  72
04.03.05  通过Mercurial进行简单的版本控制  73
04.03.06  将API参考手册和对应程序协同管理  73
04.03.07  一般文档可通过Web浏览器共享  76
04.03.08  Sphinx引入后仍需探讨的问题  76
04.04  文档集合的创建与利用  77
04.04.01  什么是文档集合  78
04.04.02  项目中必不可少的文档列表  78
04.04.03  面向团队领导、经理  79
04.04.04  面向设计人员  80
04.04.05  面向开发人员  80
04.04.06  面向用户  81
04.05  本章小结  81
05  问题跟踪与评审  82
05.01  任务管理与ticket驱动开发  82
05.01.01  开始写代码……在这之前还是先创建一个ticket  82
05.01.02  创建和ticket编号一致的分支  83
05.01.03  让版本发布与分支对应  84
05.01.04  分支的合并  84
05.01.05  整理ticket信息  86
05.01.06  ticket 的分割  86
05.02  评审  87
05.02.01  为什么需要评审  87
05.02.02  作为被评审人:代码评审篇  87
05.02.03  作为被评审人:工作评审篇  88
05.02.04  作为评审人:代码评审篇  89
05.02.05  作为评审人:工作评审篇  92
05.03  本章小结  92
06  模块的分割设计与单元测试  93
06.01  模块分割设计方法  93
06.01.01  功能设计  93
06.01.02  Web应用程序的构成组件  94
06.01.03  组件设计  96
06.01.04  模块与包  97
06.02  测试  99
06.02.01  测试的种类  99
06.02.02  编写单元测试  101
06.02.03  从单元测试中去除环境依赖  109
06.02.04  使用WebTest进行功能测试  114
06.03  从测试来改善设计  118
06.04  迈向测试执行的自动化  120
06.04.01  测试环境的自动生成  120
06.04.02  可以反复执行的测试环境  121
06.05  本章小结  121
07  打包与自动建立环境  122
07.01  源代码打包与发布自动化  123
07.01.01  打包  123
07.01.02  程序包的自动化发布  127
07.01.03  向PyPI注册程序包  128
07.01.04  向PyPI上传程序包  128
07.01.05  书写程序包的使用说明  129
07.02  安装与环境关联库的介绍  131
07.02.01  Distribute  132
07.02.02  pip  133
07.02.03  virtualenv  134
07.03  应用环境自动构建所必备的功能与工具  135
07.03.01  准备独立的Python环境  135
07.03.02  Python库的程序包化以及标准安装  136
07.03.03  锁定应用环境的程序包版本  136
07.03.04  整个环境可以离线安装  136
07.03.05  重建环境时可以复用缓存  137
07.03.06  使用编译好的二进制模块  138
07.03.07  当PyPI宕机或高峰时,有备用服务器  138
07.04  自动应用环境构建  140
07.04.01  开始  140
07.04.02  构建初始环境  140
07.04.03  包含源代码的应用环境  141
07.04.04  在部署环境中的离线安装  143
07.04.05  安装部署需要二进制编译的程序包  144
07.05  公司内部共享专用库  144
07.05.01  在多个项目间共享代码的方法  145
07.05.02  自动建立非公开程序包的应用环境  149
07.06  本章小结  152
08  使用Mercurial管理源代码  153
08.01  Mercurial的代码库管理与配置  153
08.01.01  在服务器上设置UNIX用户与用户组  153
08.01.02  设置umask值  154
08.01.03  创建代码库  154
08.01.04  配置hgrc  155
08.01.05  使用配置后的代码库  155
08.01.06  使用hgweb作为简易的中央代码库  155
08.02  灵活使用钩子功能  156
08.02.01  钩子功能的设置方法  157
08.02.02  使用钩子脚本  157
08.02.03  钩子事件  157
08.02.04  钩子执行的时机  159
08.02.05  编写钩子脚本  161
08.03  分支操作  164
08.04  分支间的合并  165
08.04.01  没有冲突的合并  165
08.04.02  用文本编辑器消除合并冲突  167
08.04.03  合并的模式与冲突的种类  169
08.04.04  使用图形界面合并的方法  170
08.05  GUI客户端  173
08.05.01  GUI客户端的介绍  173
08.05.02  GUI客户端的优点  176
08.05.03  GUI客户端的缺点  179
08.05.04  hgwebcommit  180
08.06  考虑实际运用而产生的BP Mercurial W/F  182
08.06.01  概要  182
08.06.02  背景  183
08.06.03  代码库的构成  183
08.06.04  源代码提交  184
08.06.05  设计师的提交操作  186
08.06.06  分支的合并  187
08.06.07  集成分支  188
08.07  本章小结  189
09  使用Jenkins持续集成  192
09.01  什么是持续集成  192
09.01.01  关于持续集成  192
09.01.02  关于Jenkins  194
09.02  Jenkins的安装  194
09.02.01  安装Java  194
09.02.02  安装Jenkins主体程序  194
09.02.03  本章用到的Jenkins插件  195
09.03  执行测试代码  195
09.03.01  简单测试代码的示例  195
09.03.02  注册作业  196
09.03.03  作业执行成功与失败  198
09.04  测试结果通过报表输出  199
09.04.01  安装nose  199
09.04.02  调用nosetests命令  199
09.04.03  为使用nose修改Jenkins配置  200
09.05  展示代码覆盖率报告  201
09.05.01  coverage的安装  201
09.05.02  coverage命令的概述:分为“统计”和“输出”两步  201
09.05.03  通过nose执行coverage  201
09.05.04  读取代码覆盖率的报告  202
09.06  执行Django测试  204
09.06.01  Django模块的安装  204
09.06.02  Django的安装  204
09.06.03  样本代码  205
09.06.04  Jenkins的创建  208
09.06.05 “构建后处理”部分的配置  210
09.07  通过Jenkins构建文档  212
09.07.01  Sphinx的安装  212
09.07.02  配置Jenkins作业的注册信息  212
09.07.03  Sphinx的构建在出现告警时作业失败  213
09.07.04  查阅编译成果  214
09.07.05  使用Task Scanner Plugin管理TODO信息  215
09.07.06  Task Scanner Plugin的配置示例  216
09.08  进一步灵活使用Jenkins  216
09.08.01  便捷的功能  216
09.08.02  进一步的改善  218
09.09  本章小结  219
第三部分  服务的公开
10  自动构建和部署环境  222
10.01  安装与配置具有依赖关系的程序包  222
10.01.01  创建操作用户  223
10.01.02  列举必要的程序包  224
10.01.03  封闭环境的安装  226
10.01.04  应用程序的配置  228
10.01.05  环境验证  231
10.02  整理部署的操作步骤  231
10.02.01  赋予代码库访问权限  232
10.02.02  克隆源代码库  232
10.02.03  部署方法总结  232
10.03  使用Fabric将操作步骤自动化  233
10.03.01  什么是Fabric  233
10.03.02  安装与环境配置  233
10.03.03  编写简单的脚本  234
10.03.04  参考步骤说明书进行自动化  234
10.03.05  验证执行行为  238
10.03.06  添加注释  238
10.04  本章小结  239
11  改善应用程序的性能  240
11.01  Web应用程序的性能  240
11.01.01  Web应用遭遇大量请求时会如何  240
11.01.02  高负载时的对策  241
11.02  留言簿应用程序的性能测试  242
11.02.01  什么是应用程序的性能  242
11.02.02  ApacheBench的安装  242
11.02.03  使用ApacheBench检测性能  242
11.03  关于gunicorn  245
11.03.01  gunicorn的安装  245
11.03.02  使用gunicorn运行应用程序  245
11.04  关于nginx  247
11.04.01  nginx的安装  248
11.04.02  nginx的性能测试  248
11.05  使用nginx和gunicorn共同承载应用程序  250
11.05.01  gunicorn的配置  250
11.05.02  nginx的配置  251
11.05.03  测定nginx+gunicorn组合的性能  251
11.05.04  性能的比较  252
11.06  本章小结  253
12  Google App Engine  254
12.01  关于App Engine  254
12.01.01  什么是App Engine  254
12.01.02  App Engine的优点  255
12.01.03  App Engine平台的局限性  255
12.01.04  使用案例  256
12.02  App Engine的主要功能  256
12.02.01  数据存储  256
12.02.02  自动扩展与负载分散  257
12.02.03  在App Engine中的Python运行环境  259
12.03  App Engine的开发准备工作与步骤确认  260
12.03.01  获取账号并开发程序  260
12.03.02  创建SDK  263
12.03.03  开发简单的应用程序  264
12.03.04  部署  266
12.04  在App Engine中开发Flask的应用程序  267
12.04.01  使已有的应用程序运行  267
12.04.02  部署并运行  271
12.04.03  管理终端  272
12.05  调整:改善应用程序性能  274
12.05.01  根据Appstats进行性能测试  274
12.05.02  使用多线程来处理  276
12.06  性能调优:减少计费额  277
12.06.01  与计费有关的配置  277
12.06.02  计费表  277
12.06.03  节约实例的数量  279
12.06.04  减少数据存储的操作  280
12.07  测试  282
12.07.01  在测试代码内使用API  282
12.07.02  测试的执行  284
12.07.03  在真实服务器上测试  285
12.08  本章小结  285
第四部分  加速开发的技术
13  测试是不可分割的一部分  288
13.01  认清测试现状  288
13.02  在开发的各个阶段引入测试工作  289
13.02.01  文档的测试(文档评审)  289
13.02.02  编写测试的方法(输入与输出)  292
13.02.03  测试的执行与测试阶段的轮换(把什么工作做到什么程度)  295
13.03  本章小结:对测试不要抱有恐惧  298
14  便捷地使用Django  300
14.01  什么是Django  300
14.01.01  Django的安装  300
14.01.02  Django的架构  300
14.01.03  Django的文档  304
14.02  让数据库的集成更加方便  304
14.02.01  什么是数据库的集成  304
14.02.02  默认情况下Django能做什么  304
14.02.03  对,就是它,使用South就能够做到  305
14.03  使用fixture replacement使测试更加方便  312
14.03.01  什么是测试配置器(fixture)  312
14.03.02  默认测试配置器的不便之处  314
14.03.03  使用factory_boy  315
14.04  使调试更加方便  318
14.05  本章小结  324
15  使用方便的Python模块  325
15.01  简化日期计算的模块  325
15.01.01  日期计算的复杂之处  325
15.01.02  引入dateutil  327
15.02  简化模型映射的模块  329
15.02.01  必须进行模型映射的理由  329
15.02.02  映射规则的构造与复用  330
15.02.03  导入bpmappers模块  333
15.02.04  与Django的联动  335
15.02.05  编写JSON API  336
15.03  判断字符的编码  337
15.04  RSS阅读订阅的解析模块  339
15.04.01  导入feedparser模块  339
15.04.02  使用feedparser解析RSS阅读订阅信息  339
15.05  图像处理模块  340
15.05.01  安装PIL模块  340
15.05.02  转换图像格式  341
15.05.03  调整图像的尺寸  342
15.05.04  截取图像的某个部分  344
15.05.05  图像的过滤处理  345
15.06  数据的加密处理模块  346
15.06.01  PyCrypto的安装  346
15.06.02  共同密钥的加密与解密  347
15.06.03  公开密钥方式的加密与解密  347
15.07  调用Twitter的API模块  351
15.07.01  导入tweepy模块  351
15.07.02  应用程序的登录域和Consumer Key的获取  351
15.07.03  获得Access Token  354
15.07.04  调用TwitterAPI  354
15.07.05  开发使用Twitter认证的应用程序  356
15.08  本章小结  361
附录A  建立VirtualBox环境  362
附录B  建立操作系统环境  366

内容概要

作者简介:
BePROUD股份有限公司
BePROUD是一家专注于Python开发的公司,因云集了众多行业精英而闻名于日本国内。多年来的软件开发硕果累累,其精湛的技术水平,得到了客户及业界人士的认可和好评。
译者简介:
盛荣
曾就职于爱立信中国,长期从事通信、IT设备的研发、测试等相关工作。喜爱脚本语言,特别是Python。希望将Python等脚本语言更好地应用于自动化测试等领域之中。


 Python开发实战下载 更多精彩书评



发布书评

 
 


精彩书评 (总计2条)

  •     好久没有写书评了,一是因为最近书读少了,而是因为事情变多了,有点抽不开身,三嘛,我变懒了。废话少来,说重点。这本书的主要内容,从目录来看很杂,其实从页数上也能看出问题。几乎每一章都涉及一个大的框架或者开发工具。因此每一章讲的东西,其实都是一个大坑。真正说起来,每一章看完了,对相应的工具或者框架连个入门都算不上,只能是基本了解。所以,这里我就不废话这本书的内容了。如果你是一个Python程序员,这本书帮不到你什么太大的忙。因为其中的框架要么你都玩过,要么就是你有其他的更好的替代方案。这本书也不适合初学者,因为它完全没有介绍Python的语言,而是直接告诉你怎么搭建开发环境,做好代码管理和文档管理以及缺陷管理等工作。但是对于工具的介绍又不够深入,基本就是个蜻蜓点水,通过这本书你学不到什么实际的东西,连个完整一点的例子都没有一个。所以我想了半天也没弄明白这本书到底是个什么定位。说起来叫“开发实战”,实际上弄了半天跟实战没有半毛钱的关系,我真的不信一个新手看了这个就能完整的把python解释器、沙盒环境、各种packages、代码管理工具以及缺陷管理工具这些活都能做起来。硬要说的话,每章给个基本概念和quick-start类型的guide这种搞法,我只能说,这本书很适合产品经理。
  •     说实话,这本书我看不下去。看到书名中的“实战”二字,满以为有很多例子可供学习,可买来一读却发现相去甚远,这种心理落差无形中给本书又扣了一颗星。我不是python大牛,也不能算初学者了,但我感觉这两种角色从书里也学不到什么东西……书中说这其实是某个很牛逼有很多极客的公司内部的培训手册,也许在有非常实际的开发背景下,非常适合作为员工的入职培训教材吧,我只是站在自己的角度来评价的,呵呵。

精彩短评 (总计22条)

  •     准备给新人也写一系列类似的: )
  •     软件工程类书 不过还是很有用的 virtualenv和Hg
  •     这本书的定位很有问题......
  •     大部分是工作流程的介绍,还有工具的介绍。挺贴近实际工作的。
  •     全是干货,受益匪浅
  •     这并不是一本书,算是一些文档的集合。所以自己搜索书中关键字找点文章读一读就好了,考虑到时效性,现在用 Trello 和 Slack 代替书中的 ticket 系统和 Skype 更好些。
  •     这本书别买,坑
  •     是介绍python构建环境的,而不是将python具体编程的
  •     可快速了解运用python建站所需要的工具。
  •     略贵啊,不过很新,也很实战~
  •     不要对这本书寄望太多,其实没什么实战内容。但是这本书相对全面地介绍了使用Python开发一个项目所需要的各个工具,可以作为项目经理的流程梳理,也可以作为开发人员对于工具的查缺补漏。
  •     python开发(杂项配置)实战
  •     对团队里刚接触python的来说,还算有帮助
  •     一本只用读目录的书.....
  •     周五下午到的货,下了班吃饭睡觉,凌晨12点睡醒,拿起来开始翻,真的都是实战干货啊,哇哈哈,好高兴啊,学到了这么多知识,哈哈哈。。比如virtualenv的使用、文档的编写、测试、打包发布到PyPI、自动部署环境、GAE等等。。
  •     蜻蜓点水。 有点敏捷的味道, 介绍了不少工具,但是别指望用这个来学习太多工具的东西。 最后一章花了几页介绍virtual box的安装,连ubuntu的安装步骤都放出来了,骗稿费来的把?
  •     书名改成《python开发环境搭建与流程配置实战》就名副其实5星了。 话说现在搭环境配置什么的这么纷繁复杂各种坑,有这种书也是挺实用的!rst,Mercury,codereview流程,单元测试都是这里学的我会说吗? 感觉他是一本师傅领进门的指导书,具体代码几乎没有。取错了名字
  •     很烂的"技术"书
  •     很一般
  •     介绍了实际工作中的环境配置、流程、工具、测试
  •     有些书,只看书目就很有收获。 但看内容,收获增加不了多少。 读标题即可。
  •     干货太少。
 

农业基础科学,时尚,美术/书法,绘画,软件工程/开发项目管理,研究生/本专科,爱情/情感,动漫学堂PDF下载,。 PDF下载网 

PDF下载网 @ 2024