从面向对象到函数式编程
编程范式
-
命令式编程范式
-
命令式编程的主要思想是关注计算机执行的步骤,即一步一步告诉计算机先做什么再做什么。
-
举例说明:
- List results = new List();
foreach(var num in collection)
{
if (num > 5)
results.Add(num);
} - 1)在中央火车站乘坐1号电车;2)在第三站下车;3)向右走,朝第六大道行进,直到第三个路口
- List results = new List();
-
C, C++ 还是 C#, Java, Javascript, BASIC, Python, Ruby
-
-
声明式编程范式
- 以数据结构的形式来表达程序执行的逻辑。它的主要思想是告诉计算机应该做什么,但不指定具体要怎么做。
- 举例说明:SELECT * FROM collection WHERE num > 5
- SQL、HTML、CSS
-
函数式编程范式
-
即只关注做什么而不是怎么做。但函数式编程不仅仅局限于声明式编程。
-
举例说明:
- List results = collection.stream()
.filter(n -> n > 5)
.collect(Collectors.toList());
- List results = collection.stream()
-
JavaScript 、C# 中的 LINQ
-