当前位置: 首页 > news >正文

AI 如何改变软件工程:Martin Fowler 视角 + 实战洞见

AI 如何改变软件工程Martin Fowler 视角 实战洞见AI尤其是 LLM是软件工程自高级语言从汇编到 C/Fortran以来最大的转变。它引入了非确定性Non-deterministic编程改变了从编码、理解遗留代码、重构到整体开发流程的方式。Martin Fowler《Refactoring》作者、Thoughtworks 首席科学家在 2025 年多次深度讨论这些话题强调AI 不会消灭软件工程而是放大既有实践并要求工程师更注重架构、测试和重构。1. 核心转变从确定性 → 非确定性编程传统软件工程代码是确定性的输入相同 → 输出相同。可预测、可精确控制。AI 辅助工程LLM 输出有概率性hallucination、上下文漂移。即使相同 prompt也可能不同结果。影响工程师角色从“写代码”转向监督、验证、编排Orchestration。Fowler 比喻把 LLM 当作“一个非常高产但不可靠的合作者”每次输出都像审查一个可疑的 PR。氛围编程 / Vibe Coding氛围/感觉编程完全不看代码只通过 prompt 描述“感觉”vibe让 AI 生成原型或探索性应用。适用场景快速原型、一次性工具、内部小工具低风险。局限生产系统危险。Fowler 认为它适合探索但核心业务必须结合确定性技术。2. AI 在遗留代码Legacy Code中的革命性作用AI 极大降低了理解和改造老旧系统的门槛快速总结AI 可阅读数十万行代码解释业务逻辑、找出死代码、依赖关系。生成文档与测试自动生成测试用例、架构图帮助团队接手遗留系统。辅助重构建议 Extract Method、引入设计模式但不能完全自动化可能引入隐蔽 bug。最佳实践Fowler 社区共识先写/生成测试锁定行为。小步重构 人工 Review。用 AI 理解上下文再用 IDE 确定性重构工具执行。3. 重构的重要性比以往更强Fowler 反复强调AI 生成大量“能用但质量可疑”的代码重构成为必备技能。AI 加速产生代码 → 技术债积累更快。重构仍是保持可维护性、可理解性的核心。结合 AI IDERename、Extract Method 等效率更高。未来AI 可建议大规模重构但人类负责验证架构一致性。与设计模式结合AI 擅长识别代码坏味道并建议应用 Factory、Strategy、Decorator 等模式但需要工程师确保符合领域模型。4. 对敏捷开发的影响AI 强化了敏捷的核心迭代、反馈、响应变化更快迭代原型更快Sprint 内可交付更多价值。持续重构每个迭代预留时间清理 AI 生成的代码。TDD 进化TDD 成为“最强 prompt 工程”——先写测试再让 AI 实现。演进式架构Evolutionary Architecture用 Fitness Functions AI 持续验证架构规则。团队实践Pair Programming 可能演变为 Human-AI 协作Retrospective 需讨论 AI 使用规范。零利率时代ZIRP结束的影响2022 年后高利率环境下VC 资金收紧AI 成为少数热点吸引大量投资。软件团队压力增大更注重效率、盈利能力和可持续维护而非盲目扩张。这让重构、干净架构、AI 辅助提效变得更加关键——低质量代码的维护成本在紧缩环境下无法承受。5. 软件架构与 AI 的新挑战与机遇模块化更重要良好模块化减少 LLM 上下文负担提高 AI 修改准确率。Clean/Hexagonal/DDD 架构AI 更容易在边界清晰的系统中工作。新兴模式Agentic 开发多代理协作、监督式工程Human in the loop。Fowler 建议保持架构决策记录ADR用 AI 辅助审查但人类保留最终判断。6. 总体收益、风险与未来收益生产力提升尤其是 boilerplate、遗留理解、测试。降低入门门槛资深工程师专注高价值工作架构、业务对齐。更快响应需求符合敏捷精神。风险代码质量下降、维护性变差如果过度依赖 vibe coding。训练数据污染大量低质 AI 代码进入未来模型。过度乐观导致跳过 Review 和测试。Fowler 的平衡观点AI 是强大工具但软件工程的核心原则可理解性、可持续性、测试依然不变甚至更重要。结合确定性工具IDE 重构、类型系统、自动化测试才是制胜之道。给你落地建议结合你之前问的重构、敏捷、架构日常流程Prompt → AI 生成 → 测试锁定 → IDE 重构 → Review。遗留系统先用 AI 生成架构地图和测试再分模块重构。团队制定 AI 使用规范什么场景用 vibe coding什么必须人工。学习阅读 Fowler 最新文章如 martinfowler.com 的 Generative AI 系列和 Pragmatic Engineer 访谈。如果你想深入某个部分如具体重构案例、Clean Architecture AI 模板、DDD 在 AI 时代的应用、或某个遗留代码片段的 AI 分析直接贴代码或指定方向我可以给你针对性方案。AI 正在重塑软件工程但人 原则依然是核心。保持重构习惯、拥抱敏捷你就能在变革中领先。
http://www.zskr.cn/news/1380828.html

