乐于分享
好东西不私藏

AI设计的高中信息科技必修课程重构框架(54课时)

AI设计的高中信息科技必修课程重构框架(54课时)

一、核心定位转变

传统定位(反人性) 新定位(顺应人性)
教学生成为”小程序员” 帮助学生成为在智能社会中自信生存、清醒判断、有效创造的”数字公民”
先理论后实践,延迟满足 每课15分钟内必有可感知成果,即时满足
独立完成,个人评价 社交分享,互评展示

二、四大”人性锚点”设计原则

锚点 人性规律 课程设计原则
即时满足 追求即时反馈,注意力有限 每节课前15分钟必须产出可见成果;理论”藏”在体验之后;取消纸笔测试,用作品集替代
社交认同 强烈的社交需求期 所有产出设计为可分享形式;引入班级互评、家长展示、科普活动;利用社交媒体传播心理
自主掌控感 抗拒”按头学” 项目主题多选项甚至自拟;AI工具使用不搞一刀切;”个人数字素养成长档案”追踪进步
意义感 追问”我为什么要学这个” 单元开头抛生活问题;知识包装成”解决问题的工具”;终极意义:不被算法控制、不被假视频欺骗、不被数据泄露伤害

三、课程内容框架表

高一上学期(18课时):我在数字世界的”生存训练”
核心人性命题:先让学生看见自己在数字世界的真实处境,产生紧迫感
单元 课时 人性化切入方式 核心内容(精简可落地)
单元1:我的数字自画像 4 第一课就查手机使用报告、屏幕时间,惊到学生——这不是说教,而是自我认知 分析个人屏幕时间数据;用年度账单理解”数据足迹”;画出”我的数字身份地图”
单元2:信息是怎样”骗”我的 4 直接放真假难辨的视频/图文让学生辨别;辨别失败后的”惊愕感”是最好的老师 虚假新闻识别(标题党、AI生成图片);信息茧房体验;用AI工具验证信息真伪
单元3:把我的想法变成”看得见的东西” 6 直接用AI让学生说一句话就生成网页/数据图,成就感立等可取 用自然语言指挥AI生成数据可视化;生成个人介绍页面;制作活动宣传海报网页
单元4:守住自己的数字防线 4 模拟场景:收到”同学妈妈”发来的链接点不点?账号被异地登录怎么办?恐惧驱动 钓鱼信息识别;密码强度检测;隐私权限检查;家庭网络安全自查
高一下学期(18课时):”算法社会”的底层认知
核心人性命题:让学生理解自己为什么停不下刷视频的手
单元 课时 人性化切入方式 核心内容(精简可落地)
单元5:为什么我停不下来?——推荐算法的秘密 4 上课先让学生刷10分钟短视频,报告推送内容,对比同桌结果,发现每个人都不一样 推荐系统”画像-匹配-排序”逻辑(奶茶店推荐比喻);用纸笔模拟协同过滤算法
单元6:让AI当我的”军师”——算法决策体验 4 让学生当”甲方”:有校园问题(食堂排队太久),让AI设计优化方案。掌控感 用自然语言描述问题,AI输出解决步骤;对比AI方案和人工方案;用流程图表示方案
单元7:AI工具,我的”超能力” 6 分组用AI完成”别人以为你很牛”的任务,社交炫耀驱动力 AI辅助写高质量演讲稿/策划书;生成互动问答网页;分析名著人物关系生成思维导图
单元8:算法会不会”歧视”人? 4 找真实算法偏见案例(招聘筛掉女生简历、贷款系统歧视),正义感驱动 算法偏见来源分析(数据问题还是设计问题?);角色扮演处理投诉;写算法公平建议信
高二(18课时):AI时代的自我定位与责任
核心人性命题:面对AI冲击,我该站在哪里?
单元 课时 人性化切入方式 核心内容(精简可落地)
单元9:当AI比我强——重新理解”能力” 4 直接用AI展示10秒内完成作文、数学题、画,让学生直面冲击。焦虑感转化动力 体验AI”超能力”和”智障时刻”;讨论人类什么能力是AI无法完全替代的
单元10:与AI协作的”边界” 4 真实困境:作业能不能让AI写?如果全班都用AI写作业,考试怎么办? 辩论AI辅助学习的合理边界;重新界定学术不端;共同起草《班级AI使用公约》
单元11:综合项目——解决一个真实问题 6 最大自主权:选题自定、工具自选、形式自定,必须解决身边真实问题 帮小卖部做在线菜单;为运动会做成绩播报页面;做”防诈骗指南”科普长图等
单元12:我的未来,我与AI 4 高三近在咫尺,升学压力迫近,这个节点讨论”未来”是顺应人性需要 了解AI对不同行业影响;用AI辅助职业兴趣探索;写”给未来自己的一封信”

四、AI在新课程中的角色

角色 具体作用
替代枯燥执行 学生不需要写代码,但可以”指挥”AI生成网页、图表、分析报告
作为辩论对手 学生尝试反驳AI观点,锻炼批判性思维
效率放大器 把学生从”怎么做”的工具焦虑中解放,把大脑留给”做什么””为什么做””这样做对吗”

五、教师教学关键转变

