再版序
你正在阅读的这本书是《App Inventor 开发训练营》(以下简称《训练营》)的升级版。
《训练营》最初发布在百度阅读上,从 2015 年 5 月发布第 1 章“水果配对”,到 2016 年 7 月发布最后一章“函数曲线”(当时为第 16 章),历时 14 个月。后来百度阅读一度出现系统故障,于是笔者将图书内容转移到了 book2.17coding.net 上,维护至今。2017 年,笔者收到图灵公司的出版邀约,于是在线上内容的基础上补充了几章,再加以内容的调整与优化,最终,纸质书于 2018 年 9 月正式出版。
2018 年是 MIT App Inventor 汉化版登陆中国的第五个年头,经过四年多不间断的普及和推广,积累了一批早期的开发者——其中很多人成了《训练营》的读者。读者中有相当一部分是教师,有的教师将书中的部分章节开发成课程,并发表了自己的教学科研成果;读者中也有一些是青少年,他们在完成书中的案例之后,询问我何时还能发表新的案例。还有些读者在阅读过程中遇到障碍,通过微博或微信等渠道询问解决问题的思路。这些来自读者的反馈,让我感到欣慰的同时,也发现了图书中的诸多不足,并梳理了许多改进的思路。
就在《训练营》出版 2 年之后,笔者收到了编辑的升级邀请。众所周知,MIT App Inventor的版本一直处于更新之中,为了尽可能保持图书与开发工具的一致性,版本更新势在必行。加之此前对旧版的改进思路酝酿已久,我毫不犹豫地接受了邀请。于是便有了接下来长达 9 个月的改版之路——从 2020 年的 2 月初至 10 月末。在此期间,笔者的公众号“老巫婆的程序世界”一直处于停更状态。这是一个封闭式改版项目,任务比想象的要艰巨,耗时是原计划的三倍有余。
新版为何耗费这么长时间,跟旧版相比又有哪些特色?除了对书中全部案例的程序进行重新编写之外,我们还从以下几个方向做了大量调整与优化。
组织结构
《训练营》是一本以案例为主的技术书,当初的写作思路是以案例为线索展开对知识的讲解,因此,旧版各章之间在知识上存在递进关系。创作之初,虽然也考虑到了案例的种类,如游戏、教学、工具等,但并没有对这些案例进行分类,而是将不同类型的案例混杂排列。图书出版后有不少读者反馈案例逻辑复杂,知识点太多,学习起来有一定难度。此次改版的目标之一就是归类——将相同类型的案例规整为一个单元,让知识点的讲解更加聚焦,也让大家学习起来更加轻松。这样就有了新版的四个单元:趣味游戏、辅助教学、数学实验室以及实用工具。归类就意味着必然要打破旧版各章的顺序,同时打破各章之间知识的递进关系,因此新版也就不得不重建各章之间的知识连接。最后,替换代码截图的任务,转变为重写所有章节,新版不仅调整了整本书的章节组织,还改进了具体章节的写作模式(后面会单独说明),以及案例的展现方式,这就是新版耗费 9 个月的原因。
在此,用下面的思维导图展示下本书的单元与章目录。
应用案例
新版中保留了旧版的大部分案例,删减了 3 个:天气预报、寻找加油站及家庭账本;同时增加了 4 个:单选题(教师端及学生端)、农夫过河、音频笔记及节气钟。删减天气预报及寻找加油站的原因是,这两个应用调用了第三方提供的网络服务接口,这些接口的技术规格更新频繁,且更新后的接口不能兼容旧版本。当大家按照书中提供的方法编写程序时,无法获得预期的结果,产生了不少困惑。删减家庭账本的原因是讲解应用的篇幅过长,家庭账本在旧版中占了 7 章,且内容上涉及前后台之间的协作,是一个非常复杂的大型案例。如果大家对家庭账本案例感兴趣,日后有机会笔者可以考虑将这部分独立成书。在增加的 4 个案例中,单选题是以往读者期待学习的应用中呼声较高的一类;农夫过河丰富了数学实验室单元的内容,用来说明如何将现实问题转化为程序问题;音频笔记可以视作家庭账本的简易版;而节气钟则是笔者对自己的双重挑战——先做出来,再写出来!
写作模式
除了对结构和案例的调整,新版还对具体章节的写作模式进行了改进(主要指案例的具体叙述方式),目的是让读者不仅“知其然”,更要“知其所以然”。例如,在前几章的用户界面设计环节,补充了用户界面设计的基本思路和页面布局的基本原则等相关内容。这些改进部分要归功于本书的责任编辑刘美英女士。在计划改版之初,她给了我许多关于叙述方法的建议,尤其是在考虑读者体验方面,这使得新版弥补了旧版的不足之处,在此我要向她表示衷心的感谢。
版式与印刷
阅读编程类技术书很容易给读者带来紧张感与疲劳感,我们试图在新版中尽可能规避这个问题。新版在知识组织、排版形式和印刷方式上,进行了力所能及的优化:
在知识组织上,笔者对内容进行了细分处理,降低了知识的密集程度,并在必要的情况下添加了补充说明;
在排版形式上,统一了变量名、过程名的表现方式,并针对注意事项和说明性内容进行了区别于正文的版式设计;
在印刷方式上,新版采用了全彩印刷,确保块语言的优势一览无余。
篇幅有限,更多细节就不在此一一阐述了,还请大家尽快开启阅读之旅,期待此次改进能够带给大家更加轻松愉悦的阅读体验!
金从军
2020 年 11 月 1 日