工程师
互联网
软件设计
推荐课程
average > 0 ? $model->average . '分' : '10.0分' ?>

敏捷软件设计

课程费用

6800.00 /人

课程时长

2

成为教练

课程简介

课程主要在「面向对象」的软件设计、重构技巧上帮助学员进一步提升,从而提升企业软件研发效率、降低长期维护成本。
课程还同时向学员展现在日常工作中高效拆分需求的方法,提升产品团队和研发团队的协作效率。

目标收益

本课程涉及到的方法、技巧主要来源于敏捷开发(包括极限编程 XP、Scrum)。在两天的学习里,讲师将透过工作中的实际案例拆解、分析,以及大量的代码练习来帮助学员学习:
• 通过更好地「面向对象」软件设计避免产生烂代码;
• 浮现式面向对象的软件设计方法;
• 常见代码问题,以及代码重构的原则和技巧;
• 测试驱动开发(TDD);
• 敏捷迭代的需求分析方法(实例化需求)。
本课程将开启一扇通往最优秀软件研发工程师的窗户。

培训对象

课程适合有一年以上面向对象语言使用经验的研发工程师

课程大纲

开篇 分组,互相认识
第一个练习:FizzBuzz 学习目标:
• 了解结对编程方式;
• 了解 Cyber Dojo 练习方法;
• 尝试编写第一个测试用例。
进阶设计 FizzBuzz 学习目标:
• 运用场景分析进行需求分析;
• 使用测试代码推动软件设计(TDD);
• 返回值对面向对象设计的影响。
第二个练习:用户登录 学习目标:
• 运用「实例化需求」方法拆分软件需求;
• 制定更符合业务需要的软件开发计划。
「用户登录」2-3 次迭代的代码练习: 学习目标:
• 安全地频繁提交代码;
• 烂代码的特征;
• 重构推动面向对象设计。
回顾 第一天课程回顾
全天完整练习:收银机 复习运用第一天的学习成果,以小组为单位进行需求分析和代码练习,注 意运用:实例化需求、单元测试、重构等技巧,关注优化面向对象设计。
Code Review Code Review
总结 全面课程回顾,下一步进阶建议,结课。
开篇
分组,互相认识
第一个练习:FizzBuzz
学习目标:
• 了解结对编程方式;
• 了解 Cyber Dojo 练习方法;
• 尝试编写第一个测试用例。
进阶设计 FizzBuzz
学习目标:
• 运用场景分析进行需求分析;
• 使用测试代码推动软件设计(TDD);
• 返回值对面向对象设计的影响。
第二个练习:用户登录
学习目标:
• 运用「实例化需求」方法拆分软件需求;
• 制定更符合业务需要的软件开发计划。
「用户登录」2-3 次迭代的代码练习:
学习目标:
• 安全地频繁提交代码;
• 烂代码的特征;
• 重构推动面向对象设计。
回顾
第一天课程回顾
全天完整练习:收银机
复习运用第一天的学习成果,以小组为单位进行需求分析和代码练习,注 意运用:实例化需求、单元测试、重构等技巧,关注优化面向对象设计。
Code Review
Code Review
总结
全面课程回顾,下一步进阶建议,结课。
提交需求