美文网首页
初识函数式编程

初识函数式编程

作者: c4a1d989518e | 来源:发表于2017-05-30 21:30 被阅读17次

命令式编程

对于函数式编程,是早有耳闻,但是一直没有去了解过,正好最近有时间,就花一晚上了解了下。

要说函数式编程之前,要说说有什么其他编程方式。我们平时常用的就是命令示编程。面对对像就是一种命令式编程。命令式编程有什么特点呢?命令式编程从容易理解的方式来说,就是编程即是一种命令。按照我原有的编程思维来讲,这是一句废话。但是我决定把这句废话在引申下。命令式编程就是人去命令机器。机器本身是听不懂人的命令的。比如说把一个字母存储到寄存器中的某个字节。这个机器内部的如何去二进制的存储其实是机器自身的语言,也就是机器语言,而我们平时的命令的声明var a=1,这已经不是机器语言了,是人能够理解的语言了。var a=1这个命令翻译给机器,就是命令机器存储a这个变量。至于机器内部的细节,不用我们去管。说回来命令式编程就是不断的去下命令,你去干这你去干那,让机器去到存储单元中存储变量,然后将变量入栈出栈,然后提取变量,运算,然后又存储到其他存储单元。进行这些操作,一定需要的是,知道这些变量或者函数从哪里来,又到哪里去。

而函数式编程呢?函数式编程就直截了当的多。专注于函数的编程。也就是忽略了对计算机内部的抽象,不关注计算机内部的处理。函数式编程可以看成是自己写一个又一个的函数表达式,每个表达式更方便的被另一个表达式所调用,最终形成一个庞大的表达式。函数式编程就是一个具有某种功能的函数表达式。拿Haskell编程来说(PS:要想了解函数式编程最好的方法就是对着教程打一遍,尽管我还没敲完),函数式编程里的表达式有这样几个特点:

1.函数表达式更方便的被调用,比如我用编辑器写个函数,然后保存为hs结尾的文件。到时候直接在GHCi中打开,调用就好,就相当于给你了一个函数表,函数就是功能,也就是功能表。

2.定义函数更加的简洁,直接空格,啪啪啪。以小见大。如此简洁一看就是专为函数处理打造的。另外Haskell语言的诞生之初是给读PhD的人用的,使用Haskell应该油然而生一种智商上的优越感。

3.函数式编程里的表达式都比较懒。怎么说懒呢?定义好了,就放那不动了。只有你调用时候才会动。比如说你定义好了一个函数,分配给它任务,它会等待。等哪天项目要上线了,它就立刻处理,而且保证不耽误事。

相关文章

  • 函数式编程

    函数式编程初识 一.简介 他是和面向对象编程平起平坐的一种编程范式。 函数式编程就是一种抽象程度很高的编程范式,纯...

  • 初识函数式编程

    命令式编程 对于函数式编程,是早有耳闻,但是一直没有去了解过,正好最近有时间,就花一晚上了解了下。 要说函数式编程...

  • 函数式编程【1】——初识函数式编程

    1.一段话理解函数式编程 首先说一下函数和方法的区别,简单的可以理解为同一个东西,都是一个执行块。前者是面向过程的...

  • RxSwift初探(1)

    一、前提:函数响应式编程思想 简单来说 函数响应式编程 = 函数式编程 + 响应式编程 (1)函数式 函数式编程是...

  • iOS 函数编程 & 链式编程

    函数式(链式)编程 函数式编程概念 函数式编程是种编程范式 函数式编程 Functional Programmin...

  • iOS-ReactiveCocoa使用之RACCommand

    前言 前几天开始研究Cocoa的第三方编程框架ReactiveCocoa,其使用响应式、函数式的编程思想,对于初识...

  • 函数式编程(一)—— 前置知识

    为什么要学函数式编程? 什么是函数式编程?函数式编程和面向对象编程的不同对于函数式编程思维方式的理解: 函数式编程...

  • 二十二、函数式编程、面向协议式编程

    函数式编程(Functional Prigramming) 函数式编程 函数式编程(Functional Prig...

  • Python中的函数式编程

    函数式编程 说到函数式编程,我们的重点在于为什么要采用函数式编程,而不是什么是函数式编程。 函数式编程的优点:一、...

  • RxSwift-初探

    函数响应式编程 一:函数式 函数式编程简称FP(Functional Programming),函数式编程就是一种...

网友评论

      本文标题:初识函数式编程

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