翻譯|使用教程|編輯:吳園園|2020-05-28 15:37:50.410|閱讀 593 次
概述:Qt2020年路線圖。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Qt是目前最先進、最完整的跨平臺C++開發工具。它不僅完全實現了一次編寫,所有平臺無差別運行,更提供了幾乎所有開發過程中需要用到的工具。如今,Qt已被運用于超過70個行業、數千家企業,支持數百萬設備及應用。
2020年對Qt來說將是激動人心的一年,因為我們即將發布很多優秀產品。起點是即將發布的Qt 5.15 LTS,預覽版本已可用。為了提高工作效率,我們為設計師和開發者提供了許多新功能。隨著Qt for MCUs的推出,我們擴展到全新系列的目標平臺。最重要的是,我們將在年底發布Qt的下一個重要版本 —— Qt 6。
在深入探討2020年計劃的新項目之前,我要感謝所有Qt開發者的貢獻。我們擁有一個貢獻者眾多的偉大生態系統,多年來提供了許多極有寶貴的貢獻,并在未來繼續塑造Qt。除了那些代碼貢獻者,還有許多活躍在Qt項目論壇、郵件列表、以及評審代碼和測試Qt開發版本的人們。
從一開始,Qt就是為開發者打造的框架和工具,而且長期以來,Qt也提供了自己的Qt Creator IDE。早期,我們為開發者提供了一個可視化的拖拽式設計工具,并作為產品的一部分,但是最近幾年,我們花了很多精力來改善我們為設計師提供的產品。那么,讓我們先從設計師工具開始介紹Qt的發展規劃。
設計師工具
去年12月我們在Qt Design Studio中發布了在2D設計工具中加入3D設計功能的首個技術預覽版本。目前,我們正在完善即將發布的Qt Design Studio 1.5,打磨2D和3D集成設計的體驗。在2020年下半年的后續版本中,我們將完善Qt Design Studio統一的2D和3D設計體驗和其他功能。
Qt Design Studio 1.5中改進了對Qt Quick 3D的支持,并充分利用了Qt Quick 3D在Qt 5.15 LTS中的所有改進。通過添加停靠widget使得可用性得到了改進。Qt Design Studio的各種視圖和控制窗口可以在所有顯示器之間自由移動。這使得設計師可以創建一個工作空間,該工作空間能匹配個人偏好和進行中項目的設置。
全新的UI流設計功能帶來了一個可視化編輯器,用于創建不同的視圖并定義它們之間的交互。這個需求呼聲很高的功能即使對于復雜的應用程序也可以直觀、快速地創建完整的應用程序設計。Qt Design Studio 1.5的另一個重要且備受推崇的功能是支持僅在設計和開發期間可見的注釋。這些注釋允許設計師和開發者在設計應用程序時交流。下半年,我們將致力于改善多語言應用程序的設計體驗,并支持直接從Qt design Studio生成UI/UX規范文檔。
Qt Design Studio已經支持各種內容的導入。Photoshop和Sketch可以直接集成,3D內容可以通過常見的交換格式(如FBX)導入。每個新版本都將進一步改進這些功能。為了擴展可用的圖形設計工具集成,我們計劃為Adobe XD等新工具提供額外集成。對素材導入格式的改進也在進行中,特別是在創建3D應用程序中常用的格式,如FBX和glTF。除了設計工具集成,還可以集成到外部AR/VR應用程序,如Autodesk VRED,我們正在考慮集成外部模擬應用程序。
開發者工具
Qt開發者也有各種各樣的專用工具,我們正在不斷改進它們。Qt Creator是我們為開發者提供的主要工具,它匯集了許多其他工具,一般都作為Qt Creator IDE的插件創建。當然,開發者也可以使用我們的設計工具,它們也為那些主要編寫代碼的人提供了諸多明顯的好處。事實上,設計工具是基于Qt Creator的,只是隱藏了那些對設計過程沒有價值的部分。因此,讓我們深入了解我們正在為Qt Creator和其他開發工具所做的工作。
Clang已經存在很長一段時間了,我們一直在不斷地改進對Clang及其附屬工具的支持和使用。目前,我們正致力于通過Clang、Qt Creator和其他工具改善對C++的支持。在Creator中一旦可以更新Clang將使C++ 20得到支持。當我們為C/ C++啟用基于Clang的解析器時,升級的翻譯工具將從Clang的支持中收益。
Qt Creator IDE提供了突顯多種語言語法的功能。目前正通過語言服務器協議(LSP)推廣對不同語言的支持。對于用戶來說,這意味著改進了對Python和QML的支持。對于Qt Creator中的其他項目,我們正在研究簡化Qt Creator擴展構建的步驟。這將有助于通過Qt Marketplace創建和提供單獨的Qt Creator擴展。
我們將繼續在Qt中改進對CMake的支持,并與Kitware合作解決CMake上游需要修復的問題。利用CMake還意味著Qt用戶可以從新CMake版本中添加的功能中獲益,比如最近發布的CMake 3.17。
良好的文檔是Qt的基本價值,隨著Qt 5.15 LTS的推出,我們將擴展QDoc來生成DocBook,這是一種專用于軟件文檔的標準化XML格式。該功能是我們開源社區做出寶貴貢獻的一個范例。除了不斷增強文檔內容之外,還有很多進行中的幕后工作,以確保我們的文檔在Qt 5.15 LTS、6.0和更高版本中保持世界級水平。
Qt for MCUs
隨著越來越多基于微控制器的設備具有顯示功能,我們希望進入這一細分市場。在嘗試將Qt縮小到所需水平之后,我們意識到這種方法對于大多數常見用例都不可行。為了正確應對這一細分市場,我們開發了Qt for MCUs,并在去年年底發布了第一個完全支持的版本。在2020年,我們將支持新設備和操作系統,并呈現許多重要功能。
Qt for MCUs的核心是一個完全重寫的Qt Quick Ultralite圖形運行時,具備適用于受限設備的QML功能子集。隨著Qt 5.15 LTS和相應Qt for MCUs版本的發布,我們在QML語言層面提供了完全的兼容性。由于Qt Quick Ultralite只支持QML的一個子集,所以兼容性僅限于所支持的功能。這使得以Qt for MCUs為目標的應用程序可以直接運行在Qt 5.15 LTS上——并且可以高效利用Qt工具。對于同時在微控制器和微處理器上使用Qt的組織來說,完全的兼容性至關重要。
Qt for MCUs已有一些很棒的工具了,我們將在2020年大幅改進這些工具。對于開發者而言,我們正在擴展Qt Creator IDE的使用,并將整個開發者體驗提升到Qt用戶熟悉的Qt for Device Creation級別。我們還增加了Qt Design Studio對MCU的支持,讓設計師和開發者能在微控制器的開發上無縫協作。
Qt 5.15 LTS
Qt 5.15 LTS已發布了三個測試版,正處于開發的最后階段,計劃在5月底發布。對于商業許可證持有者而言,Qt 5.15 LTS將獲得三年支持,就像Qt 5.12 LTS和Qt 5.9 LTS一樣。對于開源用戶來說,Qt 5.15是一個普通的Qt版本,沒有長周期支持,就像Qt 5.14和Qt 6.0一樣。
Qt 5.15 LTS最重要的新功能之一是完全支持的Qt Quick 3D,它為Qt應用程序添加3D功能提供了易于使用且高效的API。3D引擎是基于與Qt 3D Studio相同的運行時——深度集成了Qt Quick并增強了性能。Qt Quick 3D的一個關鍵優點是能夠將2D和3D Qt Quick無縫結合到一個應用程序中,包括用于動畫的統一定時器。
圖形領域的另一個重要新項目是RHI的技術預覽—— Qt全新的渲染硬件接口。RHI是Qt 5.15 LTS的一個可選功能,可以用于在Metal和Vulkan等新圖形API上運行Qt。但也有一些限制,例如,RHI在Qt 5.15 LTS中只支持Qt Quick (2D),而、尚不支持新的Qt Quick 3D。RHI將是Qt 6.0的圖形基線,但對于那些想要嘗試的人來說,Qt 5.15 LTS已經提供了RHI。
其他與圖形相關的重要項目是Qt 3D的多項改進,提高了性能和功能。有人可能會問為什么有兩種不同的3D方法:Qt 3D和Qt Quick 3D。部分是由于歷史的原因 —— 過去,我們也曾考慮過將這些方法組合在一起。然而,Qt Quick 3D和Qt 3D用途不同 —— 一個是將3D內容添加到Qt應用程序的易于使用的API,另一個是轉換和調整3D渲染的多種特性的通用框架(甚至可以用它創建自己的渲染器)。
雖然我們在Qt 5.15 LTS中有很多新的圖形功能,但這還不是全部。我們在QML中也做了很多工作來改進語言和功能。大多數新功能是為Qt 6開發的,但是我們已盡可能多地為Qt 5.15 LTS進行了調整。Qt 5.15 LTS中新的QML功能包括QML類型注冊和一些其他特性。
與以往一樣,許多部分將在Qt 5.15 LTS中得到有價值的增量改進。Qt for WebAssembly, Qt for Python,以及用戶要求的許多不同模塊的Qt功能。安卓支持將獲得許多可用性改進、文檔完善和一些新功能,如使用本機文件對話框。除了增加新功能外,我們為Qt 5.15 LTS所做的重要事情之一就是標記那些我們計劃在Qt 6.0中更改或刪除的API。當開發者將他們的應用程序移植到Qt 6時,這將有很大的幫助。
Qt 6
Qt下一個重要版本將于今年年底推出。
Qt 5.0于2012年12月發布,因此Qt的重要版本之間相差8年,這與Qt 4.0和Qt 5.0之間的7.5年非常接近。就像Qt 4一樣,Qt 5在這些年里添加了很多東西——我們正計劃對Qt 6做同樣的事情。Qt 6.0開發的最初重點是Qt Essentials功能。我們希望確保在Qt 6.0發布之前完成所有需要的更改,以便能夠在整個Qt 6系列中保持二進制和源代碼的兼容性。我們正努力將Qt 6打造為滿足2020年需求的平臺,而Qt 6.0只是這段美好旅程的開始。
我們將在今年推出許多關于Qt 6.0的博客文章和網絡研討會,所以請繼續關注我們的頻道。
行業解決方案
除了我已經介紹過的通用工具和框架項目之外,我們還專門針對不同行業的需求開發了產品。Qt Automotive Suite將基于Qt 5.15 LTS,并且Qt Automotive Suite的用戶可使用所有Qt 5.15 LTS的功能。經安全認證的Qt Safe Renderer將有重大更新,為創建動態、安全關鍵的用戶界面提供更多功能。今年,它還將在更多的平臺上進行預集成和認證。Qt for Automation協議會不斷更新到新的Qt版本,并根據客戶反饋進一步開發。
Marketplace
我們在2019年Qt全球峰會上宣布推出Qt Marketplace,并在同年底上線,最初的內容來自多個合作伙伴和社區成員。越來越多的開發商正不斷添加新的內容。如果您從未訪問過,我建議您從//marketplace.qt.io進入。
除了來自第三方的內容,Qt公司還將利用Marketplace在Qt框架和工具的基礎上提供額外的內容。2020年,我們將不斷改進Marketplace的用戶體驗,尤其是購買和安裝體驗。Qt Creator 4.12集成了Marketplace,允許通過Qt Creator IDE直接查看市場內的可用選項。我們今年還將創建集成Marketplace的全新Qt安裝程序。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: