[other] openharmony的桌面发行版和更多GUI框架,让类web编程语言成为主流
Tofloor
poster avatar
deepin
2023-02-26 23:59
Author

6D84F1314A4C4E1D6CD3B69C05CF4C70.jpg
在2023年2月25号的openHarmony技术峰会中,其“OS内核及视窗分论坛”和“生态与互联分论坛”的讲解内容多次提到了openHarmony与PC桌面系统。

那么,此次峰会也是在告诉同行,openHarmony也开始要做桌面操作系统,而且会有很多发行版,比如可以使用嵌入式GUI开发框架Qt、miniGUI,而且鸿蒙自己的Ark UI相关的编程技术会融入到这两个GUI框架中。

1. 开发套件Qt,重新去绑定ArkUi的ets

我们看下Qt,openHarmony社区的技术工作者是准备把Qt框架进行C++重写,绑定鸿蒙系统应用开发框架ArkUI的ets编程,而ets的整个语法与web前端的TS语法类似,你可以认为是前端语法脚本。

C5454741DA89B9B9499A2A157978BB93.jpg

99928E859A05DA04FA674B58564A5A6E.jpg

0F6953A4F35E0C6B90F81B821F965E12.jpg

可以从上图中看到,openharmony社区的开源贡献者正在积极对qt的前端和业务层进行改变,并进一步想办法使用arkui的ets编程方式。

2.嵌入式系统miniGUI,利用HVML让应用编程更简单

MiniGUI 是一款面向嵌入式系统的高级窗口系统(Windowing System)和图形用户界面(Graphical User Interface,GUI)支持系统,由北京飞漫软件技术有限公司的魏永明在 1998 年底开始开发。
52BD89560B0B89E57CC44B76FC7A3618.jpg

0541FF97931E2B381D92189E168355E0.jpg
截止2020年8月,MiniGUI 的最新版本是5.0.0,在它发展的过程中,它针对自己的应用软件搞出自己的编程语言HVML,语法与现在的HTML很相似。
3461AAB37AB83935A59F8ADE7181B9E3.jpg

魏永明本人在此次峰会中也更希望HVML在应用软件开发中成为更加成熟的编程语言,让传统的C语言、C++语言进入底层服务,HVML标记语言能完全编写相关业务代码和前端界面渲染。

结语:
关于openHarmony在2023年的技术峰会,有很多新技术可能我自己也并不是完全充分了解。但是,在应用软件开发这块,华为、openharmony社区开源程序员以及相关工作者、开源系统厂商都一致认为:类web编程方式,可以加速自己的软件应用生态的发展,学习成本也会降低很多

而且,类web编程在国内已经有更多的人才储备,对于很多互联网公司来讲人才成本也并不高,而且类web标记性编程语言对于后期的AI技术也能很快落地。无论是ets、HVML,还是Qt自家的QML,这都意味着编程语言的学习门槛会逐步降低,而拿出好的产品才是我们最终所要关注的事情。

Reply Favorite View the author
All Replies
hanzn-zzx
deepin
2023-02-27 00:07
#1

所以要让deepin也去兼容这些语言?

Reply View the author
deepin
2023-02-27 00:17
#2
hanzn-zzx

所以要让deepin也去兼容这些语言?

大可不必,qt现在已经有QML,DTK已经针对QML进行相关的GUi优化

Reply View the author
方老四
deepin
2023-02-27 01:17
#3

我还是更看好hvml在桌面应用开发的前景,因为他把解释器和渲染器进行了分离,解释器和渲染器可以运行在不同的机子上,适用于多屏显示的应用场景。WebKit是一个开源的渲染器,谷歌在此基础上搞了个blink,促使B/S应用大行其道。魏永明在此基础上也搞了个xGUI Pro,并且放*语言,自己用c语言开发了一个HVML语言解释器PurC,同时支持图形渲染和终端字符渲染,不仅适用于桌面应用,更适合多端应用的开发,将来替代Electron和QT技术,应该是大概率事件。

qt框架和浏览器渲染引擎的底层都是调用的c、c++库函数,但渲染引擎的抽象层次要高得多。类似于数据库技术,前者相当于开发者必须使用c++函数处理数据访问和存储的一切细节,后者等于使用sql语言进行描述就行了。渲染引擎使用的是HTML和CSS描述语言,这两种图形渲染语言的标准化工作已到H5和CSS3,已经很成熟了,而且不受哪一个厂商的控制。HVML可以理解为是在html和css描述语言的基础上,增加了20多个动词标签,用于*语言对业务逻辑的控制,实现了动态编程。

Reply View the author
deepin
2023-02-27 01:52
#4
方老四

