STEAM教育理念我最欣赏的教育理念之一。它最早是美国政府提出的教育倡议,即科学(Science)、技术(Technology)、工程(Engineering)、艺术(Arts)、数学(Mathematics)的综合。旨在培养孩子的综合素养,从而提升其全球竞争力。
今天在探索编程与艺术的结合过程中,偶然发现这个过程离不开数学。于是,做了一个大胆的决定,以后我要这样教育自己的儿子,编程、数学、和艺术一块进行,综合培养。
看一下启发我的这个伟大的案例——编辑一段让电脑随机绘制抽象画的代码(完成的效果图见我的应一篇文章编程之美——让你的电脑秒变绘画大师的几行代码(Python turtle) )。
数学部分:
我要用代码画一个闭合的多边形,边数是可变的。代码基本上只包括两部分:控制画笔前进和旋转角度。这就涉及数学中“多边形内角计算方法”的内容,如下图。
编程部分
上面的的旋转角度,翻译成程序语言为right(180-180*(n-2)/n)。
最后的外争程序为下图所示:
艺术部分
运行代码,会出现各种随机效果,非常令人惊叹。完美诠释了编程之美。
这部分内容大家可以参考我上文提到的文章《编程之美——让你的电脑秒变绘画大师的几行代码(Python turtle)》中提到到三个层次的电脑画家。在第三个层次最能体现“艺术性”。
哲学部分
核心理念:复杂的东西都是由简单的元素有规律地重复出来的。把这个理念扩展开来会有很多内容(我们以后单独探讨这部分吧)。
下面是运行效果图,选取几张大家看一下(这部分以后会有更新的)。