标签
内容简介
本书按照一个Web产品从无到有、从简单变复杂、从基础到进阶的过程展开,多角度、全方位讲述Python Web开发。内容涵盖Web框架的选型与使用、数据库与ORM、缓存、REST与Ajax、网站架构、系统管理、测试与持续集成、消息队列与Celery、服务化与微服务、数据处理、并发编程、Python进阶技巧以及Web项目实践等,把一个网站工程从开发到上线的完整流程呈现在读者面前。 书中对Flask框架着墨尤多:从路由、配置、模板(Jinja2与Mako)、蓝图到上下文机制,再到Flask-Script、Flask-Migrate、Flask-WTF、Flask-Security、Flask-RESTful、Flask-Admin等主流扩展,并以文件托管服务等真实案例贯穿,帮助读者体会框架使用的精髓。除此之外,对Celery、Jupyter、Supervisor、SaltStack、Pandas、Gevent、asyncio等流行工具与技术也有较为详细的阐述,可作为技术选型时的参考。 全书内容基于作者在豆瓣的实际工程经验写成,既讲“怎么用”,也讲“为什么这样用”和常见的实践问题,适合作为Python Web工程师构建完整知识体系的案头读物。
编辑推荐
这本书最难得的地方,是它把「Python Web开发」当作一件工程事来讲,而不是只教人写几行Flask路由。全书沿着一个Web产品从无到有、从简单到复杂的脉络铺陈:先讨论为什么用Python、怎么选框架,再动手搭环境、写Flask应用,然后进入数据库、缓存、REST、部署、监控、持续集成、消息队列、服务化、数据处理,最后落到项目结构与代码质量。读者跟着走一遍,就能建立起对网站工程全貌的完整认知。 作者董伟明当时是豆瓣高级产品开发工程师,书中内容多来自豆瓣读书、电影、音乐等产品线的实战积累,因此诸如Nginx与WSGI容器怎么配合、MongoDB与Redis的经验教训、Celery队列与优先级的取舍、代码评审的标准,都带着一线工程的气息,而非教科书式的罗列。 当然要提醒一句:本书出版于2016年,代码以Python 2、Python 3.5、Flask 0.x与早期Celery为主,不少库早已大版本更迭。把它当作技术地图与工程思路的参考,遇到具体API时对照新版官方文档,收获会最大。
适合谁读
适合
- 有Python基础、准备用Flask等框架做Web应用的后端开发者
- 做运维或运维开发、希望理解Web应用部署与监控的工程师
- 需要了解Web工程全流程、便于和开发协作的产品与测试人员
- 想从脚本/数据分析方向扩展到Web服务的Python使用者
不适合
- 完全零编程基础的入门读者,书中默认已掌握Python语法与Linux基本操作
- 只想学Django或前端框架(React/Vue)的读者,本书以Flask为主
- 需要严格对照Python 3.10以上与最新生态版本写代码的读者
阅读建议
- 先读第1—3章并跟着敲一遍示例,把环境与Flask基本用法打牢,再按兴趣跳读后续章节
- 第6—10章的架构、部署与消息队列部分建议结合实际项目阅读,边查官方文档边验证
- 遇到书中Python 2写法或老版本API时,以官方最新文档为准做迁移对照,不要照抄
- 把第15章的项目结构与代码质量工具当作自查清单,读完后再回头梳理自己的项目
出版社简介
电子工业出版社
中国 · 成立于 1982 年
电子工业出版社是一家以电子信息及相关领域为出版特色的综合性出版社。从库内三千余种图书来看,其出版方向覆盖编程设计、人工智能、计算机综合、财经、摄影与社科等门类,既关注技术前沿,也兼顾大众阅读。代表图书包括《因子投资:方法与实践》《x86汇编语言:从实模式到保护模式》《RISC-V开放架构设计之道》《人工智能:语音识别理解与实践》《相控阵雷达技术》《雷达目标特性》及《100个Go语言典型错误》等,多围绕技术方法与工程实践展开。作者资源方面,有石川、李忠、王晓波、大卫·帕特森、安德鲁·沃特曼、余子濠等中外作者。受公开资料所限,暂不展开更多出版特色。
目录
- 第1章 初识Python Web开发
- 第2章 Web开发前的准备
- 第3章 Flask Web开发
- 第4章 Flask开发进阶
- 第5章 REST和Ajax
- 第6章 网站架构
- 第7章 系统管理
- 第8章 测试和持续集成
- 第9章 消息队列和Celery
- 第10章 服务化
- 第11章 数据处理
- 第12章 帮助工具
- 第13章 Python并发编程
- 第14章 Python进阶
- 第15章 Web开发项目实践
常见问题
这本书适合零基础学Python的人读吗?
不太适合。书中默认读者已会Python语法并熟悉Linux基本命令,直接从框架选型、包管理与虚拟环境讲起。零基础读者建议先补Python语言基础,再来读本书。
书里主要讲Django还是Flask?
以Flask为主。第3、4章用大量篇幅讲Flask的路由、模板、上下文机制及各类扩展,并配有完整案例;Django只在框架选型部分简单提及比较。
2016年的书现在读会不会过时?
部分内容确实过时,如Python 2相关写法、早期Flask与Celery版本。但网站架构、部署监控、缓存策略、服务化与工程规范等思路仍有参考价值,建议作为技术地图使用,具体API对照新版文档。
没有实际项目经验能读懂吗?
可以,但建议边读边练。书中案例较多,若只是通读容易停留在概念层面;动手复现文件托管服务、Celery任务等例子,理解会深入得多。
书中的示例代码在哪里获取?
作者在GitHub上有公开账号,书中也提供了勘误与示例代码的获取渠道。建议先搜作者仓库再动手,注意代码基于旧版本,运行前需做兼容调整。
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。