WEEK 01 / 16 导论 · AI 时代为什么学编程
PYTHON 程序设计 · V2 · 第 1 周(100 分钟)

AI 都能写代码了,
这门课教什么?

这节课务虚:我先用一个真实项目演示「现在开发有多方便」,然后一起回答三个问题—— 为什么还要学编程、学编程学什么、这门课怎么学。

所属模块 M0 导论第一课 · 务虚键盘 ← → 翻页 · F 全屏
同学们可以直接在手机或电脑上打开本页:练习页可运行代码,测验页可以作答。

今日课表(100 分钟)

时间环节要点
0–10开场寒暄认识一下 · 感叹现在开发有多方便
10–25现场演示上周下班后我做的一个小工具:让 AI 帮我找开源项目、改 bug、移植、起名、传 GitHub
25–40核心问题AI 都能写代码了,这门课还有必要上吗?
40–55课程回答三种能力:读代码、调试、系统设计
55–70课程怎么学线上课看什么、不看什么;线下课主要留给我们多交流
70–85动手浏览器里跑你的第一行 Python(不用装任何东西)
85–95怎么向 AI 提问好问题 vs 坏问题,三要素框架
95–100小结与课后下周一的重点是环境与工具链——我们要真的动手装环境了

← → 翻页;带分步的页面按 → 逐条展开。学生打开本页即可参与练习与测验。

先看一个真东西

上周课后 5 天我做了什么 我用 AI 帮我找到了一个开源项目——一个小圆形窗,把摄像头里的人脸直接显示在桌面上。 然后让它改 bug、移植成单文件 exe、起名字、传上 GitHub——全程我基本没写一行代码。
这个项目甚至自动做好了 GitHub 的自动构建流程: 代码传上去,GitHub 自己构建 release 并发布。我让它给我起个名——「circular camera」,还带了个朴实的 logo。
结论:你让我专业地干这件事我干得动,但要花精力还要上课——现在 AI 直接帮我做完了。 这就是为什么这门课要升级成 AI 版。

先抛一个问题

“大模型已经能写出能跑的代码了——
那这门课,还有必要上吗?”

举手投票:你已经用过大模型写代码或写作业吗?用的什么? (Kimi / 智谱 / ChatGPT / Copilot……)
追问用过的人:你见过它写错的时候吗?你是怎么发现的? ——这个「发现」的能力,就是这门课要教的东西。

这门课的回答:三种能力

能力一读代码 AI 生成的代码,你要看得懂、能审查、能发现隐患——命名混乱、超出课程范围的语法、边界条件缺失。
能力二调试 AI 不会一次写对。程序报错或行为异常时,定位并修复问题的能力无法由 AI 代替——读报错是本课的基本功。
能力三系统设计 做什么、分几个模块、数据如何流动——这些决策由人完成。期末项目将全面检验这一能力。

一个类比:自动驾驶

人:定目的地
→
AI:辅助驾驶
→
人:关键时刻接管

这门课怎么学

线上课看什么
  • 网上基础课(上学期那套):简介与实例、结构与建议——这些要看
  • 历史线下课录像:不用看(我们这学期正在上新的)
线下课怎么用
  • 线下时间多留给我们交流:作业怎么写、哪里卡住了
  • 基础知识的补全会带,但不会占太久
每周课后我会把这周的课堂录像传上去——想回看可以,不强制。

动手:你的第一行 Python

交互 · 直接在浏览器里运行,无需安装

点击「运行」看看结果,再把代码改成打印你自己的名字:

这个「运行场」基于 Pyodide——浏览器里的真 Python 解释器。以后每节课都会用它做课堂练习。

怎么向 AI 提问

同样一个需求,两种问法,结果天差地别:

坏问题 帮我写个学生成绩统计脚本
没说语言、没说数据格式、没说输出长什么样——AI 只能猜,猜就可能错。
好问题 我用 Python,有一份 JSON 格式的学生成绩数据,想按班级分组计算平均分并排序输出,用注释说明每一步
有上下文、有具体目标、有约束条件——AI 一次就能给到可用的答案。

好问题的三要素

上下文
我在用什么、数据长什么样
+
具体目标
要它产出什么
+
约束条件
语言/格式/范围

16 周课程地图

  • W1–W2 导论与环境 · 下周就装环境、调通 AI
  • W3–W5 语言核心(类型→控制流→函数→类)
  • W6–W8 数据获取 + 工程化
  • W9–W13 AI 应用开发(Prompt / RAG / Agent / 前后端)
  • W14–W16 综合项目实战与答辩
三个里程碑
  • W2:亲手配好 AI 开发环境
  • W11:做出自己的知识库问答系统
  • W14:期末项目正式启动

完整知识图谱见课程主页

随堂小测(3 题)

交互 · 直接点击选项作答

课后与下周预告

本周课后
  • 回顾这节课的三种能力——读代码、调试、系统设计
  • 环境可以先不配——下周我们当堂一起装
  • 注册一个大模型账号,试着用三要素问一个好问题
下周:W2 环境与工具链 把 AI 开发环境配好(Zcode / 校内 OpenAI 平台 / UV),把 Python 环境搞清楚(Miniconda),学会读报错。 提前看下周课件 →

深入阅读:M0 模块页 · 经典笔记 1.1 课程概述 · 交互演示:编译 vs 解释