zoukankan      html  css  js  c++  java
  • 编程范式总结

    命令式编程 Imperative programming
    用命令的方式,一步一步告诉计算机先做什么再做什么。模拟电脑运行过程,通过执行命令改变程序的状态。
    从开发人员的角度来说,就是一个"输入-》函数1-》状态1-》函数2-》状态2-》输出"的过程
    难点在于函数的书写和中间状态的保存。

    声明式编程
    告诉计算机应该做什么,更关注结果,不关心计算机怎么做。
    领域特定语言(Domain Specific Language,DSL),比如SQL,CSS,正则表达式等,开发人员声明需要的结果是什么,由特定语言的内部实现去调用计算机相关指令,得到输出。
    函数式编程(Functional Program,FP)等。
    从开发人员的角度来说,就是一个 "输入-》计算机处理-》输出"的高层次的抽象过程。
    如“select * from tb”,我们只关心我们要的结果,而不用去关系具体实现。


    面向对象编程
    是种具有对象概念的程序编程典范,同时也是一种程序开发的抽象方针。它可能包含数据、属性、代码与方法。对象则指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。

    函数式编程
    函数式编程是一种编程范式,它将计算机运算看作是数学中函数的计算,并且避免了状态以及变量的概念。数学上函数的概念相较于编程中函数的概念更为严格。函数没有side effect,no state,函数是一等公民(Higher Order Function)。
    使用者只需要关心输入输出。难点在于monad函数的抽象和书写

  • 相关阅读:
    梦断代码读后感02
    UML大战需求与分析--阅读笔记4
    UML大战需求分析--阅读笔记3
    软件需求与分析课堂讨论一
    UML大战需求分析--阅读笔记02
    UML大战需求分析--阅读笔记01
    学习进度--大三下
    问题账户需求分析
    2016年秋季阅读计划
    个人总结
  • 原文地址:https://www.cnblogs.com/cnsec/p/13547565.html
Copyright © 2011-2022 走看看