Go并发编程实战
上QQ阅读APP看书,第一时间看更新

第3章
函数

函数(Function)在很多编程语言中都具有非常重要的地位。数学上的函数是一种通用的表达式,是对现实中某种问题的抽象,可以解决某一类问题。编程语言中的函数是对某种功能的封装,在需要的时候可以调用这些功能,就是函数的调用。任何一个大型的程序都是由多个子模块(包)所组成,而子模块(包)又是由很多函数所构成。

函数是程序代码逻辑的基本组件,函数中声明的变量或者常量都是局部的,不会“污染”外部,当函数调用完成后,内部变量或者常量就会自动释放掉,把占用的资源归还给系统。在Go语言中,函数的返回值可以赋值给变量,也可以作为其他函数的参数进行传递。

函数设计的好坏直接关系到整个程序的运行效率。假如将程序比作一辆车,那么函数就是构成车的各个零件,只有这些零件稳定地运行且互相配合,才能更好地发挥整辆车的性能。

本章涉及的主要知识点有:

· 函数的基本结构:函数由关键字func、函数名、参数列表、返回值和函数体构成。

· 多个返回值的特性:Go语言中的函数可以返回多个值,这种特性会给编程带来极大的便利性。

· 数据的作用域:函数中的变量或者常量是局部变量,而函数体外的变量或者常量则是全局变量,它们的生命周期不同,作用域也不同。

· 不同类型的函数用法:掌握匿名函数、变长函数、递归函数和回调函数的基本用法以及它们之间的区别。

· 闭包:掌握闭包的概念以及闭包的基本用法。

· defer关键字:掌握defer和函数一起使用的作用。

· 实战演练:实现一个原子计算器2.0迭代版。