paip.提升用户体验以及效率----编程语言趋势以及第四代语言4GL

作者Attilax ,  EMAIL:1466519819@qq.com 
来源:attilax的专栏
地址:http://blog.csdn.net/attilax

编程语言分类:(按代际)
/
第一代:机器语言,汇编语言;
第二代:面向过程语言:c语言等
第三代:面向对象语言:c++,java等
第四代:面向用户语言   sql,html,css,工作流(图形化编程语言),代码生成器
其实应该还有脚本语言,动态语言,应该是三代半语言了..   PHP,RUBY,AHK,AAUTO..按键精灵等

关于第四代语言
/
第四代语言(Fourth-Generation Language, 以下简称4GL)的出现是出于商业需要。4GL这个词最早是在80年代初期出现在软件厂商的广告和产品介绍中的。因此,这些厂商的4GL产品不论从形式上看还是从功能上看,差别都很大。但是人们很快发现这一类语言由于具有“面向问题”、“非过程化程度高”等特点,可以成数量级地提高软件生产率,缩短软件开发周期,因此赢得了很多用户。1985年,美国召开了全国性的4GL研讨会,也正是在这前后,许多著名的计算机科学家对4GL展开了全面研究,从而使 4GL进入了计算机科学的研究范畴。

第四代语言特点:
///
.提供了功能强大的非过程化问题定义手段,用户只需告知系统做什么,而无需说明怎么做,因此可大大提高软件生产
前面几代都需要编程都指出指出怎么做(运行步骤),第4代在一定程度上只需要说明做什么(目的),不需要写出怎么做的过程。
工作流(图形语言)
报表生成器(Report Generator)是为用户提供的自动产生报表的重要工具,它提供非过程化的描述手段让用户很方便地根据数据库中的信息来生成报表,如ADF 
应用生成器(Application Generator)程序生成器(Program Generator),)
受限的自然语言加图形作为用户界面
一般认为4GL具有简单易学,用户界面良好,非过程化程度高,面向问题,只需告知计算机“做什么”,而不必告知计算机“怎么做”,用4GL编程使用的代码量较之COBOL、PL/1明显减少,并可成数量级地提高软件生产率等特点。许多4GL为了提高对问题的表达能力,也为了提高语言的效率,引入了过程化的语言成分,出现了过程化的语句与非过程化的语句交织并存的局面,如LINC
(1)生产率标准:4GL一出现,就是以大幅度提高软件生产率为己任的,4GL应比3GL提高生产率一个数量级以上。
(2)非过程化标准:4GL基本上应该是面向问题的,即只需告知计算机“做什么”,而不必告知计算机“怎么做”。当然4GL为了适应复杂的应用,而这些应用是无法“非过程化”的,就允许保留过程化的语言成分,但非过程化应是4GL的主要特色。
(3)用户界面标准:4GL应具有良好的用户界面,应该简单、易学、易掌握,使用方便、灵活。
(4)功能标准:4GL要具有生命力,不能适用范围太窄,在某一范围内应具有通用性。

4GL的不足
//

虽然4GL具有很多优点,也有很大的优势,成为了应用开发的主流工具,但也存在着以下严重不足:
(1)4GL虽然功能强大,但在其整体能力上却与3GL有一定的差距。这一方面是语言抽象级别提高以后不可避免地带来的(正如高级语言不能做某些汇编语言做的事情);另一方面是人为带来的,许多4GL只面向专项应用。有的4GL为了提高对问题的表达能力,提供了同3GL的接口,以弥补其能力上的不足。如Oracle提供了可将SQL语句嵌入C程序中的工具PRO*C。
(2)4GL由于其抽象级别较高的原因,不可避免地带来系统开销庞大,运行效率低下(正如高级语言运行效率没有汇编语言高一样),对软硬件资源消耗严重,应用受硬件限制。
(3)由于缺乏统一的工业标准,4GL产品花样繁多,用户界面差异很大,与具体的机器联系紧密,语言的独立性较差(SQL稍好),影响了应用软件的移植与推广。
(4)4GL主要面向基于数据库应用的领域,不宜于科学计算、高速的实时系统和系统软件开发。