我还是更看好hvml在桌面应用开发的前景,因为他把解释器和渲染器进行了分离,解释器和渲染器可以运行在不同的机子上,适用于多屏显示的应用场景。WebKit是一个开源的渲染器,谷歌在此基础上搞了个blink,促使B/S应用大行其道。魏永明在此基础上也搞了个xGUI Pro,并且放*语言,自己用c语言开发了一个HVML语言解释器PurC,同时支持图形渲染和终端字符渲染,不仅适用于桌面应用,更适合多端应用的开发,将来替代Electron和QT技术,应该是大概率事件。

qt框架和浏览器渲染引擎的底层都是调用的c、c++库函数,但渲染引擎的抽象层次要高得多。类似于数据库技术,前者相当于开发者必须使用c++函数处理数据访问和存储的一切细节,后者等于使用sql语言进行描述就行了。渲染引擎使用的是HTML和CSS描述语言,这两种图形渲染语言的标准化工作已到H5和CSS3,已经很成熟了,而且不受哪一个厂商的控制。HVML可以理解为是在html和css描述语言的基础上,增加了20多个动词标签,用于*语言对业务逻辑的控制,实现了动态编程。

最终还是看开发出来的产品到底有没有用户愿意去用。

Reply View the author
方老四
deepin
2023-02-27 02:13
#5

最终还是看开发出来的产品到底有没有用户愿意去用。

主要是开发者愿不愿意用的问题。6月底PurC1.0发布后,下半年魏永明将启动另一个项目,就是使用hvml语言进行应用开发的IDE,那时才会真正进入开发者的视野。hvml是个胶水语言,把用户使用其他语言如c、c++、Python产生的数据,适时地通过hvml解释器生成html和css文档在渲染器中显示。

Reply View the author
deepin
2023-02-27 02:27
#6
方老四

主要是开发者愿不愿意用的问题。6月底PurC1.0发布后,下半年魏永明将启动另一个项目,就是使用hvml语言进行应用开发的IDE,那时才会真正进入开发者的视野。hvml是个胶水语言,把用户使用其他语言如c、c++、Python产生的数据,适时地通过hvml解释器生成html和css文档在渲染器中显示。

那进度确实挺快。

Reply View the author
187******75
deepin
2023-02-27 02:47
#7
方老四

主要是开发者愿不愿意用的问题。6月底PurC1.0发布后,下半年魏永明将启动另一个项目,就是使用hvml语言进行应用开发的IDE,那时才会真正进入开发者的视野。hvml是个胶水语言,把用户使用其他语言如c、c++、Python产生的数据,适时地通过hvml解释器生成html和css文档在渲染器中显示。

开源不?

Reply View the author
deepin
2023-02-27 02:48
#8
187******75

开源不?

是开源的

Reply View the author
linux疯狂爱好者
deepin
2023-02-27 06:02
#9

很好很强大,但我还是选择Compose for Desktop和.net MAUI

😊

Reply View the author
fuuko
deepin
2023-02-27 16:40
#10

QML那坨狗屎就别拿出来秀了好吧,PC机完全用不了

Reply View the author
jankin
deepin
2023-02-27 18:21
#11
linux疯狂爱好者

很好很强大,但我还是选择Compose for Desktop和.net MAUI

😊

Maui没有Linux

Reply View the author
枫叶
deepin
2023-02-27 22:10
#12

Qt框架支持openHarmony, 可以理解,非得绑定ArkUI 是为啥?为了混合开发? 还是为了渲染模块走同一个RenderService ?

Reply View the author
deepin
2023-02-27 23:16
#13
枫叶

Qt框架支持openHarmony, 可以理解,非得绑定ArkUI 是为啥?为了混合开发? 还是为了渲染模块走同一个RenderService ?

都有考虑,但最终目的是为了降低开软件开发者的学习难度。

Reply View the author
Rubbish
deepin
2023-02-27 23:47
#14
Reply View the author
Rubbish
deepin
2023-02-27 23:48
#15
枫叶

Qt框架支持openHarmony, 可以理解,非得绑定ArkUI 是为啥?为了混合开发? 还是为了渲染模块走同一个RenderService ?

应该是统一渲染

OHOS目前也没别的渲染后端了

Reply View the author
Rubbish
deepin
2023-02-27 23:48
#16

挺好,国产发行版比较成功的几个技术栈都是Qt,应用软件也都是Electron或者Qt,可以迁移过去

Reply View the author
deepin
2023-02-28 00:22
#17
Rubbish

应该是统一渲染

OHOS目前也没别的渲染后端了

统一渲染,目前也就苹果在用这种方案。

Reply View the author
deepin
2023-02-28 00:22
#18
Rubbish

挺好,国产发行版比较成功的几个技术栈都是Qt,应用软件也都是Electron或者Qt,可以迁移过去

deepin也在用。

Reply View the author
New Thread

Popular Ranking

Change

Popular Events

More
国际排名
WHLUG