本教程面向完全零基础的开发者:从未用过命令行、没写过代码也能跟着做完。你将完成三件事——安装并登录 Claude Code、理解它的"对话式编程"循环、最终让它帮你从零生成一个网页版随机点名器(HTML 单文件,双击即可在浏览器跑起来)。学完你掌握的不是某个工具的用法,而是"用自然语言指挥 AI 写程序"这套全新工作方式。
| 条目 | 要求 | 说明 |
|---|---|---|
| 操作系统 | macOS / Windows / Linux 任一 | 三平台均原生支持 |
| 账号 | Claude 订阅(Pro/Max/Team/Enterprise)或 Console API 充值账号 | 二选一,订阅最省心 |
| 命令行 | 会"打开终端、粘贴命令、回车"即可 | 不需要记忆任何命令 |
| 网络 | 能访问 claude.ai |
首次登录需浏览器跳转 |
不需要预先安装 Node.js、Python 或任何编辑器。Claude Code 已改为原生安装包,开箱即用,并在后台自动更新。
打开终端,按你的系统选一条命令粘贴执行。
macOS / Linux / WSL:
curl -fsSL https://claude.ai/install.sh | bash
Windows PowerShell:
irm https://claude.ai/install.ps1 | iex
包管理器(可选):
# macOS 已装 Homebrew
brew install --cask claude-code
# Windows 已装 WinGet
winget install Anthropic.ClaudeCode
预期结果:命令跑完后,终端会提示安装成功。输入以下命令验证:
claude --version
能看到版本号(如 2.x.x)即安装成功。原生安装方式会在后台静默更新,无需手动升级;若用 Homebrew/WinGet,则需偶尔执行 brew upgrade claude-code 或 winget upgrade Anthropic.ClaudeCode。
| 报错 | 原因与解决 |
|---|---|
syntax error near unexpected token '<' 或 403 |
curl 拉取失败,多为网络/代理问题,参考官方"安装排错"页换镜像或加代理 |
PowerShell 报 'irm' is not recognized |
你其实在 CMD 里,改用上面 CMD 专用命令 |
| Windows 提示找不到 Bash 工具 | 推荐装 Git for Windows,Claude Code 会用它执行命令 |
直接输入:
claude
首次运行会提示登录,自动打开浏览器完成认证(订阅用户跳转到 claude.ai 授权,Console 用户用 API Key)。登录后凭证会存到本地,以后无需重复登录。若日后要切换账号,在会话里输入 /login 即可。
Claude Code 的工作单位是"一个文件夹"。我们先建一个干净的项目目录:
mkdir name-picker
cd name-picker
进入目录后再次启动:
claude
此时终端顶部会显示版本、当前模型、工作目录,下方是输入提示符 >。这表示你已经进入 Claude Code 的对话界面。
小贴士:输入
/可呼出所有斜杠命令;按Tab自动补全;↑调出历史;Shift+Tab循环切换权限模式(default → auto-accept → plan)。
CLAUDE.md 是放在项目根目录的"项目说明书",Claude 每次启动都会自动读取它。对零基础者,它最大的价值是固化你的偏好,省得每次重复说。
在对话里直接对 Claude 说:
帮我创建一个 CLAUDE.md,写明:本项目是一个网页点名器,技术栈只用单个 HTML 文件内嵌 CSS 和 JS,不引入任何外部依赖,代码注释用中文。
Claude 会生成类似内容:
# 项目说明
- 名称:网页随机点名器
- 目标:单 HTML 文件,双击浏览器即可运行
- 技术约束:原生 HTML/CSS/JS,零依赖
- 风格:注释用中文,代码清晰可读
CLAUDE.md 管全局,子目录里再放一个只对该子目录生效。这是整篇教程的高潮。用大白话描述需求,把"想法"变成"程序"。在对话框输入:
请帮我做一个网页版随机点名器,要求:
1. 单个 index.html 文件,双击就能在浏览器打开
2. 顶部有一个大显示区,显示当前滚动的名字
3. 一个"开始点名"按钮,点一下开始快速滚动名字,再点一下停止并定格在随机一人
4. 下方一个文本框,可以一行一个名字地编辑名单
5. 显示最近 5 次点名历史
6. 配色好看一点,紫色渐变背景,卡片式布局
预期过程:Claude 会先确认理解,然后给出文件修改方案,并请求你批准(permission)。零基础者保持 default 模式即可,每次它要写文件都会问"是否允许"。
按提示选 Yes(或按 a 接受本次会话所有改动)。
Claude Code 修改文件的标准流程:
index.html)关键认知:Claude Code 总是先问再做,不会偷偷改你的文件。这是它和"全自动脚本"最大的区别,也是零基础者敢放手用的底气。
文件生成后,直接告诉 Claude:
帮我在默认浏览器里打开 index.html 预览
或手动在文件管理器里双击 index.html。你会看到一个紫色渐变背景、白色卡片居中的点名器界面,点按钮即可滚动停名。
第一版跑通后,继续用对话迭代。比如:
加一个"清空历史"按钮,放在历史记录旁边;并且当名单为空时点开始,给出友好的提示而不是报错。
Claude 会增量修改现有文件,而不是推倒重来。这就是对话式开发的魅力——像跟一位同事提需求,他立即改给你看。
以下是按上述步骤最终得到的可运行 index.html,供对照(你也可以直接保存为文件体验):
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>随机点名器</title>
<style>
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
font-family: -apple-system, "Microsoft YaHei", sans-serif;
background: linear-gradient(135deg, #667eea, #764ba2);
min-height: 100vh;
display: flex; align-items: center; justify-content: center;
}
.card {
background: #fff; border-radius: 16px; padding: 40px;
width: 90%; max-width: 480px; text-align: center;
box-shadow: 0 20px 60px rgba(0,0,0,.3);
}
h1 { color: #333; margin-bottom: 24px; font-size: 24px; }
/* 显示区:滚动时变灰,定格时高亮紫色 */
#display {
font-size: 48px; font-weight: bold; color: #764ba2;
height: 80px; line-height: 80px; margin: 20px 0;
}
#display.rolling { color: #bbb; }
button {
background: #764ba2; color: #fff; border: none;
padding: 14px 40px; font-size: 18px; border-radius: 30px;
cursor: pointer; transition: background .2s;
}
button:hover { background: #5a3373; }
button.small { background: #eee; color: #666; font-size: 13px; padding: 6px 14px; }
textarea {
width: 100%; height: 110px; margin-top: 20px;
padding: 10px; border: 2px solid #eee; border-radius: 8px;
font-size: 14px; resize: vertical;
}
.history { margin-top: 14px; font-size: 13px; color: #999; min-height: 20px; }
</style>
</head>
<body>
<div class="card">
<h1>🎯 随机点名器</h1>
<!-- 名字显示区 -->
<div id="display">准备就绪</div>
<button id="pickBtn">开始点名</button>
<!-- 名单编辑框 -->
<textarea id="names" placeholder="一行一个名字,或用逗号分隔">张三
李四
王五
赵六
钱七</textarea>
<div class="history" id="history"></div>
<p style="margin-top:12px"><button class="small" id="clearBtn">清空历史</button></p>
</div>
<script>
// 获取页面元素
const display = document.getElementById('display');
const btn = document.getElementById('pickBtn');
const namesArea = document.getElementById('names');
const historyEl = document.getElementById('history');
const clearBtn = document.getElementById('clearBtn');
let rolling = false, timer = null, history = [];
// 解析名单:支持换行、中英文逗号
function getNames() {
return namesArea.value.split(/[\n,,]/).map(s => s.trim()).filter(Boolean);
}
// 按钮点击:滚动中则停止,停止中则开始
btn.addEventListener('click', () => rolling ? stopRoll() : startRoll());
function startRoll() {
const names = getNames();
if (names.length === 0) { alert('请先输入至少一个名字'); return; }
rolling = true;
btn.textContent = '停止';
display.classList.add('rolling');
// 每 80ms 随机刷新一个名字,营造滚动效果
timer = setInterval(() => {
display.textContent = names[Math.floor(Math.random() * names.length)];
}, 80);
}
function stopRoll() {
rolling = false;
btn.textContent = '开始点名';
clearInterval(timer);
display.classList.remove('rolling');
const chosen = display.textContent;
history.unshift(chosen);
historyEl.textContent = '本次:' + chosen + ' | 最近:' + history.slice(0,5).join(' → ');
}
// 清空历史
clearBtn.addEventListener('click', () => {
history = [];
historyEl.textContent = '';
});
</script>
</body>
</html>
把这段代码交给 Claude,让它逐行讲解 setInterval、Math.random、事件监听是如何配合的,是零基础者边用边学最快的方式。
flowchart TD
A[打开终端] --> B[执行安装命令]
B --> C[claude 首次启动]
C --> D[浏览器登录授权]
D --> E[建项目目录并 cd 进入]
E --> F[创建 CLAUDE.md 固化偏好]
F --> G[用大白话描述需求]
G --> H{Claude 提出修改方案}
H -->|审核并批准| I[文件写入磁盘]
I --> J[浏览器预览效果]
J --> K{满意?}
K -->|否| G
K -->|是| L[继续迭代加功能]
L --> G
这条"描述 → 审批 → 生成 → 预览 → 再描述"的闭环,就是 Claude Code 的代理循环(agentic loop)——理解它,比记住任何命令都重要。
code.claude.com/docs/en/quickstart — 最权威的入门路径support.claude.com/en/articles/14552382 — 15 分钟从安装到第一次改动code.claude.com/docs/en/best-practices — 学会"如何把需求描述清楚"code.claude.com/docs/en/cli-reference — 所有 claude 命令速查进阶方向:学会 /init、/clear、权限模式后,可继续探索 CLAUDE.md 进阶写法、自定义 Skills、Hooks 与 MCP,把点名器这种小工具扩展成真正的自动化工作流。
| 维度 | 评估 |
|---|---|
| 适合的训练营类型 | 零基础 AI 编程启蒙营、教师/非技术从业者数字素养营、青少年编程入门营 |
| 不适合 | 已有 2 年以上经验的高级工程师训练营(内容过浅) |
| 预计教学时长 | 1.5–2 小时(含讲解 + 动手 + 迭代) |
| 学员产出 | 每人一个可分享的网页点名器 HTML 文件,可发链接展示 |
| 后续衔接 | 可自然过渡到 Round 2「自定义 Skill 开发」,把"造点名器"的经验沉淀成可复用技能 |
本教程刻意选用单 HTML 文件作为首个项目,目的是让零基础学员在 2 小时内获得"我也能做出一个真实可用的程序"的强烈成就感——这是 AI 编程启蒙最关键的第一次正反馈。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