paip.提升用户体验以及效率----编程语言趋势以及第四代语言4GL相关推荐

  1. paip.提升用户体验--提升java的热部署热更新能力

    paip.提升用户体验--提升java的热部署热更新能力 想让java做到php那么好的热部署能力  "fix online"/在线修复吗??直接在服务器上修改源码生效,无需重启应 ...

  2. 浩辰CAD 2021:深度升级,全面提升用户体验!

    在全球新冠疫情背景下,全球经济发展速度明显减缓,国内国外的市场竞争更加激烈,各企业对于提升数字化.网络化.智能化发展水平的需求也愈发迫切.这就需要企业配备更加全面和系统化的数字化设计平台,提高创新研发 ...

  3. 资深客服经理-教导企业如何有效降低客服成本,提升用户体验

    当下企业或者团队的任何一款产品,无论是网站,还是软件.APP或其他实体产品,客服始终是一个重要的组成部分. 面对客服人力成本一路上涨,很多企业希望降低成本.提升效率.尤其在电商.金融.线上教育.Saa ...

  4. 纯前端表格控件SpreadJS V12.1 隆重登场,专注易用性,提升用户体验

    ​ 一款优秀的开发工具,在更新迭代中,除了要满足不同场景的业务需求,也需不断优化已有功能,尤其是细节方面,要能为用户带来使用体验和开发效率的提升. 作为一款备受业界专家和开发者认可的纯前端类Excel ...

  5. APP开发中这十个细节能直接影响到用户体验,那么如何提升用户体验?

    随着软件开发技术的不断发展和完善,有众多同类选择的APP用户越来越挑剔,单单拼功能拼硬件已经不足以捕获用户芳心.在APP使用过程中,大部分用户无意识地培养出了对使用体验的重视感.这警醒企业,只盯着为用 ...

  6. 海外虚拟主机空间:如何使用CDN加速提升用户体验?

    随着互联网的迅速发展和全球化的趋势,越来越多的企业和个人选择海外虚拟主机空间.然而,由于服务器的地理位置和网络延迟等原因,这些网站在国内访问时可能会遇到较慢的加载速度和不稳定的用户体验.为了解决这一问 ...

  7. 中山一院——新一代的智慧医院建设,以流量分析为抓手,提升用户体验

    ​导言 中山大学附属第一医院,简称中山一院,位于广州市,始建于1910年,2019年中国医院排行榜发布,中山一院位居第六. 作为一家现代化大型三甲医院,中山一院在信息化系统的建设上是较为全面的,基于H ...

  8. 协众信息UI设计怎么提升用户体验呢

      随着软件行业的发展兴起的一个新的设计行业.UI设计除了对美观有要求外,还对用户体验有要求,这也是UI设计不同于其他设计的地方.那么,UI设计怎么提升用户体验呢?     1.层次结构     要确 ...

  9. 百度智能云联手爱奇艺,从云到边缘计算全面提升用户体验

    近年来,随着人工智能和云计算技术的飞速发展,边缘计算作为一种新型计算架构开始受到越来越多企业的关注和应用.百度智能云和爱奇艺作为国内领先的云计算服务提供商和内容提供商,也开始将边缘计算应用于实际业务中 ...

  10. 体验提升1:提升用户体验,应该从哪里开始?

    先说一下,企业为什么要数字化转型?或者说:数字化转型能给企业带来什么? 数字化转型是一个运用数字技术和新能源对企业业务持续优化的过程,是一次系统工程. 在这个过程中,数字化转型的企业能顾搜获的是体验提 ...

最新文章

  1. 第1章 游戏之乐——构造数独
  2. 【聊透SpringMVC】自学java和三大框架要多久
  3. Compose 手势事件:防止重复点击,双击,长按,全局触摸隐藏键盘
  4. 发布开源库的踩坑经历:jitpack.io
  5. 区块链BaaS云服务(36)欧盟“用户身份认证”ESSIF
  6. 文字处理的标签及属性
  7. 【Get 以太坊技能】CentOS 7 Geth 搭建私链
  8. 【Pytorch神经网络理论篇】 07 激活函数+Sigmoid+tanh+ReLU+Swish+Mish+GELU
  9. git gui怎么拉取项目代码_Git可视化极简易教程 — Git GUI使用方法
  10. 复制粘贴发明人、Java 和互联网创建者相继去世,向初代互联网大佬致敬!
  11. 亚马逊的人工智能将实时语音识别错误率降低了6.2%
  12. 应用系统架构设计[转]
  13. 复盘模型_如何运用MT4软件进行复盘,提高水平
  14. 再聊一聊测试职业发展
  15. 水滴IP告诉你:IP是什么?动态IP和静态IP有什么区别?
  16. 如何在手机上查银行卡号?进来手把手教你!
  17. CTF竞赛进阶 (一) 密码学
  18. VS导入easyx图形库
  19. ios13 微信提示音插件_ios13微信提示音如何进行更改
  20. NOIP2016 天天爱跑步 线段树合并

热门文章

  1. docker swarm英文文档学习-11-上锁你的集群来保护你的加密密钥
  2. SQL 查看SQL语句的执行时间 直接有效的方法
  3. Spring学习笔记(入门)
  4. 关于文件服务器共享文件的备份与恢复
  5. Objective-C写出Json文件(可作配置文件)
  6. 易宝典文章——玩转Office 365中的Exchange Online服务 之十一 怎样在Exchange Online中配置邮件传递限制...
  7. Mantis1.2.19 在Windows 平台上的安装配置详解
  8. Struts2常用标签总结
  9. 用C#语言实现http协议下的多线程文件传输
  10. Jquery特殊属性