传统做法(反人性) 新做法(顺应人性)
先讲概念再上机 先出成果再追问原理
禁止讨论,独立完成 鼓励分工协作,设置社交分享环节
统一标准答案 多路径达成,重过程轻标准结果
回避敏感话题(如”AI写作业”) 直面困境,引导学生建立自己的判断
教师是唯一评价者 引入互评、自评、外部受众评价
目标是学完教材 目标是建立数字生存能力

课程定位:不再是一门”为了考试而存在”的边缘科目,而成为学生离开高中前必修的”数字社会生存指南”。

    我只是让AI尊重人性设计课程,它就给了我一套完全不一样的课程体系。我当年教奥赛学生时,最烦的就是花大量时间让学生理解并背记快排与其他排序算法代码,恨不得算法早点封装sort()函数,还有高精度的教学,感觉都是浪费奥赛生的时间与生命,刚刚一句话让AI生成了一个排序动画,速度倒是很快。

    后来奥赛放开了STL,里面很多函数都可以直接调用了,学生再也不用记快排代码,也不用记住交换两个数据的变量书写顺序了,函数swap(a,b)就可以轻松实现。早期带奥赛那些年,在底层逻辑里绕来绕去,明明函数可以封装的调用就好了,就像输入输出函数,数学函数sqrt()等等,都是封装好了给学生直接用,为什么不将能封装的封装好呢?!还好,这些年趋势确实在改进,学生可以用的封装好的算法与数据结构越来越多。

    在信息学奥赛中,STL(标准模板库)中的许多函数和容器被广泛使用,以下是一些常用且被允许的函数和容器:

1.算法函数

· sort(begin, end):对指定区间内的元素进行排序,时间复杂度为[公式],是竞赛中最常用的排序函数。

· lower_bound(begin, end, val):在有序序列中查找第一个大于等于

val的元素位置,时间复杂度为[公式],常用于二分查找和统计频次。

· upper_bound(begin, end, val):查找第一个大于

val的元素位置,用法与

lower_bound类似。

· reverse(begin, end):反转指定区间内元素的顺序,时间复杂度为[公式]。

· unique(begin, end):移除相邻重复元素,返回去重后的新结尾迭代器,常与

erase配合使用实现真正去重。

· next_permutation(begin, end):生成下一个排列,用于全排列问题,时间复杂度为[公式]。

· binary_search(begin, end, val):在有序序列中二分查找元素是否存在,返回布尔值,时间复杂度为[公式]。

· min(a, b)和

max(a, b):返回两个值中的最小值和最大值,时间复杂度为[公式]。

· swap(a, b):交换两个变量的值,时间复杂度为[公式]。

2.容器及其成员函数

· vector(动态数组)

· push_back(e):在尾部添加元素,均摊时间复杂度为[公式]。

· pop_back():移除尾部元素,时间复杂度为[公式]。

· at(i)和

operator[i]:访问指定位置的元素,

at会进行越界检查,

operator[i]不检查。

· size():返回元素个数,时间复杂度为[公式]。

· clear():清空容器,时间复杂度为[公式]。

· reserve(n):预分配内存,避免频繁扩容,时间复杂度为[公式]。

· stack(栈)

· push(e):压栈,时间复杂度为[公式]。

· pop():弹栈,时间复杂度为[公式]。

· top():获取栈顶元素,时间复杂度为[公式]。

· empty():判断栈是否为空,时间复杂度为[公式]。

· queue(队列)

· push(e):入队,时间复杂度为[公式]。

· pop():出队,时间复杂度为[公式]。

· front():获取队首元素,时间复杂度为[公式]。

· back():获取队尾元素,时间复杂度为[公式]。

· empty():判断队列是否为空,时间复杂度为[公式]。

· priority_queue(优先队列)

· push(e):插入元素,时间复杂度为[公式]。

· pop():删除堆顶元素,时间复杂度为[公式]。

· top():获取堆顶元素,时间复杂度为[公式]。

· empty():判断队列是否为空,时间复杂度为[公式]。

· set(集合)

· insert(e):插入元素,时间复杂度为[公式]。

· erase(e):删除元素,时间复杂度为[公式]。

· find(e):查找元素,返回迭代器,时间复杂度为[公式]。

· size():返回元素个数,时间复杂度为[公式]。

· empty():判断集合是否为空,时间复杂度为[公式]。

· map(映射)

· insert(pair):插入键值对,时间复杂度为[公式]。

· erase(e):删除键为

e的元素,时间复杂度为[公式]。

· find(e):查找键为

e的元素,返回迭代器,时间复杂度为[公式]。

· at(e)和

operator[e]:访问键为

e的值,

at会进行越界检查,

operator[e]若键不存在会插入默认值。

· size():返回元素个数,时间复杂度为[公式]。

· empty():判断映射是否为空,时间复杂度为[公式]。

    以上函数和容器在信息学奥赛中被广泛使用,但需注意不同容器的性能特点和适用场景,合理选择以提高代码效率和正确性。

    我一直在等待免费的AI辅助编程工具,可以在课堂教学应用的那种。我的课堂教学内容还会跟着时代而改变,居然还有人在我推的文章内质疑我不是一线信息科技教师,这二十几年来,我教过的信息科技内容可以说是日新月异地在迭代,直到现在我选择教AI算法,都是紧跟着信息科技的脚步在走。为什么我们不能自己推翻自己,而要固守一成不变的观念呢?!《学古法编程语法规则是少数人的事,跟考A照是少数人的事是一样的,不要夸大工具的应用价值》,时代在进步,没有人可以原地踏步。