五一假期前收到了人民邮电出版社寄来的书,我们写的《Qt5.9C++开发指南》终于正式印刷出来了!从年11月开始写书,到今天终于印刷出版,历时约一年半,现在它终于面世了。
成书过程
由于做项目的需要,在年开始转而用Qt编写软件。在本人学习Qt的过程中,买了好几本市面上可以买到的Qt编程的书,但是没有发现特别满意的书。《C++GUIQt4编程》和《Qt高级编程》虽然是比较经典的书,但是内容是基于Qt4的,一些内容与Qt5已经不兼容,照着这两本书学习经常出现问题。有的书写的像软件使用手册,缺乏完整的实例,只有类的特性的罗列和简短示例代码。有的书的实例程序包含大量构造UI的冗余代码,淹没了主要特性的说明,有扩充页数的嫌疑。有的书甚至只是列出实例代码,解说的很少。
作为一个既从事于教学工作,又一直从事软件开发的教育工作者,深知该如何学习和一个编程语言,也深知该如何由浅入深、通过实例和练习教学生学习一门编程语言。于是,在年底正好暂时没有什么项目要做,就决定开始写一本Qt编程的书,将自己的经验总结为一本书,为学习Qt的同学们提供一本有价值的书。
由于是自发决定写的一本书,没有项目资助(其实也根本不需要),也没有约稿时间限制,写作更加自由,完全按照自己的内容安排和时间进度来写。开始写书之后,除了日常的教学工作外,闲暇的时间几乎全花在写书上了。为了一个小的编程主题的实例程序,我可能花好几天编程并完善,然后再整理写出来。慢工出细活,全书的初稿用了10个月才完成,又用了1个月时间检查和修改。
完成全书后,我与人民邮电出版社联系并发去样章,很快收到肯定的答复,经过几次联系后就签订了出版合同。最终稿交给出版社之后,就由出版社编辑和排版,并按流程安排出版了。在此,非常感谢人民邮电出版社,特别要感谢负责此书的杨编辑。
我素来信奉“君子先行其言而后从之”的原则,在书没有写好之前不联系出版社,在书没有正式印刷出版之前不发布任何消息。现在书已经正式印刷出版了,好东西也需要介绍推广的,不然就是“养在深闺人未识”了,所以下面对本书的特点做一个介绍。
本书特点
Qt是非常优秀的跨平台应用开发框架,在专业应用软件开发方面,如果要考虑跨平台,Qt几乎是最好的选择。
1.本书专注介绍QtC++编程,Qt的C++类库是Qt的核心,适合于开发跨平台的桌面应用程序,例如在专业应用软件开发方面一般使用QtC++。本书不涉及Qt的另外一个编程语言QML,QML适合于开发移动平台上的应用。
2.本书在介绍各个编程主题的编程原理时,注重通过实例讲解编程原理,同时也注意总结类的主要用法。每个主题都精心设计了完整的实例程序,很多实例的源代码甚至可以直接用于自己的软件项目里,例如8.3节介绍GraphicsView绘图架构时设计了一个小型的矢量图绘图软件,能用这个程序可以进行简单的矢量图绘制。
基于GraphicsView结构的矢量图绘图程序
3.本书注意由浅入深地讲解编程原理,将一些基本方法和原理讲透彻。例如,在第2章“GUI应用程序设计基础”里先介绍了用QtCreator设计的.ui文件的原理,应用程序如何由.ui文件自动创建界面,再介绍手工代码创建界面的原理,搞清楚两种方法的关联之后,再介绍混合方式灵活设计UI界面。
4.本书注重内容的严谨性,所有实例程序均经过编译和测试,需要额外资料进行说明的地方均注明链接地址或搜索关键字。例如第15章介绍摄像头编程时,Windows平台不能实现摄像头录像,对此问题进行了说明,还给出了在Qt