Qt 4
Trolltech新近推出其跨平台开发软件最新版本Qt 4,为高性能、跨平台应用程序的开发提供了一个完全框架。Qt 4新的特性和功能实现了对最复杂、最高级应用程序如强大的后端服务器程序等开发的支持。另外,Qt
4可以同Microsoft Visual Studio .NET相集成,使得商业Windows 开发人员充分利用Qt 4的优势,简化其程序开发和布署过程;Trolltech的双许可证模型也扩展到了Qt
for Windows,Qt开源开发人员可以将目光投向Windows平台。
Qt 概览
Qt是一个全面的C++程序开发框架。包含针对跨平台开发和国际化开发的类库和相应的开发工具。
产品功能全面
Qt是一个全面的C++程序开发框架,具备一系列的特性、功能和开发工具,能够开发高性能的、跨平台的、功能丰富的客户端和服务器端程序。
Qt类库:已含有400多个C++类,并且数目还在不断增长,该类库封装了端到端程序开发所需的所有结构体系。其杰出的Qt
API包含一个成熟的对象模型、丰富的类集合,还具备GUI编程、布局、数据库编程、网络化、XML、国际化、OpenGL集成等功能。
Qt设计器:强大的GUI布局和窗体构建器,能够快速开发高性能的用户界面,并为所有支持平台提供本地感观。
Qt Linguist:国际化工作流程工具集。使用Qt Linguist,开发团队可以将程序翻译任务外包给非技术翻译人员,不仅能提高翻译的准确性,还加快了本地化工作流程的速度。
Qt助手:帮助文件/文档浏览器,完全可定制、可重新发布,能够同基于Qt的应用程序一同发布。该助手可以帮助开发团队显著加快其文档化过程。
跨平台特性
Qt框架是为跨平台程序开发而设计,处于国际领先地位。Qt API和开发工具对于所有支持平台都是一致的,这样,开发人员只需学习一种API,就可以进行真正的独立于平台的应用程序开发和布署。使用Qt,开发团队可以在所有主流开发平台上创建应用程序,并支持所有主要的操作系统。Qt可用于下列平台:
Qt/Windows (Microsoft Windows XP, 2000, NT 4, Me/98)
Qt/Mac (Mac OS X)
Qt/X11 (Linux, Solaris, HP-UX, IRIX, AIX, 其他 Unix variants)
Qt为Unix、Windows, Mac平台封装了不同的API,还封装了用于文件处理、网络化(操作、协议)、程序处理、线程、数据库访问等的API。
Qt程序可以本地运行。所有源程序均相同,在所有主流平台如Windows、Mac OS X、Linux/x11上运行时都是对相同的源代码进行编译的。
Qt实现了真正的平台独立,只需编写一次代码,就可以布署在所有主要平台上。当在新的平台上进行布署时,只需简单的重新编译源代码库即可。
Qt易于使用
Qt开发人员只需学习一种API,就可以编写应用程序代码,并支持所有主要平台。
我们在Qt产品的易用性和直观性方面投入了很大的精力。对于我们的产品之所以能够成功,客户这样评价:Qt编程不仅使用简单,而且是令人愉快的。对于开发团队而言,使用Qt不仅增加了程序功能性,还在不影响程序品质的同时降低了维护需求。
统一的跨平台API使得编程人员可以把精力集中在具有附加价值的程序创新上,因为Qt避免了程序不同版本所带来的结构体系维护、管理以及界面改动等工作。
工作稳定、性能良好
经过数千名商业和开源程序开发人员在不同操作系统和编译器上的实际测试,证明对于高性能、资源密集型的程序开发而言,Qt是完全能够达到要求的。
Qt无需“虚拟机”、仿真层或大容量运行时间工作环境。它可以向本地应用程序那样,直接编写为低级图形函数,Qt程序能以本地速度运行。
开源软件
通过Trolltech的双许可证模型,Qt在一个商业支持的、经过证实的框架下充分发挥了开放源码的优势。
开源优势:包含一个开源开发团队,负责Qt的不断开发,另外,代码完全透明允许Qt开发人员了解Qt框架内部结构,可以对Qt进行扩展和定制使之适应他们自己的专门需求。
商业产品担保:包含客户要求的产品支持、专门的Qt开发团队、不断改进中的第三方工具、组件和服务系统。
产品是经过证实的
世界范围内有4000多家公司在使用Qt进行商业程序开发,并取得了良好的效果。
最新版本Qt 4实现了从通用工具箱到完全开发框架的转换,可以用于高级应用程序、后端服务器程序的开发,还可以同Microsoft
Visual .NET相集成。
Qt 4新增特性
为了提高开发人员的工作效率和生产力,Qt 4新增了大量的功能和特性,同时还对已有内容进行了改进,将产品扩展到了复杂和高端程序的开发上,包括:
重型图形:Qt 4的图形子系统提供了您创建高级用户界面所需的一切,适于创建高级、重型的可视化程序。Qt画刷支持半透明(α混合)、抗锯齿、可选的浮动坐标系、画刷路径和倾斜等。还增加了可互换的隐含画笔引擎和屏外渲染支持等。
扩展的多线程:Qt 4完全支持线程编程,充分利用多内核处理技术简化了程序创建的过程,提高了工作效率。Qt 4的高级多线程功能及其数据库集成、XML支持等特性,使得开发团队可以构建功能强大的桌面和服务器方应用程序。
速度和内存消耗改进:开发团队在使用Qt先进功能的同时,还降低了内存和资源的使用率。复杂、高性能程序用户可以在已有的计算环境下实现更多的功能。
同Visual Studio集成
Qt 4新增了同Microsoft Visual Studio .NET的无缝集成,允许Visual Studio .NET开发人员在一个熟悉的编程环境下轻松创建应用程序,使之运行在Linux、Mac
OS和其他桌面平台上。商业Windows开发人员可以从Visual Studio .NET内访问Qt工具和资源,包括Qt的直观API、GUI布局系统、集成的文档和模板等,适用于大多数Qt程序类型。另外,由于Qt支持所有主要的操作系统和新兴技术,它解决了Windows应用程序同API变动及操作系统不兼容之间的矛盾。
开源许可证支持Qt for Windows
Qt 4为所有支持平台提供双许可证模型,其中包括Qt for Windows。双许可证模型包括商业许可证和开源许可证,其中,商业许可证适用于私有的商业开发团队,而开源通用公共许可证(GPL)适用于开源开发工程。为了使双许可证模型适用于Windows,Trolltech将Qt进一步扩展到了Windows市场,加快了主流PC市场开源程序的开发。Qt
for Windows也已广泛用于商业软件的开发中。
产品版本
为了适应不同的软件开发需求,Trolltech为Qt 4提供下列版本:
Qt Console:Qt全新版本,适用于非GUI开发,如后端商业逻辑(business logic)和服务器软件等。
Qt Desktop Light:入门级GUI编程版本,包含跨平台桌面程序开发的Qt核心功能。
Qt Desktop:包含所有核心的Qt功能,外加企业级特性。
Qt 4 版本特性比较
Qt 附加产品
除了核心的Qt产品,Trolltech还提供以下主要附加产品:
Qt Solutions为使用Qt跨平台框架提供新的组件和工具,显著缩短用户的开发时间。
Qt Script for Applications (QSA)为应用程序提供Qt脚本功能,是Trolltech的跨平台脚本工具箱。QSA为静态的Qt/C++程序提供一个脚本界面,可以对程序进行定制和扩展。QSA只适于
Qt Desktop版本用户。
Qt Script for Applications
Qt Script for Applications (QSA)是Trolltech的跨平台脚本工具箱。Qt为静态的Qt/C++程序提供了一个脚本界面,可以定制和扩展程序。
Qt Script for Applications (QSA)是Trolltech基于Qt的跨平台脚本工具箱。有了QSA,可以简单的为用户提供可定制的程序。您可以开发Qt/C++程序,然后用户便可以根据自己的专门需求进行定制。
Qt Script for Applications是一个跨平台的工具箱,允许开发者利用说明性的脚本语言--Qt Script
(based on ECMAScript/JavaScript)来创建C++程序,使之脚本化。QSA使得开发者的程序对终端用户、VARs和他们自己的支持人员更有吸引力。这三方均可以利用脚本从开发者或Qt库提供的原功能中发展他们自己的新功能。
组件:
QSA库:C++库使得基于Qt的程序脚本化。
Qt脚本:一种简单易学的跨平台说明性脚本语言。Qt脚本基于ECMAScript标准(Microsoft's JScript, and Netscape's JavaScript也是基于该标准)。
QSA工作台:开发者为脚本人员提供的低负载、简易的脚本环境。QSA工作台包含语法突出、堆栈跟踪等。可以用来输入、编辑和运行脚本。
输入对话框:高级的GUI API允许脚本人员编写对话框以接收用户输入。
应用框架:含有一个扩展库,脚本人员具有文件访问和命令执行能力。
QSA允许开发者构建他们选择的程序对象(属于QObject子类),用于脚本引擎。这可以通过传递对象到一个QSA库函数来完成。QSA可以动态完成该任务,无需代码捆绑。
Qtopia Phone Edition
Qtopia Phone Edition含有所有的基本Qtopia应用,外加一个专为电话应用设计的用户界面。包括5个主要组件:平台、程序、用户界面、开发环境和同步框架。Qtopia Phone含有一套完全的应用程序,可以定制为适合电话用户的界面,外加一个Home屏显示时间重要数据,如未接电话、接受消息、日历事件等。它还包括一个通讯客户端、SIM卡管理器和拨号器。
组件介绍:
电话用户界面:专门为移动电话用户设计,其用户界面是可定制的,基于图标和列表的,可以工作在176 x 208像素的显示屏上。终端用户可以对其进行个人化设计,制造商和网络操作人员可以对其进行定制。
程序:Qtopia Phone含有一套强大的电话程序集,包括PIM,生产力、email、游戏、媒体播放框架(MP3、MPEG及其他)以及一些电话个人化应用。
平台:Qtopia Phone的核心功能表现在其平台级特色。通过强大的操作环境,它仅凭较低的内存就能实现smartphone功能。
开发环境: Trolltech提供了一整套工具集可以定制和扩展Qtopia Phone。强大的开发环境简化了在桌面系统进行开发,进而交互编译到目标设备的过程。
同步:用户可以把他们的电话跟Qtopia Desktop、Trolltech的跨平台桌面PIM集或Microsoft (R) Outlook同步。Qtopia Phone还可以同步连接、日志、多媒体文件和文档等。
Qtopia PDA Edition
Qtopia PDA Edition含一整套的辅助程序,包括商业生产力、个人信息管理、Internet内容、娱乐和同步桌面PC。
组件:
PDA用户界面:基本系统采用了一个基于图标的标签导航布局方案。它是完全可定制的,利用移动处理技术专门设计,用户界面操作简单、功能丰富。
程序:Qtopia包含一整套PDA导向的程序,如PIM、生产力、email、游戏、媒体播放(MP3、MPEG等)和各种个人化以及扩展应用。
平台:Qtopia PDA的核心功能表现在其平台级特色。通过一个强大的操作环境,Qtopia PDA是创建企业能力的PDA的理想选择。
同步:用户可以使他们的PDA跟Qtopia Desktop,Trolltech的跨平台桌面PIM集或Microsoft Outlook同步。Qtopia PDA能够同步连接、日志、多媒体文件和文档等。
开发环境:Trolltech提供了一整套工具,开发者可以用来定制和扩展Qtopia PDA。
另外,第三方开发者也可以创建其他的平台程序。到目前为止,大约为Qtopia PDA开发了1000多个应用程序。
Teambuilder
Teambuilder是一个分布式构建系统,充分利用了整个工作组的未用CPU周期,缩短了编译时间。
分布式编译软件,在现有开发机器之外形成一个虚拟的编译服务器。
Trolltech的Teambuilder利用现有开发机器未用的CPU周期构建了一个编译器空间。作为基于软件的、Linux/Unix C和C++分布式编译系统,Teambuilder是一个低成本解决方案。使开发者可以投入更多的时间到新代码的创建、编辑和测试上,而缩短了等待编译的时间。
Teambuilder可以直接安装,无需改变内核、系统或您的工作方式。而且,它不需要共享的资源子目录或NFS(网络文件系统)。您只需在每台机器上运行Teambuilder Daemon即可,就可以立即提高编译速度。如果希望进一步提高运行速度,还需要在添加更多的机器。
特性/优势:
高效:Teambuilder监控所有联网机器的速度,并且根据机器速度分配编译任务。
无缝集成:Teambuilder通常不需要改变已有的构建系统。只有采用多任务模式运行即可,如-j30,它就会分配任务给所有可用机器。
稳健性:如果一个Teambuilder机器从网络中断开,该机器的任务将会被分给其他机器。向Teambuilder组中添加或移除机器不会中断工作流程。
灵活性:可以采用不同的编译器,包括交互编译器。他们将根据名称和版本号同相应的工作任务匹配。
资源管理:Teambuilder可以处理远程编译器和本地程序包括链接的进度。这确保每台机器都不会过载。
控制:图形化的Teambuilder Monitor显示所有机器的状态,还可以调整优先权。
支持平台:Teambuilder目前支持Linux平台。对Unix的支持正在研究中。
Qt/Embedded
Qt/Embedded是一个完整的自包含GUI和基于Linux的嵌入式平台开发工具。
Qt/Embedded,Qt的嵌入式Linux端口,是完整的自包含C++GUI和基于Linux的嵌入式平台开发工具。
Qt/Embedded包含完整的GUI类集、操作系统封装、数据结构类、应用和集成类。另外,Qt/Embedded还包含程序开发、测试和调试的多种辅助工具。
大范围的Qt/Embedded API可用于多种开发项目。Qt/Embedded可以开发市场上多种类型的产品和设备,从消费电器(移动电话、联网板和set top盒)到工业控制设备(如医学成像设备、移动信息系统等)。
Qt/Embedded 的优势:
Qt/Embedded对嵌入式系统和设备提供以下优势:
同Qt Desktop相同的API:开发者只需学习一种API,源代码可以应用于多个目标桌面环境(Windows, X11, Mac OS X)和嵌入式Linux环境。
对嵌入式系统扩展了Qt的功能:开发者可以创建灵活的嵌入式程序,需要很低的内存和flash。
包含它自己的窗口系统:Qt/Embedded不需要其他的图形子系统。它本身含有递交图形到Linux所需的一切。
可定制应用:Qt/Embedded是超级可定制的。
完全组件化:为了节省内存,Qt/Embedded允许多余模块和系统的移除。
完全源代码:Trolltech提供完全的源代码给客户,使他们可以更大范围的调整性能规格和调试代码。
同Qtopia的集成:Qtopia--Trolltech的PDA和移动电话的软件平台和用户界面,利用Qt/Embedded被创建。Qt/Embedded可以方便植入基于Qtopia的设备中。
同Java的集成:Qt/Embedded可以同几种Java虚拟机集成。Java程序可以在基于Qt/Embedded的程序工作台上运行,提供同原程序相同的效果。
Qt Solutions
Qt Solutions提供附加的组件和工具,可以使Qt开发更加简单有效。
为了简化软件创建的开发工作,Trolltech投入了Qt Solutions。它包含新的组件和工具,应用于Qt框架中,帮助客户进一步缩短开发时间。
Qt Solutions提供:
专门平台组件和工具;
专门的工业组件和工具;
新的组件和工具,还没有包含在现有版本的Qt框架中。
Qt Solutions组件可以直接植入Qt对象中。Qt Solutions工具简化了Qt程序的开发。Trolltech还为新的版本准备了新的组件和工具。发布的完整组件和工具列表可以被相应更新。若希望Qt提供新的组件或工具,可以同info@trolltech.com 联系,或发给Qt Solutions mailing list 。
目前,所有的商业Qt企业许可证所有者可以免费得到Qt Solutions组件和工具。另外,在一个开放的源代码和商业许可证下,一些组件也都是可用的。
支持:对Qt企业版,Trolltech根据法定的支持和维护协议为客户提供Qt Solutions组件和工具。但是只对测试平台的特别Qt版本,提供备有证明文件的组件或工具。
|