Nat*_*pos 1 gtk user-interface qt frameworks
我现在有一个想法开始开发一个简单的Qt/GTK +式框架,但我想在开始创建这个项目之前知道一些事情:
开发GUI /应用程序框架是一项重大任务.您可能希望非常清楚为什么需要编写其他框架.
你提到的两个项目都是开源的.为什么不从那里开始?
Ed您问GTK和Qt的结构是什么,是否需要编写自己的寡妇经理(答案:否)以及如何开始.至少前两个的答案在源代码中.不要忘记,任何领域的优秀从业者都要通过观察他人来学习.阅读代码也不例外.
编写GUI/app框架将是一次很好的学习体验,但是即使是一个相当小的应用程序框架也是一项非常大的工作,并且在你使用其他几个框架和widget工具包编写应用程序方面相当专业之前,你不应该解决这个问题. .
在这十年的早期,我做过一次这样的事情.那是在我为Mac编程超过15年,Windows超过10年之后,直接编程到他们的原生图形,事件和小部件API,以及各种面向对象的工具包,包括PowerPlant,MFC和MacApp.当我开始使用PalmOS应用程序时,我花了几周的时间编写了一个以PowerPlant为模型的非常小的应用程序框架.但是,如果没有这么多GUI系统的广泛和深入的经验,我就不可能取得成功.
为Linux/X11执行此操作更加有效.这是因为,与Mac OS和Windows不同,X11和Linux都不提供内置的用户界面小部件,或者提供图形基元或文本布局功能.GTK +是GNOME生态系统的一部分; 它提供了小部件,从GObject获取其消息队列和内部通信,依靠GDK抽象和简化其与X11的图形和事件通信,并使用Pango和Cairo进行文本渲染和布局.我通过该系统工作,它可能代表了许多非常聪明的人的许多人年的辛勤工作.而且我确信Qt非常相似.
所以如果你真的想这样做,我建议你:
如果你已经完成了几年,那么你将拥有适合处理自己框架的专业知识.