我浅谈一下我的认识吧。
之所以写很多函数,是因为函数有很多功能。(1)比如代码复用,你不用函数可能要重复地写同样的代码,但是如果将这样的代码段抽取成函数,你只需调用函数名即可,这大大地减少了工作量。(2)一般的,你完全可以只要一个main函数来实现你的程序,但是这样的main函数就会显得很臃肿,不利于检错,别说给别人看,就是自己看都会头晕。因此函数使得你的程序思路更清晰,减少错误。(3)函数有利于封装,学了C++的应该比较清楚。别人调用你的接口函数时,不需要知道函数体到底是怎么实现的,他只需知道你的函数能够实现什么功能。就说你整天调用scanf、printf,你只需知道它们用于输入输出,而怎么实现你没必要关心(当然你可以深入研究)。(4)为函数取个合理的名字也能使程序更易看懂。用“add”、“sub”表示加法、减法功能的函数,绝对比用“func1”、“func2”这样的无含义的函数名直观得多。还有取个函数名也能看出某个人是不是新手。如果有人写“jiafa”、“jianfa”这样的函数名表加法减法,他基本就是中国的菜鸟程序员。(5)函数体应该怎样实现才能高效地完成所需功能,是很费脑的。因为你要有一个比较好的算法思路。(6)什么情况你需要编写一个函数也是值得推敲的事情。(7)可能还有很多没讲的和我不知道的。
很显然,最基本的函数也考验着你的程序好坏,而程序肯定不止是写几个函数这么简单。编程的最高境界应该是程序设计吧。我也觉得编程很苦逼,但是既然程序设计是一门computer science学科,那么看起来做编程是不是很高尚而很有难度~
之所以写很多函数,是因为函数有很多功能。(1)比如代码复用,你不用函数可能要重复地写同样的代码,但是如果将这样的代码段抽取成函数,你只需调用函数名即可,这大大地减少了工作量。(2)一般的,你完全可以只要一个main函数来实现你的程序,但是这样的main函数就会显得很臃肿,不利于检错,别说给别人看,就是自己看都会头晕。因此函数使得你的程序思路更清晰,减少错误。(3)函数有利于封装,学了C++的应该比较清楚。别人调用你的接口函数时,不需要知道函数体到底是怎么实现的,他只需知道你的函数能够实现什么功能。就说你整天调用scanf、printf,你只需知道它们用于输入输出,而怎么实现你没必要关心(当然你可以深入研究)。(4)为函数取个合理的名字也能使程序更易看懂。用“add”、“sub”表示加法、减法功能的函数,绝对比用“func1”、“func2”这样的无含义的函数名直观得多。还有取个函数名也能看出某个人是不是新手。如果有人写“jiafa”、“jianfa”这样的函数名表加法减法,他基本就是中国的菜鸟程序员。(5)函数体应该怎样实现才能高效地完成所需功能,是很费脑的。因为你要有一个比较好的算法思路。(6)什么情况你需要编写一个函数也是值得推敲的事情。(7)可能还有很多没讲的和我不知道的。
很显然,最基本的函数也考验着你的程序好坏,而程序肯定不止是写几个函数这么简单。编程的最高境界应该是程序设计吧。我也觉得编程很苦逼,但是既然程序设计是一门computer science学科,那么看起来做编程是不是很高尚而很有难度~