Thinking in LINQ, Chapter 1, Thinking Functionally

1. 理解函数编程

   把函数理解成一个功能的单元,一个大的功能,可以有若干不同的小功能单元组成。

   把大的需要,拆成小的功能。

   把注意力集中在要做什么,然后如何精确的得到自己要做的。

2. 使用Func<>

   示例:

           Func<int, int> f = x => x + 1;

           Func<int, int> g = x => x + 2;

3. 各种类型函数

    ()=> T[]               

      T[] => Number              // 统计类型函数

      T[] => Boolean              // 统计类型函数

      Ayn()

      Count()

      Single()

      SingleOrDefault()

      -----------------------------------------------------------------

      t[] => U[]         // 转换类型函数

      Select()

      SelectMany()

      Cast<T>

      -----------------------------------------------------------------

      T[] => T[]      // 过滤函数

      T[] => T        // 过滤函数,输出一个结果值

      Where()

      First()

      Last()

      -----------------------------------------------------------------

      Composability                            // 应用分而治之方法

      Lazy evaluation                          // 惰性计算

      Immutability                              // 不变性

      Parallelizable                             // 并行

      Declarative                                // 声明式

 

posted @ 2020-06-17 18:24  淡若轻风  阅读(112)  评论(0编辑  收藏  举报