编程范式

两种编程范式:

  • 命令式编程范式:命令“机器”如何去做事情(how),这样不管你想要的是什么(what),它都会按照你的命令实现。

    • 面向对象编程,如c++、Java
    • 面向过程编程,如c语言
    • 响应式编程:rxswift
    • 链接式编程:典型示例 snapkit
    • 面向切片编程:AOP
  • 声明式编程范式:告诉“机器”你想要的是什么(what),让机器想出如何去做(how)。
    声明式编程范式常见有以下两种:

    • 领域特定语言(Domain Specific Language,DSL):
      名字很陌生,但是我们却经常在用。如SQL、CSS以及正则表达式等等。这些语言只在特定领域起作用,并且使用这些语言时,我们大多数时候是在写“陈述、声明”的语句。如“select * from tb”,我们只关心我们要的结果,而不用去关系具体实现。
    • 函数式编程(Functional Program,FP):函数式编程是我们要讨论的重点。既然它属于声明式编程范式,那么它也应该强调结果(What)而非过程(How)。没错,函数式编程不同于常见的命令式编程,它不关心计算机具体的实现过程,而仅仅注重问题结果。
Contents
,