
|
课程培训
|
AICoding100:人工智能辅助编程实战培训课程
AICoding100:人工智能辅助编程实战培训课程面向软件研发团队,引入 AI 编程能力,并通过真实项目实践,完成从"��️ 会用工具"到"�� 稳定产出"的转变,并为后续 �� 项目陪跑打下坚实基础。 一、 �� 方案背景与目标面向角色���� 现役代码生产者:程序员 § ���� 程序员、技术人员、架构师等 § �� 对 AI 编程有真实诉求的团队 § �� 核心目标:驾驭 AI,而不是被 AI 驾驭和替换 § �� 丰富经验 x 自身专长 × AI = 全站工程师:结合自己原有的专业技能,通过 AI,快速突破前后端、全栈或跨平台开发等能力短板,成为具备全站能力的工程师 § �� AI 助力进军新领域:借助 AI 跳出原有舒适区,加速涉足陌生领域(如大语言模型/LLM 应用开发等) ���� 未来代码生产者:产品经理 § �� 有产品想法但缺乏工程能力的产品经理、业务负责人等 § �� 希望借助 AI 快速完成原本难以独立实现的创新方案 § ✅ 希望借助 AI 快速打破僵局的自动化测试人员 § �� 一人成军:学会 AI 辅助编程后,可以独立开发各种小应用 § �� 能直接生成产品原型,不再局限于撰写需求文档或 PDF,真正实现从想法到可操作原型的快速落地 § ��️ 产品上线后若遇到小规模功能增强,可以自主修改和完善,无需反复提交需求、等待流程或依赖他人 课程核心能力§ �� 100% 代码改为由 AI 生成,人类只提供指导 § ✅ 使用 AI 创建、理解、修改、扩展、重构真实项目代码 § �� 在陌生技术栈与未知场景中,借助 AI 推进开发 § ⚠️ 理解 AI 编程的边界、风险与人类介入点 前置条件 § �� 具备编程经验,或具备简单认知(产品经理、需求分析、测试等) § �� 自带项目代码或练习项目 § ��️ 提前安装指定 AI 编程工具 学习效果: 一人成军 ��§ 现场编写或维护一个拥有前/后/AI 三端的产品 § 可同时编写三端代码 § 可使用自己完全不熟悉的语言和框架 § 日产代码最高可达 1000~2000行(培训现场),500~2000行(日常) 二、��️ 训练营目标与特色§ �� AI 编程实战训练营(2 天) § 工具 × 方法 × 智能体 × 复杂问题解决 § 目标:敢用、会用、用得稳 三、�� AI 编程实战训练营(2 天)总目标完成训练后,学员应能够: § ✅ 使用 AI 理解、修改、扩展、重构真实项目代码 § �� 在陌生技术栈与未知场景中,借助 AI 推进开发 § �� 掌握简单智能体与深度智能体两种工作模式 § ⚠️ 理解 AI 编程的边界、风险与人类介入点 § �� 100% 代码改为由 AI 生成,人类只提供指导 四、�� 实战训练营大纲Day 1 ��:简单功能与智能体基础(Simple Agent)目标:让 AI 成为"随叫随到的高级开发助手" �� 前言:AI Native 的 EDGE 法则AI-Native is the state of relentlessly embedding AI in new ways of thinking and working to navigate and lead in the Age of AI. AI-Native(AI 原生)是在 AI 时代中,以全新的思维方式和工作方法不断地深度嵌入人工智能,从而实现指引与领导人工智能未来的状态。 § �� Exponential |指数级增长 § 高级工具 胜过 低级工具,越早使用,工具越高级,收益越大 § ⚡ Disruptive |颠覆式使用 § 深智能体 胜过 代码补全,主动采用最激进、最非传统的工作模式 § �� Generative |生成式优先 § 生成代码 胜过 提供建议,AI 生成100% 的代码,人类角色从“写代码”转向“审查与决策” § �� Emergent |涌现式进化 § 拥抱变化 胜过 固守工具,持续试验新模型、新工具、新产品,允许工作方式不断重构 预备:准备开发环境与运行环境在正式编写代码之前,需分为两大环境进行准备: § 1️⃣ AI辅助开发环境 § 配置以AI为核心的开发工具,如 Cursor、Visual Studio Code(VSCode)、Copilot、ChatGPT 插件等。 § 这些环境主要用于代码的生成、修改、重构与协作,支持各类主流开发语言和框架。 § 建议:提前安装好所需插件,并注册相关账号,确保与AI开发工具的高效联动。 § 2️⃣ 运行环境(测试/部署环境) § 针对项目类型,配置代码运行与调试环境。例如:Node.js(Web)、Python环境、微信小程序开发环境、Android、iOS开发环境、嵌入式硬件开发板驱动和相应的硬件等。 § 目的在于“让AI产出的代码可以落地”,即时验证、测试和迭代。 § 特别提醒:对于小程序开发、Android、iOS开发、嵌入式开发等场景,需提前准备好模拟器、真机、硬件板卡等必备设施,并完成必要的驱动与依赖安装。 Tips:两类环境需合理切换:AI环境为主导生成和快速修改,运行环境用于即时测试反馈,发现问题可随时回流到AI环境解决。环境配置本身可以由AI协助生成指南和脚本,减少手动配置成本。 4.0 �� 创建项目§ �� 登录 GitHub 页面,创建新项目 § �� 在本地使用 GitHub Desktop 将项目克隆到本地 § �� 使用 Cursor 或其他工具打开项目 �� 人工智能编程的版本控制尤其重要: § 防止 AI 误操作导致代码结构混乱或功能失效 § 生产率大幅提升,需要频繁提交版本以记录开发进度 在 AI 辅助编程过程中,必须建立良好的版本控制习惯,确保代码变更可追溯、可回滚。 4.1 �� 项目初始化:用计划模式凭空创建项目目标:使用计划模式完成产品定义、技术选型与项目初始化,建立真实项目开发的起点 § �� 使用计划模式:产品定义与需求梳理 § 计划模式的核心价值与使用场景 § 无计划模式下的提示词对比 § 使用 AI 辅助进行产品定位与命名 § ✏️ 练习:生成项目的中英文名、项目名、github repo 名、目录名 § 生成简短的需求列表(功能清单) § 需求确认与用户同意流程 § ✏️ 练习:生成计划文档 § �� 开发前的文档工作 § 需求文档与技术文档的放置策略 § AI 评审并修订计划的方法 § ✏️ 练习:建立 README.md (或 Cursor.md 等),存储上述需求和技术栈内容 § ��️ 技术选型决策 § 前后端技术栈选型 § 使用 AI 进行技术栈对比分析 § 框架与工具链选择 § 技术选型的文档化 § ✏️ 练习:更新技术栈内容到 Cursor.md 4.2 ⚙️ 执行计划:项目初始化与基础配置§ ��️ 项目结构与功能初始化 § 初始化项目结构 § 创建基础配置文件 § 生成首批功能代码 § ✏️ 练习:执行计划(提示:只让 AI 实现一小部分功能,防止任务过大) § �� 依赖管理 § 安装所需项目依赖 § 管理依赖版本 § ✏️ 练习:指导 AI 完成依赖安装工作 § �� 版本控制配置 § 明确需被 Git 忽略的文件及配置(.gitignore) § 初始化 Git 仓库 § 制定初始提交策略 § ✏️ 练习:指导 AI 配置、更新 .gitignore 文件 4.3 �� 开发首批功能4.3.1 ��️ 完成一个最小可用产品的前后端全栈代码§ �� 选择 1~2 个典型实体(如:用户、产品、订单等)。 § 与 AI 协作,设计实体的字段结构。 § 用 AI 生成该实体的后端 CRUD API,包括创建、读取、更新、删除等接口。 § 用 AI 生成该实体的前端页面,包括:新增页面、列表页面、详情页面、编辑页面、删除确认页面。 § 可选:为实体相关页面添加基础的数据校验、权限控制等常见功能。 § ✏️ 练习:以 AI 为主力,尽量少干预,完成一个实体的端到端开发。 4.3.2 �� 理解 AI 替我们做了什么?§ �� 解释整个调用过程 § �� 解释某段代码的具体功能 § �� 分析模块内不同函数之间的调用逻辑 § ��️ 梳理大型项目中各子系统的技术架构与依赖关系 § ✏️ 练习:与 AI 对话并理解代码结构与含义 4.3.3 �� 修复缺陷§ �� 制造或发现代码缺陷,让 AI 帮助修复普通业务或运行 bug。 § 例:刻意制造一个常见致命错误,通过 chat 方式指导 AI 诊断与修复。 § �� 发现/制造前端或后端代码的 Linter 或静态检查类问题,让 AI 修复。 § 例:删掉必要类型声明、变量未使用等,再让 AI 修正。 § ✏️ 练习:分别练习用 chat 修复 bug 和用 AI 修复 Linter 问题。 4.3.4 ➕ 增加简单功能功能扩展类实战 § 例如: § �� 添加批量修改 API § �� 在页面中添加新的图表 § ✔️ 添加前端数据校验 § �� 增加数据加密功能 § �� 增加用户权限验证功能 § ✏️ 练习:增加一个上述功能(尽量小) 4.4 �� 前端界面美化设计实体 § �� 确定实体:明确要增加改善的对象(例如:用户、产品、订单等) § �� 尝试不要提供过于精细化的提示词,让 AI 协助设计实体的字段 § ✏️ 练习:与 AI 对话,设计一个实体的字段结构 界面开发 § 以 Web 页面为例,开发一个完整的增删查改界面,包括: § ➕ 创建页面:新增实体 § �� 列表页面:展示实体列表 § �� 详情页面:查看实体详细信息 § ✏️ 编辑页面:修改实体信息 § ��️ 删除页面:删除实体 § ✏️ 练习:开发上述 5 个页面,先确定实体,再进行界面开发 § 其他场景: § 如果是 C++ 的桌面端,则使用 Qt 实现一个支持增、查、改、删操作的单个窗口。 § 如果是嵌入式系统,则做一个简单的数据获取和显示页面。 § 如果是移动端,可以实现一个单实体的基本列表和编辑页面。 界面美化 § �� 以 Web 页面为例,可用以下方式整体美化和提升体验: § 修改整体界面配色、布局风格,使视觉更美观 § 添加动画、渐变、阴影等前端高级特效 § 使用 AI 协助抽取、复用 CSS 或统一设计风格主题 § 让 AI 从零生成或全面优化页面布局 § 在所有按钮、提示信息等 UI 元素前统一加入 emoji 图标,提升识别度与趣味性 § 增加主题切换(theme),支持用户主题偏好记忆 § ✏️ 练习:逐步与 AI 合作,提高界面一致性和体验 § 其他场景举例: § 桌面端(如 Qt):通过统一控件风格、局部动画、配色方案自定义、窗口主题切换等方式美化界面,AI 可协助设计 CSS/QSS 风格或自动生成 UI 代码。 § 移动端:使用 AI 建议或直接生成主题设定、组件动画、统配色,通过 emoji 优化按钮与通知提示,支持深色/浅色切换并记忆。 § 嵌入式端:可统一显示面板的色调、图标,通过简单动画或样式让界面更直观,并可请 AI 优化整体布局结构和交互流畅性。 § 通用方案: § �� 推荐构建全局样式/主题系统,将配色、字体、控件尺寸等集中于一处统一管理,通过变量或配置应用于各端(Web、嵌入式、桌面等),避免在界面代码中硬编码常量。这样方便多端复用与整体风格维护和切换。 4.5 �� 与 AI 编程助手的互动4.5.1 �� 注释与文档智能化§ �� 为单个文件自动添加注释 § ��️ 为变量 / 方法补充语义注释 § ✨ 优化整个文档的注释一致性 § �� 将注释/文字翻译为地道英文 § �� 修正文档中的模糊词与不准确描述 § ✏️ 练习:练习上述注释的书写方法 4.5.2 �� 学会使用计划与提问模式§ �� 使用计划模式思考设计过程 § 无计划模式下的提示词对比 § 需求文档与技术文档的放置策略 § AI 评审并修订计划的方法 § ❓ 使用 Ask 模式提问 4.5.3 �� 代码审查与优化§ �� 代码审查要点 § 检查代码逻辑正确性 § 检查代码风格一致性 § 检查性能优化点 § ✏️ 练习:对已完成的代码进行审查和优化 4.5.4 �� 代码版本管理§ �� Cimmit 与 Push 代码 § ⏪ 回跳到某个对话时刻的代码 § �� 灾难性代码恢复 § �� 使用微服务/目录来约束修改范围 4.5.5 ⚡ 使用并行工作模式§ ⚡ AI 执行计划时,人类可同时处理中低优先级的其他任务,以提高开发效率。 § �� 避免代码交叉修改 4.5.6 �� 常用咒语(精简极简版)§ �� 函数/模块级编程咒语 § �� 鱼骨咒、�� 鲫鱼咒、�� 孟婆咒、��️ 模式咒、�� 日志咒、�� 编号咒、♻️ 去重咒、�� 紧箍咒、�� 疗伤咒、�� 迷路咒 § �� 高级咒语 § �� 设计咒、�� 轮子咒、�� 多疑咒、⚖️ 方案咒、�� 分析咒 § �� 人机互补咒语 § �� 搜索咒、�� 打扫咒、�� 提交咒、��️ 日志咒、�� 定点咒、⚠️ 提醒咒、��️ 劝说咒、��️ 放弃咒、�� 线索咒、�� 讲解咒、�� 幻想咒、�� 来源咒、�� 开心咒、�� 同步咒 § ✏️ 练习:挑选并尝试使用几个咒语 4.6 �� 测试与发布4.6.1 �� 自动化测试此处以 web 系统为例,自动化测试主要针对后端 Web API(如 RESTful API);对于其他系统(如嵌入式设备等),可结合单元测试等方式实现。 § �� 根据系统类型,编写各类系统的自动化测试 § 让 AI 生成并执行主要 Web API 自动化测试用例(如 Postman、pytest、Jest 等) § 让 AI 生成针对嵌入式设备、客户端程序、脚本工具等的自动化测试用例(如单元测试、集成测试、功能测试脚本等) § 针对多种系统类型,集中展示并实践 AI 辅助下的不同测试策略与用例示例 § ⚡ 一键运行全部测试 § 让 AI 生成一键运行所有测试的脚本,便于本地及 CI/CD 集成自动测试。 § �� 生成测试报告与覆盖率 § 让 AI 配置并输出覆盖率统计与测试报告,辅助结果可视化和缺陷追踪。 § ✏️ 练习:(以web为例)利用 AI 自动生成 web api/嵌入式单元测试脚本与覆盖率,并查看报告。 § �� 示例:某 AI 产品 web 后端的自动化测试用例。 4.6.2 �� 编写发布脚本§ �� 发布脚本作用 § 让 AI 梳理发布流程、生成初版脚本(如 deploy.ps1),并据需调整敏感信息和路径。 § 用 AI 辅助二次审查优化,最终在终端一键运行脚本完成发布。 § �� 发布测试 § 发布后使用冒烟测试测试站点可用性 § �� 示例:某 AI 项目后台发布脚本 Day 2 ��:复杂功能与深度智能体(Deep Agent)目标:让 AI 参与设计级决策,而不仅是写代码 4.7 �� 深度代码开发此部分一般需要有高级技术人员在场辅助决策 4.8 �� 定向分析与方案决策§ ⚖️ 方案比较与选择(Plan 或 Ask 模式) § 生成多个候选解决方案 § 比较方案成本、风险与收益 § 人类决策与 AI 执行的分工边界 § �� 问题扫描与修复 § 针对特定问题进行定向分析(安全、性能、规范……) § ✏️ 练习:扫描和解决问题(注意:先 Plan 后修复) 4.9 ♻️ 代码重构类实战§ ��️ AI 生成结果的人类评审要点 § 去掉魔法常量 § 拆分超长方法 § 简化超长分支 § 拆分超长类 § ✏️ 练习:对自己以往项目进行局部非模式重构 § �� 使用设计模式辅助重构 § 开闭类模式:功能开放,代码封闭 § 解耦类模式:易变模块,各自变化 § 消重类模式:信息只有一处,其他皆为镜像 § 友好的陌生人模式:易用且用不坏 § 高性能模式:牺牲其他换性能 § ✏️ 练习:对自己以往项目进行局部非模式重构 4.10 ✨ 整体优化咒语使用§ �� AICoding100 的官方整体优化咒语 § ✏️ 练习:使用其中 2 个咒语,并进行部分改善观察效果 4.11 ��️ 在全新的陌生领域探索�� 此章节以"在当前应用中现场增加一个**大语言模型(LLM)**功能"为例 4.11.1 �� 技术储备§ �� 与 AI 对话了解背景 § �� 让 AI 进行框架选型和对比 § �� 搜索和准备示例代码 4.11.2 �� 创建并运行一个大语言模型项目§ ��️ 准备开发环境 § �� 框架选型 § �� 启动 Hello World 项目 § �� 在完全陌生技术栈中推进功能 § ✏️ 练习:增加一个 AI 服务,并提供一个大模型服务(文字处理、图像识别……) 4.12 �� 商业机密与代码安全4.12.1 �� 代码相关§ �� 阻止文件上传至 Git 库 § �� 阻止 cursor 访问文件 § �� 为不同的角色/开发者分配不同的数据(如 ai api key) 4.12.2 �� 数据相关§ �� 利用私有部署模型对原始数据进行处理 § �� 敏感数据脱敏 4.12.3 �� 高级技术:编码数据化(简介)将"写代码"升级为"设计可运行的数据结构",在 AI 编程与数据安全之间取得平衡。详细内容请参考第五章节"编码数据化"部分。 4.13 �� 完整项目实战目标:尝试单人完成自己的实际工作,用 AI 弥补个人技术短板,让技能缺失不再成为限制 § �� 选择自己的实际项目 § �� 选择多个开发模式进行多个练习(增加新功能 / 修改缺陷 / 重构……) § �� 结合讲师提供的咒语应对复杂情况 4.14 �� 深度展望:AI 对软件全生命周期的嵌入§ �� 需求:需求文档的生成与结构化存储 § ��️ 设计:引入全局技术栈与历史决策上下文 § �� 测试:自动化测试与测试用例生成 § �� 发布:生成发布与回滚脚本 § �� 运维:使用 AI 分析日志与异常模式 § �� 客服:从需求与代码反向生成用户手册 五、�� 附录:AI 辅助编程中的一些 ✨ 核心理念 ✨5.1 �� 大模型编程咒语(特定提示词的用法)(重点 ✨)使用恰当的提示词,提升输出结果,降低交互次数 § 以下咒语全部为讲师本人在实际工作中原创(收录于《AI 辅助编程魔法书》) § 以下咒语,会在上述讲课、练习过程中,随时插入做深入讲解。 5.1.1 ��♂️ 初级咒语涉及函数级编码、重构,修改逻辑、修改缺陷、函数拆分。 § �� 鱼骨咒 — 防止 AB 两个缺陷反复出现缺陷 § �� 鲫鱼咒 — 防止大模型的记忆错乱和幻觉 § �� 孟婆咒 — 用新会话消除冗余记忆,降低大型软件的 AI 开销 § ��️ 模式咒 — 让大语言模型主动使用设计模式 § �� 日志咒:用日志提供调试信息 § �� 编号咒:更清晰定位问题/提升性能 § ♻️ 去重咒:提取重复代码 § �� 紧箍咒 — 重构中防止修改不相关内容 § �� 疗伤咒 — 修复高级 Lint 问题 § �� 迷路咒 — 定期对齐代码基线 5.1.2 �� 高级咒语涉及方案选择、框架设计、设计模式、代码分析。 § �� 设计咒 — 要求编码之前先设计 § �� 轮子咒:要求选择现成的技术 § �� 多疑咒 — 做出正确决策 § ⚖️ 方案咒 — 要求给出某个大型决策分支的备选方案 § �� 分析咒 — 要求对代码进行特定分析 5.1.3 ���� 人机互补咒语涉及人与 AI 的分工协作、各尽所长。 § �� 搜索咒:由 AI 搜索以节省时间 § �� 打扫咒:清理特定的注释/调试日志 § �� 提交咒:要求提交代码,并自动生成注释 § ��️ 日志咒:用日志代替单步运行 § �� 定点咒:人工提供问题点 § ⚠️ 提醒咒:提示人类已经想到的一些"坑" § ��️ 劝说咒:解除 AI 幻想 § ��️ 放弃咒:提示如果棘手则暂时放弃 § �� 线索咒:提供动态视觉线索 § �� 讲解咒:讲解复杂代码 § �� 幻想咒:描述 UI 组件外观 § �� 来源咒:查问信息来源 § �� 开心咒:获得工作好心情 § �� 同步咒:告知 AI 人工操作的行为 5.2 �� 编码数据化将"写代码"升级为"设计可运行的数据结构",在 AI 编程与数据安全之间取得平衡。 5.2.1 ❓ 什么是 / 为何需要 编码数据化§ 通过数据文档 / 配置结构描述行为、规则与流程,由统一的引擎或少量核心代码动态解析并运行 § 开发环境只提供�� 示例数据,只在生产环境配置�� 完整数据,提供 AI 时代 �� 数据安全性的终极保证 5.2.2 �� 四个核心目标1 �� 降低 AI 编码量:减少重复与易出错代码 2 �� 降低设计复杂度:一次设计,多次复用 3 �� 保护核心数据与算法:避免敏感逻辑暴露给 AI 4 �� 提升系统可扩展性与可维护性:维护数据即可增加功能 5.2.3 �� 典型场景示例以下示例用于说明"编码数据化"在不同类型客户与不同业务场景中的通用适用性。本章节不追求实现细节,而强调一种可复用的设计思想。 �� 场景一:设备数据采集 通过数据文件对设备端口、通信协议、数据格式、设备地址等进行描述和编码。新增设备时无需编写新代码,只需新增或调整配置,即可完成接入。 �� 场景二:自动文档段落生成 在生成文档不同位置内容时,无需为每个位置设计独立接口,而是通过数据化的提示词模板、字段规则、大模型选择与输出格式配置,由同一套机制动态生成文档内容。 �� 场景三:工具调用(MCP 的底层原理) 当需要调用大量工具或能力时,无需为每个工具实现独立逻辑。只需定义工具接口的输入、输出结构及示例,通过数据化描述即可完成统一调用并获得结果。这正是 MCP(Model / Multi Capability Protocol)一类机制的核心思想。 �� 场景四:动态测试配置 通过数据化方式配置自动化测试的参数、环境与场景组合,使测试策略的变化不依赖代码修改。 �� 场景五:规则管理 将核心业务规则(比如机票结算过程中的多人/联程/儿童/婴儿/打折/兑换券/保险……)从代码中抽离,使用结构化数据进行管理,使业务变化通过配置完成,而非反复修改实现逻辑。 �� 其他场景 其他任何存在大量代码近似、工作重复的代码。
如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训 除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916 技术服务需求表下载请点击 服务优势: 丰富专家资源,精准匹配相关行业,相关项目技术精英,面向用户实际需求,针对性培训或咨询,互动式交流,案例教学,精品小班,实际工程项目经验分享,快捷高效,节省时间与金钱,少走弯路与错路。 专家力量: 中国科学院相关研究所高级研究人员 西门子,TI,vmware,MSC,Ansys,MDI,Mentor, candence,Altium,Atmel 、Freescale,达索,华为等 大型公司高级工程师,项目经理,技术支持专家 中科信软培训中心,资深专家或讲师 大多名牌大学,硕士以上学历,相关学历背景专业,理论素养高 多年实际项目实践,大型复杂项目实战案例分享,热情,乐于技术分享 针对客户实际需要,真实案例演示,互动式沟通,学有所值 |
|