美文网首页
编程范式

编程范式

作者: 杰_6343 | 来源:发表于2022-01-06 10:39 被阅读0次

托马斯.库尔提出“科学的革命”的范式论后,Robert Floyd在1979年图灵奖的颁奖演说中使用了编程范式一词。

编程范式,简单来说,就是编写命令的方法。

众所周知,一门语言的思想建立在其编程范式之上。最知名的三种范式分别是面向对象编程、指令式编程和函数式编程。它们并没有优劣之分,重要的是使用正确的工具来完成工作。

其中,函数式编程是大多数软件工程师不太熟悉的一个概念。

函数式编程是种编程方式,它将电脑运算视为函数的计算。函数编程语言最重要的基础是λ演算(lambda calculus),而且λ演算的函数可以接受函数当作输入(参数)和输出(返回值)。

和指令式编程相比,函数式编程强调函数的计算比指令的执行重要。

和过程化编程相比,函数式编程里函数的计算可随时调用。

曾用于编写计算机程序的第二种编程语言Lisp实际上属于函数式范式。Lisp最初创建时受到阿隆佐·邱奇的lambda演算的影响,用来作为计算机程序实用的数学表达。Scheme作为Lisp一种小语种的变体,它是可以被编译成机器码的。也就是说,它的运行效率更高。在Lisp和Scheme中是不区分数据与操作的。

LISP素来奉仰的哲学思想是“微核心+高扩展性”,Scheme也将这一特点发挥到了极致。Scheme内置的关键字(keyword)少得可怜,就连大于小于、加减乘除等操作都是以函数的形式出现。甚至可以夸张一点说,只要有define关键字与括号,就可以写出所有程序。不过,这种风格的一个副作用是会在程序中出现大量的括号,所以也有人把LISP戏称为“一大堆烦人的、教人看不懂的括号”。

函数式编程通过简化编程定义,优先考虑数据的不变性和数学计算,而不是像传统编程去修改存储在类构造函数中的对象。在现代函数式编程中,这种想法有点狭隘,但未必是坏事。函数式语言的可变性给函数式编程带来很多功能,可以说函数式编程非常实用。

考虑到这一点,函数式编程并不局限于函数式语言,如Python具有函数性特征。虽然函数式编程与传统编程极其不同,但是似乎函数式和面对对象范式与用于数据科学的大多数语言比较接近。

相关文章

  • 从一个加法器看简单的编程范式

    从一个加法器的实现看简单的编程范式 编程范式 编程范式(Programming Paradigm)是某种编程语言典...

  • 兄弟会0805 编程的思维

    编程的思维 1.指令式编程思维 2. 函数式编程思维 编程范式 函数式编程是一种编程范式,我们常见的编程范式有命令...

  • 06 - 面向过程 VS 面向对象

    编程范式中,除了面向对象之外,被大家熟知的编程范式还有另外两种,面向过程编程和函数式编程。面向过程这种编程范式随着...

  • 函数式编程基本概念

    编程范式 函数式编程(Function Programming, FP)是编程范式之一(还包括面向对象编程、面向过...

  • 函数式编程简析

    想要知道什么是函数式编程就需要先理解什么是编程范式 编程范式是什么? 编程范型、编程范式或程序设计法(英语:Pro...

  • 从Swift函数式编程到设计模式(二)

    Swift是一门多范式编程语言。除了支持面向对象编程范式之外,还支持函数式编程范式,和泛型编程。这使得Swift可...

  • 编程范式 (Programming paradigm)

    编程范式 Programming paradigm 范,模范、典范也。范式即模式、方法。常见的编程范式有:函数式编...

  • 探秘Spring AOP

    编程范式概览 面向过程编程 面向对象编程 函数式编程 事件驱动编程 面向切面编程 AOP是什么 是一种编程范式,不...

  • 编程范式的整理和借鉴

    什么是编程范式 所谓编程范式(programming paradigm),指的是计算机编程的基本风格或典范模式。我...

  • iOS 链式编程

    链式编程 主要介绍链式编程原理,以及如何创建链式编程 编程范式 在介绍链式编程之前,首先来了解下什么是编程范式。 ...

网友评论

      本文标题:编程范式

      本文链接:https://www.haomeiwen.com/subject/trilcrtx.html