From 979b5128dce81639fb19380c1ddd9797e35a9d0a Mon Sep 17 00:00:00 2001 From: xiaopeng <1509442308@qq.com> Date: Thu, 4 Jun 2026 14:01:52 +0800 Subject: [PATCH] =?UTF-8?q?docs(appendix):=20=E9=87=8D=E5=86=99=20Vibe=20C?= =?UTF-8?q?oding=20=E7=AB=A0=E8=8A=82=EF=BC=8C=E8=A1=A5=E5=85=85=20EPCC=20?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81=E4=B8=8E=E5=B7=A5=E5=85=B7=E5=88=86?= =?UTF-8?q?=E7=B1=BB=E4=BD=93=E7=B3=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- officefile/latex/DesignAI.bib | 48 ++++-- .../latex/appendices/ap02-vibe-coding.tex | 139 +++++++----------- officefile/latex/preamble.tex | 5 +- 3 files changed, 98 insertions(+), 94 deletions(-) diff --git a/officefile/latex/DesignAI.bib b/officefile/latex/DesignAI.bib index 5af400a..6f0ebef 100644 --- a/officefile/latex/DesignAI.bib +++ b/officefile/latex/DesignAI.bib @@ -1,20 +1,50 @@ @book{EJUUCH39, - title = {All the Math You Missed: But Need to Know for Graduate School}, - author = {Thomas A. Garrity}, + title = {All the Math You Missed 2nd Edition}, + author = {{Thomas A. Garrity}}, edition = {2}, - year = {2017}, - publisher = {Cambridge University Press}, - langid = {english} + url = {https://www.cambridge.org/universitypress/subjects/mathematics/recreational-mathematics/all-math-you-missed-need-know-graduate-school-2nd-edition}, + urldate = {2026-05-29}, + langid = {gb}, + file = {F\:\\Zotero\\storage\\QZZ9ML74\\thomas-a.-garrity-all-the-math-you-missed-2nd-ed.pdf;F\:\\Zotero\\storage\\85NY3EYQ\\all-math-you-missed-need-know-graduate-school-2nd-edition.html} } @book{MGDW8DPN, title = {人工智能:计算agent基础}, - author = {David L. Poole and Alan K. Mackworth}, - translator = {董红斌 and 董兴业 and 童向荣 and 汪廷华}, - year = {2015}, + author = {{普尔} and {麦克沃思}}, + translator = {{董红斌} and {董兴业} and {童向荣} and {汪廷华}}, + namea = {{David L.Poole} and {Alan K.Mackworth}}, + nameatype = {collaborator}, + date = {2015-01-01}, series = {计算机科学丛书}, publisher = {机械工业出版社}, + url = {https://book.douban.com/subject/26319332/}, + urldate = {2026-05-26}, + abstract = {《人工智能:计算agent基础》讨论AI科学,它将AI作为智能计算Agent设计的研究课题。《人工智能:计算agent基础》虽然设计为教科书,但它也适合广大专业人员和研究人员阅读。《人工智能:计算agent基础》的一个重要特色是其在线学习资源。在过去的几十年里,人工智能是作为一种严肃科学和工程学科出现的。《人工智能:计算agent基础》提供了针对本科生和研究生的第一手便利可用的领域综合资料,对当今该领域的基础发展进行了展望。像任何名副其实的科学一样,AI具有条理分明、形式化的理论和难以控制的实验。《人工智能:计算agent基础》均衡了理论和实验部分,并说明了如何将理论与实验密切地联系起来,使科学与工程应用共同发展。}, isbn = {978-7-111-48457-8}, langid = {chinese}, - origtitle = {Artificial Intelligence: Foundations of Computational Agents} + origtitle = {Artificial Intelligence Foundations of Computational Agents}, + pagetotal = {452}, + annotation = {price: 79.00\\ +comments: 3\\ +creatorsExt: [\{"firstName":"","lastName":"普尔","creatorType":"author","fieldMode":1,"country":"加","original":"David L.Poole"\},\{"firstName":"","lastName":"麦克沃思","creatorType":"author","fieldMode":1,"country":"加","original":"Alan K.Mackworth"\},\{"firstName":"","lastName":"董红斌","creatorType":"translator","fieldMode":1,"country":"","original":""\},\{"firstName":"","lastName":"董兴业","creatorType":"translator","fieldMode":1,"country":"","original":""\},\{"firstName":"","lastName":"童向荣","creatorType":"translator","fieldMode":1,"country":"","original":""\},\{"firstName":"","lastName":"汪廷华","creatorType":"translator","fieldMode":1,"country":"","original":""\}]} +} + +@book{RP2EHXXB, + title = {UNIX编程艺术}, + author = {Raymond, Eric S.}, + translator = {{姜宏} and {何源} and {蔡晓俊}}, + date = {2011-01}, + series = {博文视点·传世经典书丛}, + publisher = {电子工业出版社}, + url = {https://book.douban.com/subject/5387401/}, + urldate = {2026-06-04}, + abstract = {本书主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S. Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为本书贡献了宝贵的内容。本书内容涉及社群文化、软件开发设计与实现,覆盖面广、内容深邃,完全展现了作者极其深厚的经验积累和领域智慧。}, + isbn = {978-7-121-12329-0}, + langid = {chinese}, + origtitle = {The Art of UNIX Programming}, + pagetotal = {530}, + annotation = {price: 69.00元\\ +rating: 8.8\\ +ratingPeople: 334人评价\\ +comments: 117} } diff --git a/officefile/latex/appendices/ap02-vibe-coding.tex b/officefile/latex/appendices/ap02-vibe-coding.tex index 1fca14b..02bf6f2 100644 --- a/officefile/latex/appendices/ap02-vibe-coding.tex +++ b/officefile/latex/appendices/ap02-vibe-coding.tex @@ -5,108 +5,79 @@ Code、Markdown/Obsidian、Git/GitHub等核心工具的使用方法。 \section{Vibe Coding的概念与工具} -\subsubsection{什么是Vibe Coding} +\subsection{什么是Vibe Coding} -传统编程:\textbf{明确需求 → 设计算法 → 编写代码} +传统编程遵循``明确需求 → 设计算法 → 编写代码''的线性流程,而 Vibe Coding 则转变为``\textbf{模糊想法 → AI辅助 → 迭代完善}''。这是一种以AI为核心的编程新模式:开发者用自然语言描述意图,AI生成代码,再通过迭代对话逐步完善。对于编程经验较少的设计专业读者而言,这种模式大幅降低了技术门槛——不需要记住语法细节,只需要清楚地表达”想要什么”。 -Vibe Coding:\textbf{模糊想法 → AI辅助 → 迭代完善} +然而,编程技术门槛的降低并不意味着对原理理解的放松。《Unix编程艺术》\cite{RP2EHXXB}中提出了一条经典原则——``机制,而非策略''(Mechanism, not policy):好的系统应当提供稳定、通用的底层能力(机制),而将具体的使用方式和决策(策略)交给使用者。在 Vibe Coding 中,这一关系发生了有趣的反转:AI 承担的恰恰是``策略''的角色——它根据开发者的意图,自主选择实现方案、生成具体代码、决定技术路线;而开发者则必须掌握``机制''——理解算法原理、架构模式和调试方法——才能判断 AI 的策略是否正确。这意味着,Vibe Coding 对开发者的要求从``会写代码''转向了``会判断代码'':你需要理解架构原理才能审查AI的方案,需要掌握调试方法才能发现AI的错误,需要对领域知识有足够认知才能提出正确的问题。换言之,\textbf{AI 降低了编程的执行门槛,却提高了对思维门槛的要求}。 -Vibe -Coding是一种以AI为核心的编程新模式:开发者用自然语言描述意图,AI生成代码,再通过迭代对话逐步完善。对于编程经验较少的设计专业读者而言,这种模式大幅降低了技术门槛——不需要记住语法细节,只需要清楚地表达“想要什么”。 +\subsection{工作流程} -\subsubsection{工作流程} +Vibe Coding 的基本流程是:\textbf{描述意图}→AI生成代码→运行测试→迭代优化→理解学习。例如,先让AI"创建一个图像分类模型",运行后发现问题,再逐步调整——"把隐藏层改成128个神经元"——最终阅读并理解AI生成的代码。简单任务可直接通过对话完成;面对较复杂的项目,推荐采用更结构化的四阶段工作流——\textbf{Explore-Plan-Code-Commit}(EPCC,表\ref{tab:epcc}),将 Vibe Coding 从"随意迭代"提升为"有章法的 AI 协作"。 + +\begin{table}[htbp] +\centering +\caption{Explore-Plan-Code-Commit 工作流四阶段} +\label{tab:epcc} +\begin{tabular}{@{} l l p{3.5cm} p{5.5cm} @{}} +\toprule +\textbf{阶段} & \textbf{英文} & \textbf{目的} & \textbf{典型操作} \\ +\midrule +探索 & Explore & 理解项目全貌,避免脱离实际 & 通读现有代码、搜索相关文件、理解架构与已有模式 \\[3pt] +规划 & Plan & 先想清楚再动手,确保方向正确 & 让 AI 生成实施方案,审查确认后再编码 \\[3pt] +编码 & Code & 按计划逐步实现 & 分步实现功能、逐步验证、遇到问题回退调整 \\[3pt] +提交 & Commit & 阶段性成果存档,保留历史轨迹 & 及时 git commit,附上有意义的说明 \\ +\bottomrule +\end{tabular} +\end{table} + +\textbf{示例场景}:为景观设计项目创建一个植物配置推荐工具。 \begin{enumerate} \def\labelenumi{\arabic{enumi}.} -\tightlist \item - \textbf{描述意图}:用自然语言说明需求 + \textbf{Explore}:让 AI 先通读项目中的植物数据库、现有推荐逻辑和用户反馈文件,理解上下文 +\item + \textbf{Plan}:请求 AI 制定方案——``先分析需求,列出要实现的模块,我确认后再开始写代码'' +\item + \textbf{Code}:按方案逐模块实现,每完成一个模块就运行验证 +\item + \textbf{Commit}:每个功能模块完成后提交一次,如 ``feat: 添加按气候区域筛选植物的功能'' \end{enumerate} -``帮我创建一个简单的图像分类模型'' +EPCC 的核心理念是\textbf{先理解、再规划、后动手、常存档}——这与传统的"边写边想"形成对比,特别适合设计专业读者在 AI 辅助下管理复杂项目。 -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\setcounter{enumi}{1} -\item - \textbf{AI生成代码}:自动生成完整代码框架 -\item - \textbf{运行测试}:发现问题或需要调整 -\item - \textbf{迭代优化}:通过对话逐步改进 -\end{enumerate} +\subsection{工具生态} -``把隐藏层改成128个神经元'' +当前 AI 编程工具已形成多种产品形态,各有侧重(表\ref{tab:ai-tools})。 -\begin{enumerate} -\def\labelenumi{\arabic{enumi}.} -\setcounter{enumi}{4} -\tightlist -\item - \textbf{理解学习}:阅读AI生成的代码,理解实现原理 -\end{enumerate} +\begin{table}[htbp] +\centering +\caption{AI 编程工具的分类与代表产品} +\label{tab:ai-tools} +\begin{tabular}{@{} l l p{3.2cm} p{4.5cm} @{}} +\toprule +\textbf{类别} & \textbf{代表工具} & \textbf{特点} & \textbf{适用场景} \\ +\midrule +网页对话 & ChatGPT、Claude.ai & 代码生成与解释,零配置 & 学习咨询、快速原型 \\[3pt] +编辑器插件 & GitHub Copilot、Cline & 实时补全与对话,融入现有 IDE & 日常开发 \\[3pt] +AI 原生 IDE & Cursor、Windsurf & 对话式编程,深度集成项目理解 & 快速原型、中型项目 \\[3pt] +终端智能体 & Claude Code、Codex CLI & CLI 操作,多文件协作,架构级推理 & 项目级开发、大型重构 \\[3pt] +云端自主智能体 & OpenAI Codex、Devin & 云端沙箱全自动执行 & 重复性任务、CI/CD 集成 \\ +\bottomrule +\end{tabular} +\end{table} -\subsubsection{实践技巧} - -{\def\LTcaptype{none} % do not increment counter -\begin{longtable}[]{@{} - >{\raggedright\arraybackslash}p{(\linewidth - 2\tabcolsep) * \real{0.1528}} - >{\raggedright\arraybackslash}p{(\linewidth - 2\tabcolsep) * \real{0.4583}}@{}} -\toprule\noalign{} -\begin{minipage}[b]{\linewidth}\raggedright -技巧 -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright -说明 -\end{minipage} \\ -\midrule\noalign{} -\endhead -\bottomrule\noalign{} -\endlastfoot -明确需求 & 详细描述输入输出,提供上下文 \\ -分步实现 & 复杂功能拆解为小任务,逐步完成 \\ -验证结果 & 运行并检查AI生成的代码是否正确 \\ -学习思考 & 不盲目接受,理解AI为什么这样写 \\ -\end{longtable} -} - -\subsubsection{工具生态} - -{\def\LTcaptype{none} % do not increment counter -\begin{longtable}[]{@{} - >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2375}} - >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.1625}} - >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.3125}} - >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2625}}@{}} -\toprule\noalign{} -\begin{minipage}[b]{\linewidth}\raggedright -工具 -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright -形态 -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright -特点 -\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright -适用场景 -\end{minipage} \\ -\midrule\noalign{} -\endhead -\bottomrule\noalign{} -\endlastfoot -ChatGPT / Claude & 网页对话 & 代码生成与解释 & 学习咨询、快速原型 \\ -GitHub Copilot & 编辑器插件 & 实时代码补全 & 日常开发 \\ -Cursor & AI原生IDE & 对话式编程 & 快速原型、中型项目 \\ -Claude Code & 终端CLI & 终端AI编程、多文件协作 & 项目级开发 \\ -Replit Agent & 在线平台 & 端到端开发 & 小型项目、学习实验 \\ -\end{longtable} -} +初学者可从``网页对话''入手,逐步过渡到``编辑器插件''和``AI 原生 IDE''。对于需要深度掌控项目结构的中大型工作,``终端智能体''提供了最强的控制力和推理深度。``云端自主智能体''正在快速发展,能够独立完成从需求到部署的全流程,但在可控性和代码质量方面仍有提升空间。选择工具时,核心考量因素包括:上下文理解能力(能否理解整个项目而非单文件)、代码质量与幻觉控制(生成结果是否可靠)、以及成本效率(每次交互的 token 消耗)。 \section{Claude Code简介与使用} -\subsubsection{什么是Claude Code} +\subsection{什么是Claude Code} Claude Code是Anthropic推出的命令行AI编程工具(CLI),能够直接在终端中理解项目上下文、读写文件、执行命令,实现端到端的AI辅助开发。它也提供VSCode扩展,可以在编辑器中无缝使用。 -\subsubsection{安装与配置} +\subsection{安装与配置} \emph{\# 安装(需要 Node.js 18+)}\\ npm install -g @anthropic-ai/claude-code\\ @@ -117,7 +88,7 @@ claude 启动后进入交互式对话界面,直接用自然语言描述需求即可。 -\subsubsection{核心使用方式} +\subsection{核心使用方式} \textbf{对话式开发}:用自然语言描述任务,Claude Code会自动读取相关文件、编写代码、执行测试。 @@ -131,7 +102,7 @@ Code可以直接读取、创建和编辑项目中的文件,每次修改前会 \textbf{命令执行}:可以请求Claude Code运行终端命令,如安装依赖、运行脚本等。 -\subsubsection{VSCode中的Claude +\subsection{VSCode中的Claude Code} Claude Code提供VSCode扩展,在编辑器中获得同样的AI辅助能力: @@ -151,7 +122,7 @@ Claude Code提供VSCode扩展,在编辑器中获得同样的AI辅助能力: \textbf{常用场景}: - 选中一段代码,请求”解释这段代码“ - 选中函数,请求”添加错误处理” - 在Claude面板中输入”帮我写单元测试” -\subsubsection{典型项目工作流} +\subsection{典型项目工作流} \textbf{推荐项目结构}: diff --git a/officefile/latex/preamble.tex b/officefile/latex/preamble.tex index f295074..22a1a0e 100644 --- a/officefile/latex/preamble.tex +++ b/officefile/latex/preamble.tex @@ -3,7 +3,7 @@ % ========== 行距 ========== \usepackage{setspace} -\onehalfspacing +\doublespacing % ========== 修复页眉高度警告 ========== \setlength{\headheight}{14.49998pt} @@ -95,3 +95,6 @@ format = \large\bfseries, }, } + +% ========== 章节编号深度 ========== +\setcounter{secnumdepth}{3}