Atitit gui界面ui技术发展史与未来趋势

1. Gui技术的发展,从像素自绘到native控件体系,再到dsl h51

1.1. 编程语言的发展 从机器语言,汇编语言到本地native语言(c c++) 到vm语言(java  c#) 再到脚本语言(js php python等) 再到dsl(h5 sql 图像处理halcon matlab)1

1.2. Gui界面语言的未来趋势,dsl 系列 h5系列2

1.3. Ui的细化html ,css ,js,分离了布局,外观,与行为。。更加的领域特定了。。细化2

1.  Gui技术的发展,从像素自绘到native控件体系,再到dsl h5

第1阶段,ui像素自绘技术,canvas,各种语言的底层 gdi api ,opengl 等技术

第2阶段,Native时代常见的gui框架 常见的gui框架 mfc qt  .net-winform ,swing javafx

第3阶段,dsl系列 H5时代,支持h5的gui框架有qt  wpf  javafx   ie-com  dom微信小程序等。

基本上现在dsl时代,ui界面也很适合dsl,趋势应该是大部分dsl+小部分native比较好的格局。

Native的就不推荐了,swing winform 安卓 ios native。。

插件体系也没落了,flash  Silverlight Applet 等。。

Dsl体系正主流。。H5 wpf(xaml)。。但是推荐公有标准化的h5..不推荐wpf了,wpf就是ms的h5。。Java体系基本没有标准化的dsl,只有一些builder框架有一些私有的h5.。。

微信小程序就是腾讯的h5,也是属于一种私有化dsl ,私有化h5

Hybrid体系也不错

1.1. 编程语言的发展 从机器语言,汇编语言到本地native语言(c c++) 到vm语言(java  c#) 再到脚本语言(js php python等) 再到dsl(h5 sql 图像处理halcon matlab)

语言层次越高,可读性一般越好,可移植性越好,不过性能也越差了。。当然如果使用同样的类库的话,只是写点胶水代码的话,差别到是相对来说不大了。

机器语言, 可以说彻底淘汰,唯一的优点就是性能,其他基本全是缺点。。

汇编语言,貌似也基本淘汰,比起机器语言,提升了很大的可读性。。

native语言(c c++) 相对汇编语言可读性又大幅提升,性能方面不如汇编,但比vm语言要高。。。缺点是开发效率,以及可移植性仍然需要提升。。很多图像库貌似都是使用此开发。。依赖于性能的应用大有所为。

vm语言(java  c#)  改进了native语言的问题,增加一个vm层隔离开了os。目前的业界高层应用开发主力

脚本语言 带来更高的生产力。但目前ide的问题,大型复杂企业级开发还难当重任,目前貌似在轻复杂度代码领域比较大发展。

Dsl语言 ,领域特定语言。。比如H5做界面。。Sql做数据库查询。Matlab halcon使用的语言,用来做图像处理。。

更高的开发效率,特别对于特定领域,图像处理,界面,数据库查询等大有优势。。正则表达式,用来文本搜索等。

Dsl语言本身性能很差,但是它如果是调用类库的,类库使用底层语言书写的,所以对性能不影响。

1.2. Gui界面语言的未来趋势,dsl 系列 h5系列

界面是个很专门的领域,需要领域特点语言来做。。

Dsl系列是目前最好的趋势了。。Dsl里面最好的额就是h5了,跨平台,通用。。

1.3. Ui的细化html ,css ,js,分离了布局,外观,与行为。。更加的领域特定了。。细化

作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher

捕鸟王"Bird Catcher  kok  虔诚者Pious 宗教信仰捍卫者 Defender Of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak 万兽之王

简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴

全名::Emir Attilax Akbar bin Mahmud bin  attila bin Solomon bin adam Al Rapanui 埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当  阿尔 拉帕努伊

常用名:艾提拉(艾龙),  EMAIL:1466519819@qq.com

头衔:uke总部o2o负责人,全球网格化项目创始人,

uke宗教与文化融合事务部部长, uke宗教改革委员会副主席

Emir Uke部落首席大酋长,

uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,

uke 首席cto  奶牛科技首席cto , 软件部门总监 技术部副总监  研发部门总监主管  产品部副经理 项目部副经理

uke波利尼西亚区大区连锁负责人 汤加王国区域负责人 uke克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke布维岛和南乔治亚和南桑威奇群岛大区连锁负责人

Uke软件标准化协会理事长理事长 Uke 数据库与存储标准化协会副会长

uke终身教育学校副校长   Uke医院 与医学院方面的创始人

Uke 户外运动协会理事长  度假村首席大村长  uke交友协会会长

uke出版社编辑总编

转载请注明来源:attilax的专栏  ?http://www.cnblogs.com/attilax/

--Atiend  v4

Atitit gui界面ui技术发展史与未来趋势的更多相关文章

  1. atitit.gui界面纵向居中总结

    atitit.gui界面纵向居中总结 1.table法...这个简单.. 表格设置100%高度,<td align="center" valign="middle& ...

  2. atitit。gui 界面皮肤以及换肤总结 java .net c++

    atitit.gui 界面皮肤以及换肤总结 java .net c++ 1. Swing 的皮肤 1 1.1. windows风格 1 1.2. Mac风格 ( liquid 框架) 1 2. 如何给 ...

  3. Atitit.gui api自动化调用技术原理与实践

    Atitit.gui api自动化调用技术原理与实践 gui接口实现分类(h5,win gui, paint opengl,,swing,,.net winform,)1 Solu cate1 Sol ...

  4. 【Visual C++】游戏开发五十六 浅墨DirectX教程二十三 打造游戏GUI界面(一)

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/16384009 作者:毛星云 ...

  5. Web UI 技术发展历程

    本文内容 纯文本和静态 HTML 页面 服务器端技术 插件技术--ActiveX.Applet 和 Flash Ajax 异步时代和基于 JavaScript 的 UI 技术 RIA--Adobe F ...

  6. Atitit.获取swing ui 按钮控件的id 与名字 与JPDA 调试体系

    Atitit.获取swing ui 按钮控件的id 与名字 与JPDA 调试体系 1. Swing Inspector是一个Java Swing/AWT用户界面分析和调试工具,功能与firebug类似 ...

  7. PyQt5多个GUI界面设计

    版权声明:本文为博主原创文章,转载 请注明出处:https://blog.csdn.net/sc2079/article/details/90454379 - 写在前面 本科毕业设计终于告一段落了.特 ...

  8. 基于深度学习的车辆检测系统(MATLAB代码,含GUI界面)

    摘要:当前深度学习在目标检测领域的影响日益显著,本文主要基于深度学习的目标检测算法实现车辆检测,为大家介绍如何利用\(\color{#4285f4}{M}\color{#ea4335}{A}\colo ...

  9. 编程实战——电影管理器之界面UI及动画切换

    编程实战——电影管理器之界面UI及动画切换 在前文“编程实战——电影管理器之利用MediaInfo获取高清视频文件的相关信息”中提到电影管理器的目的是方便播放影片,在想看影片时不需要在茫茫的文件夹下找 ...

随机推荐

  1. Java RSA (SHA1withRSA)签名和验签

    static { try { SIGNATURE = Signature.getInstance("SHA1withRSA", "BC"); } catch ( ...

  2. V-rep学习笔记:机器人模型创建2—添加关节

    下面接着之前经过简化并调整好视觉效果的模型继续工作流,为了使模型能受控制运动起来必须在合适的位置上添加相应的运动副/关节.一般情况下我们可以查阅手册或根据设计图纸获得这些关节的准确位置和姿态,知道这些 ...

  3. Mybatis-Dao层开发之Mapper接口

    Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同上边Dao接口实现类方法. Mapper接口开发 ...

  4. Ubuntu18.04下使用Blender进行视频格式转换

    Ubuntu下可以使用Blender的Video Editing功能进行视频格式转换, 具体步骤: 打开Blender后, 在顶层菜单栏中, 将Choose Screen Layout修改为Video ...

  5. Dubbo整合SpringBoot

    目前的dubbo已支持和springboot集成,还是之前的例子,这次我们通过springboot容器来实现.借此了解一下基于springboot容器启动的dubbo的配置及使用. 1. 准备工作 创 ...

  6. ios中封装网络请求类

    #import "JSNetWork.h" //asiHttpRequest #import "ASIFormDataRequest.h" //xml 的解析 ...

  7. BigDecimal的用法详解(保留两位小数,四舍五入,数字格式化,科学计数法转数字,数字里的逗号处理)

    转自:https://blog.csdn.net/ochangwen/article/details/51531866 一.简介 Java在java.math包中提供的API类BigDecimal,用 ...

  8. 使用 Cobbler 自动化和管理系统安装

    设置一个网络环境可能涉及到许多步骤,才能为开始安装做好准备.您必须: 配置服务,比如 DHCP.TFTP.DNS.HTTP.FTP 和 NFS 在 DHCP 和 TFTP 配置文件中填入各个客户端机器 ...

  9. c语言之函数参数传递之数组篇(转)

    在VC中写程序都习惯了,一般数组作为函数实参时,最常用的方法就是引用和指针的方法,但是到C语言中就没有引用了,还有一种比较常用的方法: #include <stdio.h>void sor ...

  10. SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转)

    SPI.I2C.UART三种串行总线协议的区别 第一个区别当然是名字: SPI(Serial Peripheral Interface:串行外设接口); I2C(INTER IC BUS) UART( ...