读《声明式编程和命令式编程的比较》有感
摘抄自http://kb.cnblogs.com/page/181030/
命令式编程:告诉计算机How to do,这样不管你想要什么,计算机都会按照你要求的做。
声明式编程:告诉计算机你想要什么(what),而让计算机想如何去做(how)。
命令式编程举例:
var numbers = [1,2,3,4,5] var doubled = [] for(var i = 0; i < numbers.length; i++) { var newNumber = numbers[i] * 2 doubled.push (newNumber) } console.log (doubled) //=> [2,4,6,8,10]
声明式编程举例:
var numbers = [1,2,3,4,5] var doubled = numbers.map (function (n) { return n * 2 }) console.log (doubled) //=> [2,4,6,8,10]
声明式编程总结:
让我们去描述我们想要什么,让底层去解决如何实现他们。
想到C#如何遍历*2:
没有map方法,但有select方法,
var numbers = new int[] { 1, 2, 3, 4, 5 }; var num = numbers.Select<int, int>(p => p * 2).ToList(); Console.Read();