最近我会将使用 Qt 开发的一些经验在这里分享出来,供大家讨论。
最近两三年,我们用 Qt 开发了一个在学校课堂授课的工具箱应用,其中不少经验对于借助 Qt 参与到桌面开发的人,或许有些帮助。不管你是刚刚接触到 Qt,还是已经用过一段时间,但是还想更好的使用 Qt 来完成自己的工作,我想都可以参与到这个讨论中来。
为了显得有些与众不同,我不准备采用知识点罗列的形式来讲解 Qt 的使用,而是以具体的任务为主线,看看如何用 Qt 实现一些功能。这些功能有些应该是通用的,也就是可以在任何项目中使用;有些是特定产品领域的功能。
但是既然是“框架性”开发实践,我也会谈到一些框架设计的理念。框架是跨语言、跨平台相通的,但是具体到 Qt 的实现,有其特殊性,也有局限性,这需要充分发挥 Qt 的优秀设计,还有 C++ 的语言特性,所以实现框架是使用 Qt 的各种机制的绝佳示例。
另外,这里介绍的很多组件、模块,都可以在 Github 上找到开源代码,你可以通过代码加深理解,也欢迎大家参与到这些开源项目中,一起壮大我们 C++ 开发的集体力量。