使用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++虽然年龄大, ...
随机推荐
- zoj 2110 很好的dfs+奇偶剪枝
//我刚开始竟然用bfs做,不断的wa,bfs是用来求最短路的而这道题是求固定时间的 //剪纸奇偶剪枝加dfs #include<stdio.h> #include<queue> ...
- 1874 Bellman-ford算法 队列优化过的 用于稀疏图,有负权的图
#include<stdio.h> #include<algorithm> #include<iostream> #include<queue> usi ...
- [bzoj2879][网络流,动态加边]美食节[Noi2012]
就是bzoj1070的加强版,数据规模扩大了n倍,这样要是一次把所有边都加进去的话就爆炸了,,所以使用单路增广,增广过一条边后在加入下一条边. //By hzwer 1 #include<ios ...
- [Vue-rx] Pass Template Data Through domStreams in Vue.js and RxJS
domStreams enable you to pass additional data along the stream that can be provided by the template ...
- Java中集合List,Map和Set的差别
Java中集合List,Map和Set的差别 1.List和Set的父接口是Collection.而Map不是 2.List中的元素是有序的,能够反复的 3.Map是Key-Value映射关系,且Ke ...
- A Taxonomy for Performance
A Taxonomy for Performance In this section, we introduce some basic performance metrics. These provi ...
- CocoaAsyncSocket网络通信使用之数据编码和解码(二)
CocoaAsyncSocket网络通信使用之数据编码和解码(二) 在上一篇CocoaAsyncSocket网络通信使用之tcp连接(一)中,我们已经利用CocoaAsyncSocket封装了自己的s ...
- 创建SharePoint 2010 Timer Job
好久没有写博客了. 近期在使用SharePoint 2010中Timer Job的功能,有了一点心得,分享一下. 我个人觉得SharePoint Timer Job和Windows Service或者 ...
- Chrome 消息机制
Chrome浏览器扩展开发系列之十四:本地消息机制Native messaging 时间:2015-10-08 16:17:59 阅读:1560 评论:0 收藏:0 ...
- 负margin使用注意的一个问题
在项目实力中经经常使用到负margin 如: <div id="test"> <ul> <li>子元素1</li> <li&g ...