Atitit 编程范式之道 attilax著 艾龙 著

1. 编程范式与编程语言的关系是什么? 1

2. LOP  面向语言编程(LOP, Language Oriented Programming) 2

3. OOP 2

4. AOP 2

5. Fp 函数式编程 2

6. 命令式  Imperative  2

7. 其他 2

7.1. 泛型式、 2

7.2. 产生式编程(Generative Programming) 自动生成源代码的编程也属于另一种编程范式 2

7.3. 过程化(命令式)编程  3

7.4. 事件驱动编程  ]响应式编程范式-- 3

7.5. 4个常用的编程范式:泛型式、元编程、切面式和事件驱动式。 3

8. 元编程  原来元编程就是编写能自动生成源代码的程序。" 3

8.1. 通过向导、拖放控件等方式自动生成源码 3

8.2. 产生式编程(Generative Programming 区别 3

8.3. 许多脚本语言都提供eval函数,可以在运行时将字符串作为表达式来运算[4]。 4

9. 参考资料 4

9.1. 编程范式,程序员的编程世界观 -- 简明现代魔法.html 4

9.2. 3.2 超级范式--提升语言的级别(2) - 51CTO.COM.mhtml 4

9.3. 编程范式思考问题 - huangshanchun的专栏 - CSDN博客.mhtml 4

1. 编程范式与编程语言的关系是什么?

如果把一门编程语言比作兵器,它的语法、工具和技巧等是招法,它采用的编程范式则是心法。

抽象的编程范式须要通过具体的编程语言来体现。范式的世界观体现在语言的核心概念中,范式的方法论体现在语言的表达机制中。一种语言的语法和风格与其所支持的编程范式密切相关。

2. LOP  面向语言编程(LOP, Language Oriented Programming)

有人认为LOP是继OOP之后的下一个重要的编程范式,我们不妨拭目以待。" 句号整理了一下头绪:"能不能这么说:如果处理一些复杂、非标准格式的文档,可以考虑用元...

语言导向式编程(LOP)通过创建一套专用语言DSL来编写程序。相比通用语言,DSL更简单、更抽象、更专业、更接近自然语言和声明式语言、开发效率更高,同时有助于专业程序员与业务分析员之间的合作。

语言导向式编程一般通过元编程将专用语言转化为通用语言。

3. OOP

4. AOP

5. Fp 函数式编程

6. 命令式  Imperative 

7. 其他

7.1. 泛型式、

7.2. 产生式编程(Generative Programming) 自动生成源代码的编程也属于另一种编程范式

--产生式编程(Generative Programming)[3]的范畴

7.3. 过程化(命令式)编程 

7.4. 事件驱动编程  ]响应式编程范式--

7.5. 4个常用的编程范式:泛型式、元编程、切面式和事件驱动式。

8. 元编程  原来元编程就是编写能自动生成源代码的程序。"

8.1. 通过向导、拖放控件等方式自动生成源码

元编程的例子比比皆是:许多IDE如Visual Studio、Delphi、Eclipse等均能通过向导、拖放控件等方式自动生成源码;UML建模工具将类图转换为代码;Servlet引擎将JSP转换为Java代码;包括Spring、Hibernate、XDoclet在内的许多框架和工具都能从配置文件、annotation/attribute等中产生代码。"

