声明式编程思想和EEPlat
声明式编程定义
声明式编程(英语:Declarativeprogramming)它是一种编程范式。程相对立。它描写叙述目目标性质,让计算机明白目标,而非流程。
声明式编程不用告诉电脑问题领域。从而避免随之而来的副作用。而指令式编程则须要用算法来明白的指出每一步该怎么做。
声明式编程通常被看做是形式逻辑的理论,把计算看做推导。声明式编程因大幅简化了并行计算的编写难度,自2009起备受关注。
声明式编程的比較
声明式编程和命令式编程的比較例如以下:
命令式编程:命令“机器”怎样去做事情(how),这样无论你想要的是什么(what)。它都会依照你的命令实现。
声明式编程:告诉“机器”你想要的是什么(what),让机器想出怎样去做(how)。
声明式编程的核心思想
声明式编程是一种自上而下的编程模式,编程的思考重点在于直接描写叙述程序的行为,而不是具体描写叙述程序的行为和实现细节。
声明式编程是一种相对于指令性编程更加简单凝练的直接描写叙述软件程序行为和目标的方式。
命令性编程(如C、Java等须要具体定义程序的流程和行为)很多其它的关注程序实现的细节。
声明式编程主要側重总体性、目标性,详细实现细节通过解析器或运行引擎来进行。
声明式编程是更加抽象更加高级的编程方式,使用更加简单同一时候忽略内部实现细节的编程模式。
EEPlat是声明式的开发平台
EEPlat通过自定义的“元模型体系”定义出对应软件系统的“元数据”,通过运行引擎解析运行“元数据”,终于展现成一个可运行的软件系统。能够看出EEPlat正是依照声明式编程的思想来组织整个开发过程。
通过EEPlat的后台,我们“声明”要开发的软件系统的界面内容和UI交互流、“声明”要开发的软件系统的数据模型、“声明”要开发的软件系统的业务逻辑和业务流程。“声明”完毕后。该软件系统就完毕开发,可以直接执行公布。
在EEPlat中,一个软件系统的开发过程,事实上就是对该软件系统从界面到数据及流程、业务逻辑的全面的完整的“声明”过程。
EEPlat也正是因为採用了声明式编程的思想,使用了元数据驱动的技术,才可以在概念上更贴近于需求,开发上更加高效。使用上更加方便简单灵活。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
声明式编程思想和EEPlat的更多相关文章
- 成吨提高开发效率:Intellij Shortcuts精简子集与思维模式
在线精简cheatsheet备查表:intellij.linesh.twGithub项目:intellij-mac-frequent-keymap Intellij的快捷键多而繁杂,从官方推荐的key ...
- go 学习笔记之仅仅需要一个示例就能讲清楚什么闭包
本篇文章是 Go 语言学习笔记之函数式编程系列文章的第二篇,上一篇介绍了函数基础,这一篇文章重点介绍函数的重要应用之一: 闭包 空谈误国,实干兴邦,以具体代码示例为基础讲解什么是闭包以及为什么需要闭包 ...
- 用好JAVA中的函数式接口,轻松从通用代码框架中剥离掉业务定制逻辑
大家好,又见面了. 今天我们一起聊一聊JAVA中的函数式接口.那我们首先要知道啥是函数式接口.它和JAVA中普通的接口有啥区别?其实函数式接口也是一个Interface类,是一种比较特殊的接口类,这个 ...
- EEPlat的元数据驱动的运行引擎
EEPlat採用了元数据驱动的核心思想,因而EEPlat最重要的就是完好的元模型体系及高效灵活的解析运行引擎.EEPlat的运行引擎通过解析基于元模型的元数据,解释运行形成终于的业务系统. EEPla ...
- 编程范式:命令式编程(Imperative)、声明式编程(Declarative)和函数式编程(Functional)
主要的编程范式有三种:命令式编程,声明式编程和函数式编程. 命令式编程: 命令式编程的主要思想是关注计算机执行的步骤,即一步一步告诉计算机先做什么再做什么. 比如:如果你想在一个数字集合 collec ...
- EEPlat的基于浏览器的在线开发技术
EEPlat的开发内容主要包含配置开发和基于API的扩展开发两块内容. EEPlat的配置开发基于后台的配置环境.直接通过界面操作配置就可以. EEPlat的配置平台是用EEPlat自解释构建的.本身 ...
- EEPlat的元模型体系
EEPlat的元模型体系是元数据驱动的必要条件之中的一个.仅仅有通过元模型可以完好的描写叙述一个软件系统.才可以完整的定义该软件系统的元数据,也才干真正实现软件系统的元数据驱动式开发.也就意味着一个软 ...
- spring思想分析
摘要: EveryBody in the world should learn how to program a computer...because it teaches you how to th ...
- react特性-声明式编程
网络上有很多关于声明式编程和命令式编程的对比和说明,但是大多都是大同小异,总的来说就是一句话"告诉电脑我要做什么,但是让电脑自己决定怎么做." 1.命令式编程. 这种编程模式比较常 ...
随机推荐
- WPF自定义ListBox样式
<!--竖向--> <Style x:Key="ListBoxStyle1" TargetType="{x:Type ListBox}"> ...
- java解析String类型t复杂xml,多级节点,最好的例子
需要用jar包 dom4j-1.6.1.jar 字符串xml如下: <root> <flw> <name>aa</name> <age>22 ...
- hdu1520(树形dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1520 题意:举办一个party,候选人当中有很多人之间有上下级关系,求没有直接上下级的最多的人数. 分 ...
- Eclipse中的SVN的冲突解决方案详解
版本冲突原因: 假设A.B两个用户都在版本号为100的时候,更新了kingtuns.txt这个文件,A用户在修改完成之后提交kingtuns.txt到服务器,这个时候提交成功,这个时候kingtuns ...
- HDU 2825 AC自动机+DP
题意:一个密码,长度为 n,然后有m个magic words,这个密码至少由k个magic words组成. 问这个密码可能出现的总数. 思路:首先构造AC自动机,由于m很小,才10 ,我们可以使用二 ...
- 在iOS7中改动状态栏字体的颜色
状态栏的字体为黑色:UIStatusBarStyleDefault 状态栏的字体为白色:UIStatusBarStyleLightContent 一.在info.plist中,将View contro ...
- 使用Hamcrest增强JUnit的测试能力
package com.jadyer.service; import java.util.HashMap; import java.util.Map; import org.hamcrest.Matc ...
- 2010多校第一题 hdu3440House Man 差分约束系统
给我们n座房子,房子的高度各不相同, 从最低的房子开始, 每次跳到更高的房子, 跳n-1次最能跳到最高的房子了,但是每次跳跃的距离不能超过d 将这些房子在一维的方向上重新摆放(但是保持输入时的相对位置 ...
- HDU 2828 DLX搜索
Lamp Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- 懒人模式Singleton模式Meyers版本号
直接看代码: /* Singleton模式保证:在一个程序,,一个类有且只有一个实例.并提供一个访问 它的全局访问点 在编程其中.很多情况下,需要确保有一类的一个实例 比如: windopws系统中仅 ...