《Flask Web 开发实战》第二版已经开始写作,计划在今年完成这本书。那本《Python Web API 设计与开发》一直拖着没写完,让我感觉很焦虑。因为拖得太久,HelloFlask 群聊里已经开始谣传我转行送快递了 :D。
所以我想先把《Flask Web 开发实战》新版完成,这样这一年我至少完成了三个年度目标中的一个。「优化」是我擅长和喜欢做的事情,除了要用 Word 写之外,我很乐意给这本书写新版。
- 主页:https://helloflask.com/book/4
- 建议收集(或在文末留言):https://discuss.helloflask.com/t/topic/838
- 写作进度和动态:https://discuss.helloflask.com/t/topic/837
- 合同截稿日期:
2021 年 12 月 31 日2022 年 1 月 31 日 - 预计出版日期:2022 年
2~3 月6~7 月
内容变动
在各处收集了很多读者反馈和建议,综合我自己的规划,第二版主要有这些大的变动:
- 不再兼容 Python 2.7,基于 Python 3.x、Flask 2.x。
- 把大部分知识点集中到第一部分,让第二部分的示例程序内容更精简。
- 第 1 章使用 pip+venv(+pip-tools) 或 PDM 替代 Pipenv,增加更多对 PyCharm 的介绍。
- 第 6 章使用 Flask-Mailman 替代 Flask-Mail(同时引入介绍一些新的扩展,比如 Flask-Admin)。
- 删除第 9、10、11 章(删除后 3 个实战项目),仅保留 Sayhello 和 Bluelog,删减项目的部分功能会合并到这两个项目。
- 第 10 章删除实战项目,只保留 Web API 开发部分,会新引入 marshmallow 和 APIFlask。
- 第 12 章添加异步任务相关内容。
- 第 14 章添加 Docker 相关内容。
- 删除第 15 章(Flask 扩展开发)。
- 删掉一些在国内访问有问题的服务介绍,比如 SendGrid(第 6 章)、Heroku(第 14 章)、Twitter 第三方登录(第 11 章)。
大部分内容变动是在做删减,第一版 704 页,第二版内容会删减到 450 页左右。
代码片段
第一部分每一章都有一个示例程序,读者需要切换到每一个子文件夹运行,如果同时自己编写练习代码的话,很容易产生混乱。所以新版的考虑是,第一部分的示例程序不再给出可运行的示例文件(至少不在书里介绍),而是把所有的代码片段放到 HelloFlask 文档,以代码片段的形式组织。读者需要的话可以自己复制代码到本地运行。作为示例,第一章的代码片段可以在这里看到:https://docs.helloflask.com/book/4/snippets/c1/。因为前六章的代码片段变化不大,所以第一版的读者也可以使用这些文档。
P.S. HelloFlask 文档(https://docs.helloflask.com)是我最近刚创建的一个文档集合。所有和书相关的内容都会放到这里,比如勘误、代码片段、衍生文章等。后续也会在这里写一些扩展快速入门介绍、Flask 基础知识等 Flask 相关的东西。
书名
第二版因为有独立的书号,所以可以改书名。责编老师认为原书名就很好,换书名会浪费掉第一本书建立的品牌。我也基本同意这个观点。目前的考虑是主书名不变,出于营销的考虑,副书名或许可以加一个「Python」关键字,比如改成「Python Web 开发入门、进阶与原理解析」。
封面
目前这本书主页上的封面不是正式封面(我用画图软件在初版封面上随手涂了两笔 >_<)。目前的想法是把封面标题颜色换成深红色,然后换一个封面图案,不过暂时还没想好换成什么。
措辞
第一版是用 Word 写的,排版很痛苦,毕竟要在 Word 里面排版代码。第二版也要继续用 Word 写,而且更加痛苦,因为第二版的书稿是编辑老师用工具从 PDF 文件转制成 Word 的,大部分格式都变得很混乱。希望这是我最后一次用 Word 来写技术书。
对于第一版,我交的终稿和最终成书有一些内容的变化,编辑老师会修正错别字和一些病句。但是后面也发现有一些句子修改得并不合理,导致句子原意产生了变化。这次我会在出版前过一遍校正后的书稿,确保不会再出现这样的情况。
另外,编辑老师还会替换一些词汇用法,比如把「我」替换为「笔者」,这个笔者勉强能接受,但是笔者最不能接受的就是要把所有的「点击」改成「单击」。单击一个链接?这太奇怪了。今年和编辑老师再次沟通了这件事,事情终于有了变化,书中的「点击」在这一版不用再死板的按照出版社的规定修改为「单击」。新的读者不会被指导在网页上单击一个链接了。
周边开源项目
我的很多开源项目的开发都是写作驱动的,上一本书驱动我开发了那几个 Flask 示例程序和扩展,这一次同样会有一些开发计划:
- APIFlask:补齐所有文档,发布 1.0 版本。
- Bootstrap-Flask:添加 Bootstrap 5 支持。
- Flask-CKEditor:添加 CKEditor 5 支持,同时集成新版本内置的 Markdown 支持。
- Flask-WTF:添加多文件上传验证支持。
- Sayhello:添加分页、多语言、Markdown 支持等功能(总之就是尽可能把删减的示例程序里比较有意思的功能合并到这里)。
- Bluelog:把 Albumy 的除了图片相关的功能合并过来,会换一个名字(暂定 WeBlog),作为一个社交博客。
如果你对这本书的新版有其他建议和想法,欢迎提出。这两本新书相关的动态会发到 Twitter @helloflask 和我的公众号,欢迎关注。
2024,新版书还有希望不
辉哥, 会包含异步 IO 的内容吗?
不会。等 Flask 支持 ASGI 了,到时如果还有第三版,会再加入这些内容。
希望 618 能上市
辉大,不知这本书什么时候能看到
估计要年中,还剩下最后一章
可以用latex写书
这本书有生之年还能看到么??
能!最近这段时间每天早上六点五十就起来写书了。
赞赞赞赞赞赞赞赞赞
加油啊哈啊哈哈
太让人高兴了。真怕您把书第二版太监了。
等着你
建议项目中增加flask_apscheduler的介绍和应用
我查过那个图片上的快递单号了,查不到
辉哥加油,嘿嘿。
谢谢 :)
我想问一下,买了你的第一版,然后报错很多,第二版是不是也得重新买吗?真的好痛苦,刚买的,然后很灰心
欢迎发到论坛上,我来看下什么报错。
大佬加油哈哈,默默关注很久啦,很期待新书
谢谢,一起加油~
Grey~第二版的书什么时候出版呀?
最近感觉需要系统性学习flask了,建小项目各种Bug /(ㄒoㄒ)/~~
哈哈,上半年应该可以。
我看这本书的写作进度貌似只有5/14,不知道啥时候能买到这本书啊
今天新工作刚入职,接下来就会专心写书了,估计能在年后写完。
辉大加油!第一版买了学习,感觉很好,就是内容量太大,主次不是很清晰,学习曲线起伏,尤其是看到上下文那部分,一头雾水。。。希望第二版可以把上下文部分讲的更通俗些,再配一些实例代码就更好了。坐等第二版,支持辉大!
第二版会进行精简和改进,感谢支持!