原文;https://www.pmi.org/business-solutions/agile-training/technical-solutions/course-outlines
设计模式思维
第 1 天:
检查项目失败的典型原因
失败设计示例
可变代码的质量
可测试性作为开发中的 Trim-Tab
专业发展的原则和实践:战略模式
来自我们领域的智慧
第 2 天:
共性-变异性分析 (CVA)
模板方法作为 CVA 的一个例子
使用 CVA 导出桥接模式
上下文中的模式:适配器和外观模式
从第一天开始以一种新的、更好的方式重新解决问题:享元模式
通过封装和模式出现:重构为开闭
小组设计练习,第 1 部分
第 3 天:
小组设计练习,第 2 部分
灵活性方面
分析矩阵和抽象工厂
使用与创作分离
封装结构
单例模式
代理模式
装饰器模式
责任链模式
高级软件设计
第 1 天:
软件开发的本质
发现“问题中的模式”
质量、实践和原则、模式和设计范式的讨论
封装不同的行为
实体的封装
结构封装
重新审视依赖倒置和 Liskov 替换设计原则
第 2 天:
施工封装
序列和基数的封装
责任封装
元模式:使用迭代器和值对象模式和力隐藏复合模式
元模式:使用 Mediator、Observer 和 Command 优化 RAD 工具
关系的封装
进一步研究和支持选项的结论和建议
可持续的测试驱动开发
第 1 天:
敏捷背后动机的简要概述,特别是 TDD
了解通过和失败测试的实际含义
审查代码质量,以及它们与测试和可测试性的关系
TDD 中“好”测试的定义
演示代码:写什么测试,不写什么测试
单元测试/TDD 练习
第 2 天:
单元测试/TDD 练习继续进行
控制 TDD 中的依赖关系
作为测试驱动设计的 TDD
模拟对象,带有练习
代码气味和重构介绍
第 3 天:
遗留代码重构练习
重构为开放-封闭、及时的设计
通过测试重构解决测试架构
将它们放在一起:最终项目
验收测试驱动开发
第 1 天:
验收测试驱动开发 (ATDD) 的动机
定义和表达商业价值
产品重点:识别利益相关者、上下文和业务流程
需求分析
行为规范和验收测试
第 2 天:
行为规范和验收测试,续
情景分解技术
特定领域的语言
将 ATDD 置于上下文中
自动化 ATDD(仅概述)