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
果然都是店大欺客,客大欺店