使用XUL开发跨平台桌面应用
先上图:
现在使用html,css,js开发桌面的优势越来越明显了,硬件性能的不断提升,人力成本越发昂贵,用户对界面要求越来越高,全球化下企业间的竞争越发激烈。
桌面软件50%+的工作量都在界面开发这一层。如果用户发现软件好用,会对软件提过更进一步的要求。
“童鞋,这是一条日志信息是吧?打印出一个目标出现异常,我点击这条信息,让我跳转定位到这个目标呗。”
“这个异常目标名称能否改用红色字体?”
。。。。BALABALABALALA。。。。
“没问题,晚上加个班。“ (MD! 日志我用CStatic控件显示的。。。)
html开发界面很方便,而且界面那个漂亮呐。
但是。。。
可供嵌入的成熟的浏览器引擎也只有webkit, gecko。你非要说嵌入IE也能用于开发,我也没有办法。webkit著名的有cef, 怎么那么大?怎么一打开就崩了哦,没得事,有各种阉割版的,很小很好用,嘻嘻。怎么这个效果显示不出来,你割成哪个版本的了?不对,你是在哪个版本上割的?Gecko ?我翻山越岭,找到的怎么都是v1.9.2版的。
各种开源web embedding方案,无法提供满足商业开发所需的稳定和支持,是html开发桌面应用的第一大障碍。
第二个障碍就是。。。
做个进度条呗,自己造!
做个右键菜单呗,咦,怎么被窗口挡住了。
做个分割条吧,怎么这么复杂?
菜单栏,工具栏,表格,树形目录,多国语言,好吧,头有点大,让我先休息一会儿。
XUL是经过测试的真正的应用程序框架。著名的firefox浏览器界面就是用XUL开发的。XUL支持控件的本机显示,同样的标签在不同系统下使用本系统的外观,保证界面一致性,提高了用户体验。
可以使用css, html自定义内置控件.
第三大障碍:性能
"二师兄,曲线绘图怎么这么慢,机子都卡死掉了,CPU 100%,你看鼠标,这鼠标拖都拖不动。"
"大哥,同时显示几百个目标,现在图表绘制的数据都几百MB了"
"我这是服务器,32个核心,8TB的内存!"
。。。
高逼格的硬件是给高负载的应用配置的,不是给码农配置的。硬件性能不断提升的当下,软件需要处理的数据量在以更快的倍数提升。
Demo演示(13MB+2MB(插件大小)):
http://oltag.com:8080/yaolixing/18/10/07/他山界面演示v22.0.2_plugins.rar
OHUI for Linux have been completed, and will be released soon.OHUI source code being sold globally.
If you have any advice,please contact me:
https://groups.google.com/d/forum/other-hill-gui
or
QQ groups: 264695584
使用XUL开发跨平台桌面应用的更多相关文章
- Electron+Vue开发跨平台桌面应用
Electron+Vue开发跨平台桌面应用 xiangzhihong发布于 2019-12-23 虽然B/S是目前开发的主流,但是C/S仍然有很大的市场需求.受限于浏览器的沙盒限制,网页应用无法满足某 ...
- Electron开发跨平台桌面程序入门教程
最近一直在学习 Electron 开发桌面应用程序,在尝试了 java swing 和 FXjava 后,感叹还是 Electron 开发桌面应用上手最快.我会在这一篇文章中实现一个HelloWord ...
- 快速了解Electron:新一代基于Web的跨平台桌面技术
本文引用了作者“ ConardLi”的<用JS开发跨平台桌面应用,从原理到实践>一文部分内容,原文链接:segmentfault.com/a/1190000019426512,感谢原作者的 ...
- nodegui 使用react开发跨平台应用试用
nodegui官方团队提供了基于react 应用开发方式,同时我们集成官方的packer 进行快速的应用打包 项目说明 项目使用了官方的计算机应用,我使用官方的react starter,同时添加了p ...
- 使用JavaScript开发跨平台的桌面应用
任何可以使用JavaScript来编写的应用,最终会由JavaScript编写.--Atwood定律 Atwood's Law是Jeff Atwood在2007年提出的:"any appli ...
- 用HTML5+JS开发跨平台的桌面应用
通过Node.js和WebKit技术的融合,开发者可以用HTML5技术编写UI,同时又能利用Node.js平台上众多library访问本地OS的能力,最终达到用Web技术就可以编写桌面应用的目的. 选 ...
- 使用nodegui 开发高性能的跨平台桌面端应用
nodegui 是基于qt + nodejs 的跨平台桌面开发方案,官方同时也提供了很不错的文档 简单使用 使用官方的starter clone 代码 git clone https://github ...
- 带你从零学ReactNative开发跨平台App开发(七)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- 使用c++开发跨平台的程序
使用c++开发跨平台的程序 背景 在开发过程中,使用c++作为开发语言,通常被认为是痛苦的,啰嗦的,超长开发时间的.最近几年有各种各样的语言被广泛使用,相对比来说c++不是那么出彩.c++虽然年龄大, ...
随机推荐
- Android ToggleButton:状态切换的Button
Android ToggleButton:状态切换的Button Android ToggleButton和Android Button类似,但是ToggleButton提供了一种选择机制,可以 ...
- vue用js部分控制动画实现
上次我们提到用vue实现过渡动画,其实只讲了vue动画的一部分,用vue自带的css状态控制动画实现,不带js http://www.cnblogs.com/null11/p/7081506.html ...
- codevs4343 找回密码
题目描述 Description jrMz 很喜欢动漫<叛逆的鲁鲁修>(额= =不知道是不是因为他盯上了动画片里的 MM),他准备以一种神奇的方式降临<叛逆的鲁鲁修>世界,所以 ...
- codevs1174 靶形数独
题目描述 Description 小城和小华都是热爱数学的好学生,最近,他们不约而同地迷上了数独游戏,好胜的他们想用数独来一比高低.但普通的数独对他们来说都过于简单了,于是他们向Z 博士请教,Z 博士 ...
- java多线程编程核心技术(二)--对象及变量的并发访问
1.方法内部的私有变量是线程安全的,实例变量是线程不安全的. 2.A线程先持有object对象的lock锁,B线程可以以异步的方式调用object对象中的非synchronized类型的方法. 3.A ...
- 一个简单的js队列,逻辑很清晰
function Queue(type) { //type 是否是一个接着一个执行 function QueueConst() {} QueueConst.execute_ing=[], QueueC ...
- java 中public 类
java 中的文件名是以这个文件里面的public 的那个类命名的(也就是说文件名和这个文件里面的那个public 属性的class 名称一样), 同一个文件中不能放多个(超过2个)的pulic 类. ...
- LeetCode 706. Design HashMap (设计哈希映射)
题目标签:HashMap 题目让我们设计一个 hashmap, 有put, get, remove 功能. 建立一个 int array, index 是key, 值是 value,具体看code. ...
- mybatis Generator生成代码及使用方式(转载)
转载自:http://www.cnblogs.com/fengzheng/p/5889312.html 文章很棒,很不错,转了.
- 解析java中volatilekeyword
在java多线程编程中常常volatile,有时候这个keyword和synchronized 或者lock常常有人混淆.详细解析例如以下: 在多线程的环境中会存在成员变量可见性问题: java的每一 ...