8.2. 产生式编程(Generative Programming 区别

也不尽然。"冒号马上修正道,"自动生成源代码的编程也属于另一种编程范式--产生式编程(Generative Programming)[3]的范畴。区别在于后者更看重代码的生成,而元编程看重的是生成代码的可执行性。另外,除了在编译期间生成源代码的静态元编程,还有能在运行期间修改程序的动态元编程。从低级的汇编语言到一些高级的动态语言如Perl、Python、Ruby、JavaScript、Lisp、Prolog等均支持此类功能。比如,

产生式编程与静态元编程都能自动生成源代码。产生式编程强调代码的生成,元编程强调生成代码的可执行性。此外,动态元编程并不生成源代码,但能在运行期间修改程序。

元程序将程序作为数据来对待,有着其他程序所不具备的自觉性、自适应性和智能性,可以说是一种最高级的程序。

8.3. 许多脚本语言都提供eval函数,可以在运行时将字符串作为表达式来运算[4]。

9. 参考资料

9.1. 编程范式,程序员的编程世界观 -- 简明现代魔法.html

9.2. 3.2 超级范式--提升语言的级别(2) - 51CTO.COM.mhtml

[编译]响应式编程范式--(1) - ttylinux - 博客园.mhtml

9.3. 编程范式思考问题 - huangshanchun的专栏 - CSDN博客.mhtml

Atitit 编程范式之道 attilax著 艾龙 著 1. 编程范式与编程语言的关系是什么? 1 2. LOP 面向语言编程(LOP, Language Oriented Programming相关推荐

  1. Atitit 互联网思维 attilax著 艾龙 著 1. 引 言 互联网思维制胜传统企业转型   第1节 传统企业互联网化,是未来商业浪潮的主旋律    传统企业的“互联网焦虑症”    互联网思

    Atitit 互联网思维 attilax著 艾龙 著 1. 引 言 互联网思维制胜传统企业转型   第1节 传统企业互联网化,是未来商业浪潮的主旋律   传统企业的"互联网焦虑症" ...

  2. MDSF:面向语言编程LOP(Language Oriented Programming)方法介绍

    好几年前看了JetBrains的CEO Sergey Dmitive一篇文章Language Oriented Programming - The Next Programming Paradigm才 ...

  3. 面向语言编程LOP(Language Oriented Programming)方法介绍

    好几年前看了JetBrains的CEO Sergey Dmitive一篇文章Language Oriented Programming - The Next Programming Paradigm才 ...

  4. vim切换编程语言_把 Vim 打造成源代码编辑器 - C 语言编程透视

    前言 程序开发过程中,源代码的编辑主要是为了实现算法,结果则是一些可阅读的.便于检错的.可移植的文本文件.如何产生一份良好的源代码,这不仅需要一些良好的编辑工具,还需要开发人员养成良好的编程修养. L ...

  5. C语言嵌入式系统编程修炼之道——背景篇

    C语言嵌入式系统编程修炼之道--背景篇 作者:宋宝华  e-mail:[email]21cnbao@21cn.com[/email] 不同于一般形式的软件编程,嵌入式系统编程建立在特定的硬件平台上,势 ...

  6. 单片机如何使用?51单片机C语言编程实例有哪些?

    大家好,我是无际单片机编程的徐明,今天和大家一起探讨一下"单片机如何使用?" 单片机如何使用,我们要知道单片机在哪里使用? 单片机是很多电子产品的核心器件,它具有一定的逻辑判断和事 ...

  7. C语言编程,从菜鸟到高手

    IT行业,应届毕业生不能顺利地找到理想工作的原因在于,没有编程的实战经验,即使是计算机科班出身的也会有相当的困惑!     就是说,即使你不是计算机科班出身,通过自己的积极努力,照样可以提高自己的编程 ...

  8. python aop编程_学习笔记: AOP面向切面编程和C#多种实现

    AOP:面向切面编程   编程思想 OOP:一切皆对象,对象交互组成功能,功能叠加组成模块,模块叠加组成系统 类--砖头     系统--房子 类--细胞     系统--人 面向对象是非常适合做大型 ...

  9. C语言编程>第一周 ⑧ 输入两个正整数m和n,求其最大公约数和最小公倍数。

    例题:输入两个正整数m和n,求其最大公约数和最小公倍数. 代码如下: /*程序分析:利用辗除法.*/ #include"stdio.h" main() {int a,b,num1, ...

  10. C语言编程>第一周 ③ 输入某年某月某日,判断这一天是这一年的第几天

    例题:输入某年某月某日,判断这一天是这一年的第几天 程序分析:以2020年8月8日为例,应该先把前八个月的加起来,然后再加上8天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天. 代码如 ...

最新文章

  1. 图灵1月书讯:阅新书辞旧岁,览经典迎新年
  2. 模式窗口window.open造成Session丢失的解决方法
  3. 搭建基于.NetFrameWork的私有nuget服务端及打包项目发布上传
  4. XP下安装装SQL2000企业版本
  5. 【MHA】--MHA 介绍(1)
  6. Vs2017添加引用时报错未能正确加载“ReferenceManagerPackage”包。
  7. C++ gbk与utf8互转
  8. KODI(原XBMC)二次开发完全解析(一)
  9. 45个纯 CSS 实现的精美边框效果【附源码】
  10. 计算机硬盘格式化三个步骤,电脑格式化五种操作方法教程
  11. Python基础之面向对象
  12. 整型数组——首尾相连
  13. linux安装程序企鹅,在linux下安装fcitx(小企鹅)中文输入法
  14. 有没有java自编歌曲_简易音乐播放器制作
  15. 2022年前端面试题整理,持续更新中
  16. 【office2010】利用尾注添加参考文献
  17. storm - 简介
  18. QNX铁路安全软件--QNX在铁路系统领域应用
  19. Android隐藏的权限管理机制:AppOps
  20. win10防火墙推荐设置来保护计算机,win10提示windows防火墙没有法更改某些设置如何办?...

热门文章

  1. linux centos erlang,CentOS 7.7安装Erlang和Elixir
  2. java socket 异常处理_java.net.SocketException四大异常解决方案
  3. 如何自动调整代码格式 - vim /Visual Studio/ Source Insight...
  4. Spring Boot 集成 RabbitMQ 升级
  5. C#基础 面试中常出现的问题
  6. 好久没来51cto了。
  7. MySQL-第一篇认识MySQL
  8. BZOJ 1977/洛谷P4180 - 次小生成树 Tree(严格次小生成树)
  9. ubuntu 安装cuda 成功
  10. 10.27大视野月赛翻车实况