了解 Qt

1,176 views

Published on

Qt presentation

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,176
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • This presentation is to be used under NDA only. For questions about NDAs, contact Cristy Hamley (cristina.hamley@nokia.com) or legal@trolltech.com
  • Legend: Devices and Screenshots (from top left) Dash Express by Dash Navigation, Inc. Digital cinema projector by Barco Nokia 5800 Xpress Music Netflix Player by Roku 3DMove by Midland Valley Exploration Ltd. Photo Uploader application by Hyves Coffee Machine powered by Qt Embedded KDE 4 desktop showing Dolphin and KMail Google Earth Daz3D by Daz Productions Details on these and other Qt-based applications and devices is available at http://www.qtsoftware.com/qt-in-use/.
  • Qt Contribution Model Qt source code repositories are open to the public Qt users can contribute their own code, translations, examples to Qt and Qt-related projects Contributions that are accepted are included in Qt, maintained and released to all Qt users under LGPL, GPL and commercial licenses
  • Write code once to target multiple platforms Reduce software development costs, shorten time to market Utilize an advanced GUI framework Focus on innovation, not infrastructure coding Produce compact, high-performance applications Count on professional services, support and documentation Choose the license - Commercial, LGPL or GPL - that fits you Qt contribution model – users and community actively participate in Qt development for faster innovation Take part in an active Qt ecosystem Intuitive API and first-class documentation Evergreen applications where Qt Software can absorb paradigm shifts or platform changes Input from Daniel: Code less: Write code once to target multiple platforms: Shorten time to market Create more : Focus on innovation, not infrastructure coding: Increase productivity Produce compact, high-performance applications and UI’s Deploy everywhere: Port to all major Operating Systems, desktop and embedded Flexible licensing Choose the license - Commercial, LGPL or GPL - that fits you Large and active Qt ecosystem 15 years of customer success and community growth + Nokia
  • Development Tools Qt Creator: Cross-platform integrated development envirinonment Qt Designer: GUI layout and forms designer Qt Linguist: Internationalization and translation toolset Qt Assistant: HTML help file/documentation reader qmake: Cross-platform build tool
  • Qt Creator 1.0 released: Cross-platform IDE Usability improvements in Linguist and Designer Qt SDK providing all tools and sources in simple installation (Qt Creator + Qt)
  • Animation framework incldudes states and transitions and anchor layout support “ Declarative” UI is a paradigm that lets you express how a UI should look and behave, instead of “imperative” which is how it should be created. DOM Access API is a W3C standard API’s like querySelector Improved Graphical Capabilities include OpenGL ES 2.0 graphics system, OpenGL 1.1 and 2.0 pixmap backends, effects for graphics view, OpenGL shader API, OpenGL vertex and index buffers, Icon theming (freedesktop.org) Performance focus in 4.6 is likely to include some graphicsview improvements such as recursive item access for faster painting. We'll need to research out of memory handling and exception safety for Symbian, thread safe painting, pixmap sharing across processes. There is also an effort to improve JavaScriptCore performance on ARM and use faster allocations where possible to improve painting performance on ARM
  • XML schema: Enable validation of XML using Schema. Community and Collaboration Tools (Research Project) Research on tools for enhancing multi-user and/or multi-site project collaboration. The tools may include, for example: version controlling; shared bulleting boards, clip boards, comments, and to-do lists; project-related communication; as well as real-time sharing of application. Some of these tools may also be used to improve open source community collaboration. Mobility Project: http://labs.trolltech.com/page/Projects/QtMobility Qt 3D Portability API (Research Project) Portability layer to reduce the pain of writing 3D applications for OpenGL and OpenGL/ES on desktop and embedded platforms. Next Generation Item Views (Research Project) A new model/view-like architecture that makes it easier and faster to make beautiful and usable lists, tables and trees.
  • Runtime charges apply when the Qt-based application is part of a joint hardware and software distribution and the main UI of the device is controlled by Qt.
  • 了解 Qt

    1. 1. Meet An introduction to the cross-platform application and UI framework
    2. 2. Agenda <ul><li>What is Qt? </li></ul><ul><li>Market needs </li></ul><ul><li>Qt Roadmap </li></ul><ul><li>Qt Everywhere </li></ul><ul><li>Qt in Nokia </li></ul><ul><li>Working with us </li></ul><ul><li>Conclusion </li></ul>© 2009 Nokia
    3. 3. Qt: A brief introduction <ul><li>Founded in 1994 </li></ul><ul><ul><li>Trolltech acquired by Nokia in 2008 </li></ul></ul><ul><ul><li>More than 250 employees in eight locations worldwide </li></ul></ul><ul><ul><li>Trusted by over 5,000 customers worldwide </li></ul></ul><ul><li>Qt: a cross-platform application and UI development framework </li></ul><ul><ul><li>For desktop, web and embedded development </li></ul></ul><ul><ul><li>Used by more than 250,000 commercial and open source developers </li></ul></ul><ul><ul><li>Backed by Qt consulting, support and training </li></ul></ul>© 2009 Nokia
    4. 4. Qt is used everywhere © 2009 Nokia From embedded devices to desktop applications By companies from many industries
    5. 5. The virtuous cycle © 2009 Nokia Increased use of Qt Larger Qt ecosystem More feedback & contributions Faster pace of innovation = a better Qt Open Source Commercial
    6. 6. Why Qt? <ul><li>Write code once to target multiple platforms </li></ul><ul><li>Produce compact, high-performance applications </li></ul><ul><li>Focus on innovation, not infrastructure coding </li></ul><ul><li>Choose the license - Commercial, LGPL or GPL - that fits you </li></ul><ul><li>Count on professional services, support and training </li></ul><ul><li>Take part in an active Qt ecosystem </li></ul>© 2009 Nokia 15 years of customer success and community growth
    7. 7. Qt architecture © 2009 Nokia Qt SDK Qt development tools Chipsets Qt modular class library Cross-platform support Windows Mac Linux/X11 Embedded Linux Win CE S60* Qt Designer GUI designer qmake Cross-Platform Build Tool Qt Linguist I18N Toolset Qt Assistant Help reader Qt Creator Cross-platform IDE *Coming soon Core GUI WebKit Graphics View Scripting OpenGL XML Multimedia Database Network Unit Tests Benchmarking
    8. 8. Market needs: Increased focus on <ul><li>Cross-platform applications and services </li></ul><ul><ul><li>Differentiated user experience across hardware platforms </li></ul></ul><ul><ul><li>Hybrid development: convergence of web and native applications </li></ul></ul><ul><ul><li>Cross-platform software across desktops and devices </li></ul></ul><ul><li>High application performance </li></ul><ul><ul><li>High performance regardless of underlying platform </li></ul></ul><ul><ul><li>Apps must exploit platform resources to deliver cutting-edge UI </li></ul></ul><ul><li>Shorter time to market </li></ul><ul><ul><li>Delivering functionality faster, without increasing cost </li></ul></ul><ul><ul><li>Targeting multiple languages and screen sizes </li></ul></ul><ul><ul><li>Maximizing efficiency by placing focus on innovation </li></ul></ul>© 2009 Nokia
    9. 9. Roadmap in brief © 2009 Nokia 2009 2010 <ul><li>Future direction </li></ul><ul><li>Deeper support for web/native hybrid development </li></ul><ul><li>Qt 4.6 </li></ul><ul><li>Expanded support for embedded and smartphone development </li></ul><ul><li>Enablers for cutting edge UI development </li></ul><ul><li>Qt 4.5 </li></ul><ul><li>Better out-of-the-box experience for developers </li></ul><ul><li>Best possible runtime performance </li></ul><ul><li>Up to Qt 4.5 </li></ul><ul><li>Cross-platform requirement </li></ul><ul><li>Improve developer efficiency </li></ul><ul><li>Shorter time to market </li></ul>
    10. 10. Roadmap © 2009 Nokia Framework Tools Research Identified STATUS Plan Existing <ul><li>Qt 4.5 – Performance </li></ul><ul><li>Improved graphics painting performance </li></ul><ul><li>Mac OS X Cocoa Framework </li></ul><ul><li>WinCE Phonon + webkit </li></ul><ul><li>Webkit: NPAPI, client side storage, Javascript SQL, Multimedia elements </li></ul><ul><li>Qt 4.6 – User experience </li></ul><ul><li>Declarative UI </li></ul><ul><li>Animation API </li></ul><ul><li>States & Transitions </li></ul><ul><li>Multi-touch & Gestures </li></ul><ul><li>OpenVG </li></ul><ul><li>JavaScript Unification </li></ul><ul><li>jQuery inspired DOM access </li></ul><ul><li>3D enablers </li></ul><ul><li>S60 and Windows 7 as new platforms </li></ul>Mar <ul><li>Qt Tools </li></ul><ul><li>Qt Creator 1.0 (Qt IDE) </li></ul><ul><li>Framework Research </li></ul><ul><li>Media services </li></ul><ul><li>Memory and resource handling </li></ul><ul><li>XML Schema support </li></ul><ul><li>Tools Research </li></ul><ul><li>Qt Creator 3.0 </li></ul><ul><li>Hybrid application development </li></ul><ul><li>Build systems </li></ul><ul><li>Community and collaboration tools </li></ul>1H 2H 1H 2H <ul><li>Qt/3D portability API </li></ul><ul><li>Next generation item views </li></ul><ul><li>The Mobility Project </li></ul>Scope Mar Nov <ul><li>Qt Tools </li></ul><ul><li>Declarative UI designer, Qt Creator 2.0, continue and enhance the Visual Studio and Eclipse plug-ins </li></ul>Nov 2009 2010
    11. 11. Qt 4.5 scope © 2009 Nokia <ul><li>WebKit improvements </li></ul><ul><li>QtWebKit can load any NPAPI-compatible plugin </li></ul><ul><li>HTML5 multimedia tag support through Phonon </li></ul><ul><li>Qt Everywhere </li></ul><ul><li>Qt for Mac OS X ported to Cocoa Framework </li></ul><ul><li>Applications can now make use of all 64-bit benefits </li></ul><ul><li>Performance </li></ul><ul><li>Major improvements in overall performance </li></ul><ul><li>Special focus on new graphics system </li></ul><ul><li>Benchmarking library added to Qt </li></ul><ul><li>Tools </li></ul><ul><li>Qt Creator 1.0 </li></ul><ul><li>Usability improvements in Linguist and Designer </li></ul><ul><li>Qt SDK </li></ul>
    12. 12. Qt 4.6 scope © 2009 Nokia © 2009 Nokia <ul><li>User experience </li></ul><ul><li>New animation framework </li></ul><ul><li>Gestures & Multitouch support </li></ul><ul><li>Improved Graphical Capabilities </li></ul><ul><li>Qt Everywhere </li></ul><ul><li>Qt ported to S60 </li></ul><ul><li>Qt for Windows 7 </li></ul><ul><li>Qt for Mac OS X 10.6 </li></ul><ul><li>Performance </li></ul><ul><li>OpenVG graphics engine </li></ul><ul><li>Optimizations to resource use </li></ul><ul><li>Architecture-specific improvements to ARM devices </li></ul><ul><li>Other </li></ul><ul><li>XML Schema Validation </li></ul><ul><li>WebKit DOM access API </li></ul><ul><li>JavaScript Engine Unification </li></ul><ul><li>Freedesktop.org Icon Theming </li></ul>
    13. 13. Research Projects © 2009 Nokia <ul><li>Web and Hybrid Development </li></ul><ul><li>Enhance the hybrid development capabilities of Qt and Qt Tools, combining web technologies and C++. </li></ul><ul><li>XML Schema support </li></ul><ul><li>Declarative expression of user interfaces </li></ul><ul><li>Tools Research </li></ul><ul><li>New build system with enhanced support for cross-platform application development on mobile/embedded and desktop platforms. </li></ul><ul><li>Tools for enhancing multi-user and/or multi-site project collaboration. </li></ul><ul><li>Mobility Project </li></ul><ul><li>New suite of Qt APIs for use cases that are common in mobile development (may be relevant for embedded and desktop, too) </li></ul><ul><li>First APIs: Service Framework, Bearer Management, and Contacts API </li></ul><ul><li>UI and Visualization </li></ul><ul><li>Qt 3D Portability API </li></ul><ul><li>Next generation item views </li></ul>
    14. 14. Qt licenses support all business models © 2009 Nokia *Runtime charges apply when the Qt-based application is part of a joint hardware and software distribution and the main UI of the device is controlled by Qt. Commercial LGPL v. 2.1 GPL v. 3 License Cost License fee charged No cost No cost Must provide source code for changes to Qt No, modifications can be closed Source code must be provided Source code must be provided Can create proprietary application Yes—no obligation to disclose source code Yes, if dynamically linked to Qt library No, application is subject to the GPL Support Yes, with valid maintenance agreement Not included, available separately Not included, available separately Charge for Runtimes Yes—in some instances* No, distribution is royalty free No, distribution is royalty free
    15. 15. Qt Everywhere <ul><li>Qt as the de facto standard for UI and application development </li></ul><ul><ul><li>Increase productivity: re-use code across devices and desktops </li></ul></ul><ul><ul><li>Shorter time to market for devices and services </li></ul></ul><ul><li>Vibrant ecosystem – 10x by 2011 </li></ul><ul><ul><li>Targeting at a tenfold ecosystem with Nokia’s increased investments, LGPL license option and new contribution model </li></ul></ul><ul><ul><li>Broader use of Qt will result in feedback and increased contributions, ensuring that Qt remains at the leading edge </li></ul></ul><ul><ul><li>Enables shared services across Nokia and other platforms </li></ul></ul>© 2009 Nokia Relative Growth for Jobs matching “Qt C++” Used with permission from Indeed.com http://www.indeed.com/jobtrends?q=Qt+C%2B%2B&l=&relative=1 Mobile Embedded Desktop Applications and Services Qt Cross-Platform Framework and Tools
    16. 16. Qt for Nokia platforms © 2009 Nokia Qt for millions of S60 smart phones S60, the world’s most popular software for smart phones, will become one of Qt’s supported platforms. Qt will be available for S60 as an optional add-on during 2009, preinstalled in devices in 2010. Qt will also be available to the Symbian Foundation. Qt enables the renewal of the developer offering, with improved productivity and developer fun. Qt is also a basis for a facelift of applications and the implementation of a new UI style. Worldwide Market Shares 3Q/2008 Qt for Maemo devices The Maemo platform powers devices such as the Nokia N810 Internet Tablet. Maemo is based on Linux/X11 – one of Qt’s supported platforms. The Maemo community has enabled dedicated Qt support of Maemo in the maemo.org Garage. Nokia services Nokia’s Internet services will run on a Qt and Webkit based common web runtime, across Nokia platforms and desktops.
    17. 17. Thank You Find out more at qt.nokia. com & www.qteverywhere.com

    ×