statement 没有返回值,expression 有返回值
指令式编程
C,C++,VB 都是指令式编程,可以把变量看做是内存,指令式编程是对内存地址的操作
函数式编程
函数和其他数据类型是一样的,就可以作为传入的参数,也可以作为返回值
函数不会对外部变量进行修改,在多线程时没有副作用,相互之间不会影响。
函数式编程易于开发并发程序,因为变量的状态不变,所以不需要锁。