新書推薦:

《
人工智能的多视角审视 “人类智能与人工智能”书系(第一辑)
》
售價:NT$
1010.0

《
拥抱自然的孩子:70个深度自然游戏
》
售價:NT$
301.0

《
QBQ!问题背后的问题III:成就卓越的组织(修订版)
》
售價:NT$
250.0

《
艺术家课堂 动漫创作与职业之路
》
售價:NT$
866.0

《
暗示的力量:唤醒孩子的内驱力
》
售價:NT$
254.0

《
权力、国家和太空 :太空行为体的概念化、衡量和比较
》
售價:NT$
500.0

《
《营造法原》解读
》
售價:NT$
857.0

《
舌诊图谱:观舌知健康 全新正版彩图全解舌诊辩证图谱图解中医舌诊基础理论手诊面诊罗大伦书舌诊诊断教程中医看舌苔调理书中医养生
》
售價:NT$
296.0
|
編輯推薦: |
这两年,全球最大的程序员问答网站Stack Overflow的流量出现了断崖式下跌,造成这一局面的正是AI的崛起。可以说,如果不会使用AI,再优秀的程序员也会像恐龙一样被淘汰。不过您不用恐慌,您面前这本《与AI一起写代码》能够帮助您摆脱被动局面,跳上AI快车,迅速成为AI时代的程序员。即使您已经在编程工作中熟练使用AI,您也能书中找到丰富的相关资源,让编程变得更轻松、更美好!
书中代码下载 https://media.wiley.com/product_ancillary/36/13942491/DOWNLOAD/coding-with-ai.zip
|
內容簡介: |
本书全方位展示了利用AI编程的方法和工具,能够有效帮助读者掌握AI辅助编程技术, 轻松完成代码的编写、 调试、 除错、 更新和优化,显著提高编程效率。本书提供了编程过程中集成AI的实用方法,包括详细的示例代码,演示如何与AI API交互, 如何将AI生成的内容纳入软件解决方案并扩展至其他AI功能,如代码重构、 翻译和测试。 本书还介绍了一些实用的AI编程资源。本书非常适合程序员、 人工智能研发人员以及其他对人工智能感兴趣的读者阅读。
|
關於作者: |
克里斯·明尼克(Chris Minnick)是资深技术作家、教育专家及程序员。独著/合著技术书籍逾20部,包括多本“达人迷”系列畅销作品,为头部在线教育平台开发视频课程体系,长期为多家全球大企业提供编程与AI培训。
|
目錄:
|
译者序 Ⅲ引 言 Ⅳ 关于本书 Ⅴ 读者对象 Ⅴ 书中图标 Ⅵ 在线资源 Ⅵ 近期目标 Ⅶ第 1 部分 技术入门第 1 章 AI 的作用 3 消灭无聊任务 3 发现无聊任务 4 用 AI 编写模板 4 用 AI 实现 CRUD 7 提供语法帮助 13 无须记住琐碎细节 14 代码补全提示 14 适应新语法 15 静态代码分析 18 静态代码分析检测不良代码 18 使用 AI 进行静态代码分析 19 使用 AI 学习编程 19 AI 的教育潜能 20 避免潜在的陷阱 20 与 AI 结对编程 20 结对编程模式 20 与 AI 结对编程的利弊 21 AI 结对编程实战 21第 2 章 机器学习和深度学习 28 机器学习和深度学习 28 基本概念 28 神经网络 29 训练和测试模型 31 自然语言处理 32 自然语言处理的历史 33 自然语言处理的困境 34 理解 Transformer 36 注意力机制 36 获取标记 37 生成式 AI 模型 39 认识 AI 的局限 40 语言模型不擅长数学 40 语言模型啰唆冗长 41 AI 存在知识局限 42 AI 存在常识性问题 43 AI 存在准确性问题 43 AI 存在偏见性问题 43第 3 章 AI 编程工具 44 探索 GitHub Copilot44 安装 Copilot插件 44 使用 Copilot高效工作 46 使用快捷键 50 探索 Tabnine 51 安装 Tabnine 51 设置 Tabnine 52 使用 Tabnine 编程 53 探索 Replit54 使用 Replit创建网站 56 探索 Replit工作区 58 与 ReplitAI 结对编程 59第 4 章 与聊天机器人一起编程 64 改进提示词 64 调整温度 64 解读提示词的各元素 68 与 AI 一起写代码 开放式与封闭式提示词 69 使用不同类型的提示词 69 提升提示词水平 71 与 Copilot聊天 72 了解斜杠命令 72 了解 Copilot智能体 73 利用 CopilotChat73 与 ChatGPT 聊天 75 注册和设置 75 自定义说明 76 让 ChatGPT 了解您 77 让 ChatGPT 了解您的期望 79 深入理解 OpenAI 平台 81 检查积分 81 玩转 Playground 82 运行示例 83 扮演不同角色 84 调整模型设置 84 获取 API 密钥 85 使用 OpenAI 开发聊天机器人 87第 2 部分 用 AI 编写代码第 5 章 从计划到原型 93 理解项目需求 93 确定软件需求 93 领域需求 94 功能需求 94 非功能需求 95 编写 SRS 96 从 SRS 生成代码 100 使用零样本方法 100 分解问题 102 人工和 AI 混合编程 103 编写提示 103 编写服务器 104 提交后续提示 106 测试服务器 108 在服务器上实现少样本提示 109 改进客户端 113 从 AI 端转向客户端 116 代码生成实用技巧 118 人工引导 119 指令清晰 119 分步思考 119 跟进提问 119 查验官方文档 119 提供示例和上下文 120 安全第一 120 继续学习 120 更新工具 120 留意 AI 的局限 120第 6 章 代码格式化和重构 121 使用 AI 工具进行代码格式化 121 设置格式化工具 121 使用 Prettier 自动设置代码格式 123 使用 AI 重构代码 128 识别代码异味 128 使用 Copilot检测代码异味 130 安全重构 133 生成重构代码建议 133 设置事件监听器 134 删除魔法数字 135 减少全局数据 136 修复长函数问题 137 修复命名不一致问题 138 解决缺少注释问题 139 井字棋游戏实战 140第 7 章 发现和消除漏洞 146 了解漏洞 146 检测漏洞的策略 146 常见漏洞类型 147 能否做到软件零漏洞 147 使用 Jam 进行 AI 辅助报错 148 使用静态代码分析工具预防错误 151 安装 linter 151 安装 ESLint扩展 152 使用 linter 修复代码 153 linter 与 AI 相结合 154 更改规则 156 使用 AI 检测漏洞 159 使用 AI 自动修复漏洞 162 Snyk 简介 162 Snyk 自动修复 164 对自动修复进行验证 166 判断是否适合自动修复 167第 8 章 代码翻译与优化 170 代码翻译 170 译前准备 171 翻译策略 171 使用 GPT-4 翻译完整程序 175 验证译后代码 177 使用 AI 优化代码 178 获取代码优化建议 178 避免过早优化 182第 3 部分 测试、 记录和维护代码第 9 章 测试代码 185 编写测试计划 186 选用传统还是敏捷计划 186 测试计划的分步骤流程 186 AI 在测试计划中的作用 187 识别核心功能 187 生成测试场景 188 使用测试框架 190 安装 Jest190 运行 Jest192 生成测试用例 193 阅读覆盖率报告 196 分析测试结果 197 借助 AI 进行测试驱动开发 202第 10 章 代码文档化 209 使用文档化机器人 209 构建文档助手 210 测试文档助手 212 生成代码注释和注解 214 安装和测试 Mintlify Doc Writer 214 测评 Underscore 216 创建可视化文档 219 生成序列图 220 生成需求图 221 使用 AI 实现 API 文档自动化 223 创建 REST API 文档 223 创建 API 文档聊天机器人 228第 11 章 代码维护 233 了解四种维护类型 233 纠正性软件维护 234 适应性软件维护 234 完善性软件维护 235 预防性软件维护 235 利用 AI 进行代码维护 235 使用 AI 提高代码质量 236 理解技术债务 236 使用 Code Climate 237 启用测试覆盖率报告 240 分析代码质量指标 240 使用 AI 提升代码质量 241第 4 部分 AI 工具与资源第 12 章 尝试十个 AI 工具 251 Amazon CodeWhisperer 251 Sourcegraph Cody 252 DeepMind AlphaCode 253 Google Bard 253 Codeium 254 Claude 254 MicrosoftIntelliCode 256 Sourcery 256 Bugasura 257 UserWay 258第 13 章 了解十个 AI 编程资源 259 Code.org 的 AI 资源 259 Kaggle 260 Google DatasetSearch 261 edX 261 Edabit262 StatQuest263 AI4All 开放学习 263 Gymnasium 264 fast.ai 265 Microsoft Learn 265作者简介 267致辞 267致谢 267
|
內容試閱:
|
在 OpenAI 推出 ChatGPT 近一年之后,我着手撰写本书,ChatGPT 以及微软、 谷歌、Facebook 等公司发布的一系列生成式 AI 工具正在改变我们对内容创作的认知,我们不知道这类工作将会发生多大变化,因为内容创作正是这些生成式 AI 工具的强项其实,我对这些生成式 AI 工具既爱又恨,一方面,担心自己花了大半辈子时间所掌握的写作和编程技能再无用武之地? 另一方面,希望 AI 工具可以替我处理那些无聊和毫无意义的工作,以便我能够腾出时间和精力,从事更有创意的写作和编程工作我还担心被人误会,本来我是在用传统方法进行创作 (自己独立思考,然后将想法撰写成文),有人却误以为我在用 AI 工具进行写作,去年,我写了一本当时热点话题的书就遭遇这样的误解,有些人压根没有仔细阅读过这本书,就贸然评论 “这本书很可能是用AI 写的”,为了避免以上误解,我当时就公开承诺,在写下一本书时,将直播写作过程,当时,我并不知道自己下一本书的主题就是 AI,依此承诺,我一边撰写本书,一边直播整个写作过程,就是向读者证明,这本书确实由我亲自撰写,并非由 AI 生成,如果读者有兴趣或对此有任何疑问,欢迎访问 https:/ / bit.ly/ codingwithai,查看我的整个写作过程 (包含数百小时的直播录像)尽管我本人拒绝使用 AI 写书,也常常反对其他人使用 AI 写书,但是对于使用 AI 工具生成计算机代码,我持赞成态度,回顾计算机编程的发展历史,可以看到,人类一直致力于发明更好的工具,以期简化编程工作,20 世纪 90 年代,我在 Software Development Magazine(软件开发杂志社) 工作,当时的技术编辑是罗杰?史密斯,有一天,当我们谈论编程工具的发展方向时,他坚信,未来我们一定能够使用自然语言来编写软件,对此,我当时持怀疑态度,30 年后的今天,事实证明罗杰的预言已经变为现实AI 的发展日新月异,这个月还称得上新颖有趣的技术和工具,到下个月就可能被更好的技术和工具所取代,同理,我今天书中所写的内容等到该书出版时可能也会过时,尽管AI 软件开发工具在不断优化,但是本书的技术依然广泛适用,除非真有那么一天,AI 砸碎软件开发人员的饭碗,将人类程序员淘汰对于 AI 辅助编程,无论大家持欢迎还是抵制态度,AI 新时代已经势不可挡! 本书将介绍 AI 辅助编程工具的工作原理,您学会之后就可以让代码编写工作变得更轻松、 更迅速、更优秀希望您喜欢阅读本书,并能够有所收获,如果对本书有任何问题或意见,请给我发邮件: chris@ minnick.com
|
|