一、图书定位与适用人群
- 定位:面向7岁以上儿童、青少年以及首次接触编程的成人,提供零门槛、可视化、游戏化的 JavaScript + p5.js 创意编程入门课程。
- 特色:以“做中学”为核心,所有项目短小精悍,全部在免费在线平台 openprocessing.org 完成,无需安装任何软件。
- 适用场景:小学、初中、高中、家庭自学、代码社团、创意艺术工作坊。
二、内容结构与学习路径
全书分 三大层级、30+微项目,循序渐进:
| 层级 | 核心概念 | 项目示例 | 能力目标 |
|------|-----------|----------|----------|
| Level 1 First Steps | 坐标、形状、颜色、随机数、变量 | 画圆、画方、随机色气球 | 能用代码控制“画笔”在画布上自由创作 |
| Level 2 Progressing | 函数、循环、RGB/HSB颜色、数学函数、循环嵌套、半透明 | 批量花朵、正弦波浪、彩色网格、递归树 | 掌握抽象与复用,能用数学规律生成图案 |
| Level 3 Advancing | Perlin 噪声、三角函数、递归、面向对象雏形 | 2D 云景、轨道花纹、分形树、动态噪声地形 | 用算法模拟自然,理解分形与噪声的“伪随机”之美 |
三、教学理念
- 零术语:避免艰深词汇,用“食谱”“盒子”类比函数与变量。
- 可视化:所有代码即时呈现为彩色图形,让逻辑看得见。
- 试错友好:鼓励“改一行看结果”,在错误中习得调试思维。
- 跨学科:将数学(坐标、三角函数、数列)、艺术(配色、构成)无缝融入编程。
四、技术亮点
- 平台:浏览器即 IDE,账号一键分享作品,天然支持远程教学。
- 语言:JavaScript + p5.js,语法精简,学生日后可平滑过渡到 Web、App、数据可视化。
- 库扩展:课程使用作者自研 simple.js 进一步降低语法门槛,后期可无缝切换原生 p5.js。
五、项目速览(精选 8 例)
- First Shapes
三行代码画出红黄蓝三色同心圆,体验“写一行、看一行”的即时反馈。
- Random Flowers
用 random() 函数批量生成随机位置、随机大小的花朵,感受随机之美。
- Sine Waves
用正弦函数控制圆点高度,生成波浪线;再叠加颜色,生成“音乐可视化”效果。
- Translucent Bubbles
600 个半透明圆点叠加,学会用 alpha 通道让复杂场景“呼吸”。
- Noise Landscape
用 2D Perlin 噪声生成连绵起伏的云彩与山脉,初识“伪随机”的自然质感。
- Orbital Spirograph
三角函数嵌套生成“万花尺”曲线,体会数学与艺术的交汇。
- Recursive Tree
10 行代码生成分形树,每根枝杈再长两棵小树,学会递归三要素:当前、下一层、终止条件。
- Color Combinations in HSB
用色相环计算互补色、近似色,培养算法化配色思维,告别“调色靠感觉”。
六、配套资源
- 在线视频:YouTube 频道持续更新,提供难点演示与延伸创意。
- 源码仓库:所有示例代码开源,可在线 remix。
- 社群支持:邮件、Twitter、全球代码俱乐部地图,鼓励线下共学。
七、核心价值
把“编程”从枯燥的语法背诵,变成一次次“颜色 + 形状 + 随机 + 数学”的惊喜实验,让孩子在创造数字艺术的过程中,无压力地掌握计算思维、数学直觉与设计表达。
一句话总结:Creative Coding For Kids 是一把钥匙,打开孩子用代码创作艺术的无限可能,让“学编程”成为“玩魔法”。