2020年10月22日14:10:28
關於windows,linux,mac跨平台桌面應用開發選型,我開始的選擇是c#,基本足夠使用,但是也不得感嘆,.net core的發展也是非常快,基本快趕上java了,但是很多地方,
開箱即用的還差得有點多,加上我本來是想轉cpp方向,只是試用了一下,基本很不錯做桌面,做web方向還是不建議
然后我開始尋找c++ ui庫,比如Duilib 很多大公司在用,但是看了下官方博客很多年不更新了,比如騰訊,或者迅雷開源的sdk,看了下更新還是挺多的,但是迅雷的只是開源訪問的api,
騰訊的也還行,最后發現https://github.com/ocornut/imgui imgui這個是更新比較多,文檔不齊全,也是大家都比較推薦的ui庫,還就是qt,這個高大全基本不需要額外介紹,輕量級就選 imgui,不然就是qt
但是近期發現vs code原來是基於electronjs ,github的項目,很多成熟的幾個大項目也是使用這個,類似的庫還有nw.js。兩個理念基本一致,但是electronjs文檔,國內使用人數較多,相對於nw.js來說
https://github.com/nwjs/nw.js,nw.js也做了很多大項目,畢竟身后是intel相比較於我個人更傾向於electronjs
如果只是做一些不是特別重量型的應用我是比較推薦這種模式,可以直接使用electronjs 的模式開發,直接讓前端人員開發頁面,避免還需要完全上c++的那一套東西,復雜的應用,使用c++編寫應用難度和速度,還有人員配置量級完全不同,反正后台都是
api基本就無所謂了。
第二個關於跨平台的app技術選型,我最早使用是uni-app,但是之前爆發了一個十分重要的問題,就是你不能使用其他平台的廣告sdk,不然會被強制走uni-app的廣告聯盟,這個對於公司來說是致命的,可能對於個人app來說問題不大,
但是如果無法使用建議rax,阿里巴巴的開源庫https://rax.js.org/docs/guide/about
果然都是店大欺客,客大欺店