首页 > 代码库 > 为什么写作《Qt Quick核心编程》
为什么写作《Qt Quick核心编程》
我的第二本书《Qt Quick 核心编程》上市了,各个网站的预售链接已经上线:
本书的前言:淘宝惊喜价
china-pub
京东
亚马逊
今年(2014年)4月份,我开始写作《Qt on Android核心编程》,该书主要讲述Qt on Android的核心技术,比如信号与槽、元对象系统、Qt与Android的衔接、Android相关的开发主题等,对于界面开发,还是基于Qt传统的Widgets。
在写作的过程中,不断有技术同仁向我咨询Qt Quick的问题,有诸如对象如何声明、怎样定义函数等入门级的问题,也有QML与C++如何交互、如何定制ListView等进阶问题……于是我想,为什么大家关注Qt Quick与QML?结论很简单,正如Qt Quick的名字一样,用它来开发界面,真是飞一般的感觉;更让人快感迭起的是,Qt Quick里的绝大多数界面元素,都可以定制,都是任人装扮的小姑娘,甚至还可以从头开始快速构建专属于你的界面组件;还有顶顶重要的是,QML与Qt C++的完美结合为开发者带来了无与伦比的灵活性。
但是限于篇幅,这些精彩不能够在《Qt on Android核心编程》一书中介绍。于是我决定另写一本专门讲述Qt Quick的书籍,而且定位在入门层面,因为我本人也才入门而已。
Qt 5之后,Qt Quick与Qt Widgets并驾齐驱,成为Qt界面技术的双飞翼。而介绍Qt Quick本身的技术资料、书籍却少之又少。搜遍互联网,也很难找到系统介绍Qt Quick的文章,多数是开发者使用某个主题后的片段记录与日志。即使这些宝贵的经验片段,也因为Qt Quick版本的问题而不一定能够正常使用。更可惜的是,Qt Quick适用于Android等移动平台,而这方面的资料和实践,却更加芳踪难觅。所有这一切,既给我的学习增加了困难,也坚定了我写一本Qt Quick入门书籍的决心。
做出这个决定的过程也颇为艰难,因为写作《Qt on Android核心编程》给我和家人的生活带来了非常大的影响。独自完成一本书是一项非常浩大的工程,工作量不说,所花心思是极多极难量化的:你会担心选取的主题、角度是否合适,你提供的示例不仅要在语法和运行层面上正确,还要思量它是否能恰到好处地演示你讲解的主题……而在你念兹在兹、废寝忘食、心无旁骛、形容枯槁地琢磨着写作时,你也忽略掉了身边的老婆、孩子、亲友,你整天都在飘啊,挺奇怪的感觉,干什么事儿都是人在心不在,这样的你,对身边亲友的影响可想而知。我刚刚从这种状态中出来,还未及好好地放松几天,就又决定重开炉灶,锻铸新兵,对于我的老婆、孩子,都是很难启口之事。可是我又担心一旦放下当前火热的念头,哪天想重新来过时,却激情不再冷灰难燃。于是我偷偷地开始了这项工作,直到进行了将近一半时,才告诉老婆,相信她能理解,而她也确实理解并支持我,她是我最该感谢的人。
写作本书的过程,也是我学习的过程,书中多数章节都来源于我在自学时记录的笔记和完成的示例。对于我遇到的困惑,对于那些让我辗转反复难以理解的主题,我特意将这个主题本身、它牵涉到的其他主题、它需要的基础知识都一一记录下来,能放在一起讲解的尽量放在一起,需要独立成章的,也费尽心思安排前后顺序。可以说,这本书是我在Qt Quick这条路上练级打怪的备忘录。
每当完成一个章节、一个示例时,我都感到由衷的高兴,可也感到莫名的失落:就快要结束了……当初《Qt on Android核心编程》完稿时,我就对这种爱女远飞、空虚、落寞、失去凭借与寄托的感觉很不适应。而现在我再次经历着这一切,我其实希望这是一场没有终点的旅行,但,它不是。
我把这一切记录在这里,我想说,爱过,写过,失落过,高兴过,低徊过,迷惘过,不管怎样,我从未对那些流过的汗水、付出的精力后悔过,如果还有机会,我还愿意再这样走上一遭。
为什么写作《Qt Quick核心编程》