GUI 開發庫比較分析
阿新 • • 發佈:2018-12-21
跨平臺的開源 C++ 庫
Cinder 是 C++ 的庫,提供了網路、圖形介面、多媒體等功能。值得一提的是 Cinder 甚至支援 Windows UWP 開發。
Boost 是可供同行審校的 C++ 庫,功能豐富無所不包。
GacUI
vczh(江湖人稱輪子哥)開發的 GacUI 是一個支援 GPU 加速(似乎指的是 Windows 上的 D2D?)的跨平臺 GUI 庫,因此非常輕量,如果只是需要 C++ 來做 GUI 的話是一個非常不錯的選擇,因為 Cinder 和 Boost 可稱得上是重量級了。
下載開發工具 Release。然後看文件上手。
GacUI 在不同的作業系統上使用的繪圖技術:
- Windows : GDI, Direct2D 1.0, Direct2D 1.1
- Linux : Cairo + Pango
- OSX : CoreGraphics + CoreText
WinRT
微軟從 Windows 10 的 2018 年春季創意者更新(1803)開始的 Windows SDK 10.0.17134.0 引入了 WinRT,使得相容 C++17 標準的編譯器可以使用基於標頭檔案實現的 Windows Runtime (WinRT) APIs 庫來訪問 Windows API。
給我的感覺就是,微軟已經徹底扔下 MFC,從頭再來了。
總結
似乎現在業界對跨平臺圖形介面的需求越來越大,然而微軟似乎仍然鍾情於在自己的平臺上搞事情……反正 C++ 開發者想做 GUI 的話必然是能跨平臺更好,誰會想從頭再學 WinRT 呢?