相关文章:

  • 深度解析stltostp:STL到STEP转换的技术突破与架构揭秘
  • 视频封面哪个更省事?5款AI工具实测对比不翻
  • 科学机器学习模型超参数调优实战:从ESN、FNO到KAN的工程化指南
  • 独立开发者如何通过Token Plan套餐有效控制AI实验成本
  • QB-EXPRESS:如何通过拼车发射与测试测量,实现低成本太空实验验证
  • CANN runtime:昇腾NPU 运行时的职责边界
  • 2026年5月浪琴官方售后网点现场记录与数据验证报告(含真实体验) - 浪琴服务中心
  • 终极网页离线保存指南:SingleFile让完整网页归档变得简单
  • 2026论文降AI率必备清单:降AIGC工具红黑榜与专家选型建议
  • Hitboxer:终极SOCD按键重映射解决方案,彻底解决游戏按键冲突问题
  • 基于ESP8266的可穿戴Wi-Fi设备:从硬件设计到ESPHome智能控制
  • 告别Appium!用Python+UIAutomator2搞定Android自动化测试(附完整环境搭建与实战代码)
  • 3步解锁MacBook Touch Bar在Windows系统的完整功能:终极免费解决方案
  • 把握孩子心理成长特点,从容应对孩子脾气
  • 爬虫搞钱产品化
  • 开源Switch模拟器yuzu实战指南:5步从零开始畅玩任天堂游戏
  • 免费Cherry MX键帽3D模型:从零打造个性化机械键盘的完整指南
  • 告别Selenium?手把手教你用Playwright录制脚本,5分钟搞定Web自动化测试
  • 终极虚拟显示器解决方案:ParsecVDisplay完整使用指南
  • 告别卡顿!用MediaCodec+SurfaceView实现Android视频流畅播放的完整实战
  • 在自动化Agent工作流中集成Taotoken统一管理模型调用
  • OpenModelica仿真结果处理全攻略:除了.mat和.plt,你的CSV、XML导出与多核加速技巧都在这了
  • DIY便携式光敏电阻自动灯光控制器:从电路设计到3D打印外壳
  • 解密macOS应用清理革命:如何用开源方案彻底释放磁盘空间
  • 极域电子教室破解指南:3步轻松解除课堂控制限制
  • 5个颠覆性OmenSuperHub性能控制技巧:彻底释放你的惠普游戏本潜能
  • 长期观察不同模型在Taotoken平台上的响应速度与输出质量稳定性
  • 对比按量计费,Taotoken的Token Plan套餐在长期项目中的成本感受
  • 告别ROS启动慢:详解.bashrc中ROS_MASTER_URI和ROS_IP的正确设置方法(Ubuntu 20.04/22.04)
  • 5步完美解决Windows 10 PL2303驱动兼容性问题:完整实施方案指南