大小:13.23M
更新时间:23-08-24
系统:Pc
python项目开发实战 第2版是一本Python项目开发流程实战手册,由日本BePROUD股份有限公司编著。本书的内容全部基于python开发事实,全部都是BeProud员工实际尝试、实践过的,可以给读者提供一些能实际应用且行之有效的知识,读过本书后,读者无需再去死记硬背一大堆晦涩难懂的概念,可以非常快速帮助读者学习如何高效处理项目问题。全书内容包括python项目与封装、团队开发环境、问题驱动开发、源码管理、jenkins持续集成等等,欢迎有需要的朋友免费下载阅读。
《python项目开发实战 第2版》来自真正的开发现场,是BePROUD公司众多极客在真实项目中的经验总结和智慧结晶。作者从Python的环境搭建开始讲起,介绍了Web应用的开发方法、项目管理及审查、测试与高效部署、服务器调试等内容,尽可能网罗了Python项目开发流程中的方方面面,有助于开发者建立有序生产环境,提高开发效率,让编程事半功倍。此外,在本书中Python仅仅是一个载体,很多知识点在非Python下也适用。
《python项目开发实战 第2版》分为4个部分,共15章。
第1部分“Python 开发入门”的重点将放在个人开发。内容涵盖 Python 开发过程中必不可少的工具的安装(第1章),简单的Web应用开发(第2章)以及 Python 项目的结构与包的创建(第3章)。
第2部分“团队开发的周期”将为各位说明多人团队开发的相关问题。这部分将重点介绍
团队高效开发过程中不可或缺的技术和技巧,内容涵盖团队开发前的环境调整(第4章)、项目
管理与审查(第5章)、源码管理(第6章)、文档(第7章)、模块设计与单元测试(第8章)、
封装及其运用(第9章)、持续集成(第10章)等。
第 3 部分“服务公开”将向各位讲解如何搭建与运用正式环境公开 Web 服务(第11章),
此外就是有关性能调节的一些方法(第12章)。
第 4 部分“加速开发的技巧”可以说是加速开发的一些小贴士。例如将测试的概念导入整
个开发流程以加快项目进度(第13章),Django 的基础及其进阶性、实践性的用法(第14章),Python 的辅助模块(第15章)等。
第1部分 Python开发入门 1 第1章 Python入门 2 1.1 安装Python 2 1.1.1 安装deb包 3 1.1.2 安装第三方包 4 1.1.3 virtualenv的使用方法 5 1.1.4 多版本Python的使用 7 1.2 安装Mercurial 9 1.2.1 Mercurial概述 10 1.2.2 安装Mercurial 10 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.1 Web应用是什么 24 2.1.2 Web应用与桌面应用的区别 25 2.1.3 Web应用的机制 25 2.2 前置准备 28 2.2.1 关于Flask 28 2.2.2 安装Flask 28 2.3 Web应用的开发流程 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和CSS 32 2.6 实现功能 37 2.6.1 保存留言数据 37 2.6.2 获取已保存的留言列表 38 2.6.3 用模板引擎显示页面 39 2.6.4 准备评论接收方的URL 42 2.6.5 调整模板的输出 43 2.7 查看运行情况 45 2.8 小结 47 第3章 Python项目的结构与包的创建 48 3.1 Python项目 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.py 62 3.3.2 留言板的项目结构 64 3.3.3 setup.py与MANIFEST.in——设置程序包信息与捆绑的文件 65 3.3.4 setup.py——创建执行命令 69 3.3.5 python setup.py sdist——创建源码发布程序包 71 3.3.6 提交至版本库 71 3.3.7 README.rst——开发环境设置流程 73 3.3.8 变更依赖包 75 3.3.9 通过requirements.txt固定开发版本 77 3.3.10 python 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.1 Redmine 88 4.1.2 安装Redmine 89 4.1.3 Redmine的设置 91 4.1.4 插件 93 4.2 版本控制系统 94 4.2.1 Mercurial与Redmine的联动 94 4.2.2 用于生成版本库的插件 95 4.3 聊天系统 97 4.3.1 Slack 97 4.3.2 Slack的特点 98 4.3.3 Slack做不到的事 101 4.3.4 Slack的注册 102 4.4 对团队开发有帮助的工具 102 4.4.1 Dropbox 102 4.4.2 Google Drive 102 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.3 Global Issue Templates 111 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.1 Mercurial版本库的管理与设置 125 6.1.1 服务器上的Uinx用户群设置 125 6.1.2 创建版本库 126 6.1.3 hgrc的设置 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.5 GUI客户端 147 6.5.1 GUI客户端的介绍 147 6.5.2 GUI客户端的优点 149 6.5.3 GUI客户端的缺点 151 6.6 考虑实际运用的BePROUD Mercurial Workflow 152 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.2 Sphinx的基础与安装 165 7.2.1 Sphinx的安装 166 7.2.2 reStructuredText入门 167 7.2.3 用Sphinx写结构化文档的流程 169 7.2.4 Sphinx扩展 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.6 API参考手册与程序的管理一体化 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.txt 232 9.2.3 requirements.txt层级化 233 9.2.4 为部署和CI+tox准备的requiremests 234 9.2.5 通过requirements.txt指定库的版本 235 9.3 小结 236 第10章 用Jenkins持续集成 237 10.1 什么是持续集成 237 10.1.1 持续集成的简介 237 10.1.2 Jenkins简介 239 10.2 Jenkins的安装 239 10.2.1 安装Jenkins主体程序 239 10.2.2 本章将用到的Jenkins插件 240 10.3 执行测试代码 241 10.3.1 让Jenkins运行简单的测试代码 241 10.3.2 添加Job 242 10.3.3 Job的成功与失败 244 10.4 测试结果输出到报告 246 10.4.1 安装pytest 246 10.4.2 调用pytest命令 246 10.4.3 根据pytest更改Jenkins的设置 246 10.5 显示覆盖率报告 247 10.5.1 安装pytest-cov 248 10.5.2 从pytest获取覆盖率 248 10.5.3 读取覆盖率报告 248 10.6 执行Django的测试 250 10.6.1 安装Python模块 250 10.6.2 Django的调整 251 10.6.3 示例代码 251 10.6.4 Jenkins的调整 255 10.6.5 “构建后操作”选项卡的设置 257 10.7 通过Jenkins构建文档 260 10.7.1 安装Sphinx 261 10.7.2 在Jenkins添加Job 261 10.7.3 Sphinx构建发出警告时令Job失败 261 10.7.4 查看成果 262 10.7.5 通过Task Scanner Plugin管理TODO 263 10.7.6 Task Scanner Plugin的设置示例 264 10.8 Jenkins进阶技巧 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.1 Ansible简介 282 11.2.2 文件结构 287 11.2.3 执行Ansible 288 11.2.4 与最初确定的结构相对应 288 11.2.5 将各步骤Ansible化 289 11.2.6 整理Ansible的执行环境 295 11.3 小结 296 第12章 应用的性能改善 298 12.1 Web应用的性能 298 12.1.1 Web应用面对大量集中请求时会产生哪些问题 298 12.1.2 针对高负荷的对策 299 12.2 评估留言板应用的性能 300 12.2.1 什么是应用的性能 300 12.2.2 安装ApacheBench 300 12.2.3 用ApachBench评估性能 301 12.3 gunicorn简介 303 12.3.1 安装gunicorn 304 12.3.2 在gunicorn上运行应用 304 12.4 nginx简介 306 12.4.1 安装nginx 306 12.4.2 检测nginx的性能 307 12.5 在nginx和gunicorn上运行应用 310 12.5.1 gunicorn的设置 310 12.5.2 nginx的设置 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章 轻松使用Django 327 14.1 Django简介 327 14.1.1 Django的安装 327 14.1.2 Django的架构 327 14.1.3 Django的文档 331 14.2 数据库的迁移 331 14.2.1 什么是数据库的迁移 331 14.2.2 Django的迁移功能 332 14.3 fixture replacement 339 14.3.1 什么是测试配置器 339 14.3.2 几种不便使用默认配置器的情况 342 14.3.3 如何使用factory_boy 343 14.3.4 消除“不便使用默认配置器的情况” 345 14.4 Django Debug Toolbar 346 14.5 小结 353 第15章 方便好用的Python模块 355 15.1 轻松计算日期 355 15.1.1 日期计算的复杂性 355 15.1.2 导入dateutil 357 15.2 简化模型的映射 359 15.2.1 模型映射的必要性 359 15.2.2 映射规则的结构化与重复利用 360 15.2.3 导入bpmappers 363 15.2.4 与Django联动 366 15.2.5 编写JSON API 367 15.3 图像处理 369 15.3.1 安装Pillow 369 15.3.2 图像格式转换 371 15.3.3 改变图像尺寸 372 15.3.4 剪裁图像 374 15.3.5 对图像进行滤镜处理 375 15.4 数据加密 377 15.4.1 安装PyCrypto 377 15.4.2 通用加密系统的加密及解密 377 15.4.3 公钥加密系统(RSA)的加密与解密 378 附录 401 附录A VirtualBox的设置 402 A.1 安装VirtualBox 402 A.2 新建虚拟机 403 A.3 备份虚拟机 404 附录B OS(Ubuntu)的设置 407 B.1 安装Ubuntu 407 B.2 SSH的设置 417 B.3 中文的设置 419 B.4 添加用户 419
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
应用信息
同类热门
类似软件
python qt gui快速编程:PyQt编程指南77.77M1124人在用 python qt gui快速编程:PyQt编程指南是一本PyQt开发指导手册,由英国程序员Mark Summerfield编著。全书主要讲述如何利用Python和Qt开发GUI应用程序的原理、方法和关键技术。全书共分四个部分:第一部分主要讲述Py
查看
python基础教程第2版中文高清pdf版29.63M813人在用本次分享的是python基础教程第2版中文高清pdf版,由于是PDF格式,因此用户需要安装PDF阅读器才能正常阅读,好了让我们回到正题。这是一本包括Python程序最基本的设计操作教程,介绍了Python的基础知识和基础概念,包括了列表、元组、字符串、字
查看
python入门经典教材45.5M1414人在用 python是诞生于一种开放源代码的脚本编程语言,语言风格清晰,具有较强的可读性,应用非常广泛。可对于部分新手程序员来讲,想要灵活运用python必须拥有一套秘籍,而小编今天分享的“python入门经典”就是非常优秀的秘籍,通过该书读者不仅能掌握p
查看
python学习手册第4版pdf版92.37M1524人在用 python是一种非常流行的开源编程语言,可以在各种领域中用于编写独立的程序和脚本,它不仅具备免费、可移植的特色,还拥有了极其强大的功能,使用起来也相当的方便。相信来自各个角落的程序猿已经发现,Python对于开发者效率和软件质量的关注,这无论在大
查看
Python性能分析与优化5.39M596人在用Python性能分析与优化是一本Python代码分析与优化指导书籍,由web程序员多格里奥编著。本书首先介绍了什么是性能分析,性能分析如何在项目开发周期中发挥作用,以及通过在项目中进行性能分析实践能够取得的效果。紧接着开始介绍分析性能所需的核心工具(性能
查看
python程序设计教程76.13M604人在用 pythony语言是一种解释型、面向对象的计算机程序设计语言,能够广泛用于计算机程序设计教学语言,系统管理编程脚本语言,科学计算等。但如何才能从入门到精通呢?这里小编特别提供python程序设计教程 pdf下载,由江红、余青松编著,清华大学和北京交通
查看
Effective Python:编写高质量python代码的59个有效方法25.93M1382人在用Effective Python:编写高质量python代码的59个有效方法是一本python编辑手册,由美国程序员布雷特·斯拉特金编著。本书以使用场景为主导的精练教学方式,汇聚了59条优秀的实践原则、开发技巧和便捷方案,并以实用的代码范例来解释它们。其
查看热门标签
网友评论1人参与,1条评论
最新排行
CCNA学习指南640-802第7版84.2Mpdf扫描版CCNA认证是思科认证过程的第一步,是当今所有思科认证的前提,但如何才能更好的入门呢?小编这里推荐大家阅读CCNA学习指南640-802第7版,这是国内首屈一指的CCNA应试宝典,由美国思科网络技术作家Todd Lammle编著。本书内容丰富翔实,全面系
查看
块数据 大数据时代真正到来的标志51.74Mpdf扫描版 块数据是一本首次创新性提出“块数据”这一概念的大数据图书,由大数据战略重点实验室编著。本书从一个新颖的视角——块数据,来看待大数据及其未来的发展,颇有创意!“条数据”和“块数据”的划分,师法自然,抓住了数据的本质。本书源于贵阳市领导在推进大数据应用
查看
妙趣横生的算法 c语言实现54.64M杨峰高清扫描版 妙趣横生的算法 c语言实现是一本算法入门经典书籍,由杨峰编著。本书内容丰富翔实,以通俗易懂的语言深入浅出地介绍了编程必备的数据结构、常用算法,编程实例,常见算法和数据结构面试题等,内容梯度科学,既适合入门,也适合进一步提高和研究。既涵盖基本理论,又
查看
hadoop核心技术pdf44.83M翟周伟pdf扫描版Hadoop核心技术是由百度Hadoop技术专家翟周伟撰写的一本Hadoop技术学习书籍,全书结合了百度大数据实践,直击企业痛点,主要对Hadoop的基本原理和优化配置由浅入深进行了详细分析,最后通过实战案例进一步讲解分析。本书对HDFS、MapRedu
查看
2017市政公用工程管理与实务pdf电子书20.82M 2017年市政公用工程管理与实务是根据2014年版《一级建造师执业资格考试大纲)) (市政公用工程) 而修订的全新版本,新版本以大纲为依据,力求做到理论与实践相结合,重点放在工程实践应用。全书共分三个部分:第一部分介绍了市政公用工程的各项专业工程技
查看
oracle数据库精讲与疑难解析131.82M赵振平pdf扫描版 oracle数据库精讲与疑难解析是一本ORACLE数据库疑点难点解析书籍,由赵振平编著。本书内容丰富翔实,可以帮助用户们解决Oracle的大部分疑难问题如安装Oracle时,不能启动安装界面……、安装Oracle时,安装界面显示乱码……、数据库不能
查看
windows内核安全与驱动开发203.53M谭文 陈铭霖pdf扫描版windows内核安全与驱动开发是一本Windows客户端安全软件开发指导书籍,由谭文,陈铭霖编著,全书主要讲解的是Windows客户端安全软件开发相关的驱动程序开发,书中的程序使用环境从32位到64位,从Windows XP到Windows 8都有涉及
查看
图像处理分析与机器视觉第四版pdf256.11M扫描版 图像处理分析与机器视觉第四版是一本图像处理分析书籍,由桑卡Milan Sonka,Vaclav Hlavac和Roger Boyle三人编著,兴军亮,艾海舟共同翻译。 本书涵盖的领域十分广泛,其中包括人工智能、信号处理、人工神经网络、模
查看
html零基础入门教程5.27M高清pdf版 html零基础入门教程高清pdf版是一本入门级的html语言学习图书,该教程详细的介绍了html是什么,元素与标签,属性,链接,图像,表格,页面布局css,web标准及验证等等,是学习制作网站最基础的教程。 html语言特
查看
第1楼 上海市浦东新区电信 网友