会议详情 |
2024-06-20 09:00 至 2024-11-22 18:00
优惠信息:
发票类型:增值税普通发票 增值税专用发票
软件设计模式与软件重构实战训练营
暨工信部教考中心软件设计高级工程师认证
培训班
培训服务一览表 | ||
培训地点 | 北京 | 北京 |
培训时间 | 6月 20-23 | 11月 |
培训方式 | · 现场面授 · 直播授课 · 录播回放 | |
专家授课 | · 4天集中培训学习:每天6课时,实战专家授课 · 理论梳理 · 案例分享 · 实战演练 | |
纸质资料 | 软件设计模式与软件重构实战训练营培训讲义 | |
学习平台 | PC端 移动端APP | |
社群服务 | · 学员在线交流 · 专家在线答疑 · 班主任教学管理 | |
此课程可根据具体需求定制企业内训解决方案 | ||
无数软件企业及其研发团队都面临着,大量初级程序开发人员低质量软件开发带来的严重问题,即使那些工作多年的高级程序员也存在着对提高软件设计质量认识不深的问题。正是由于以上的问题,造成许多公司对运行了多年的核心业务,运行维护成本越来越高,却不能更换、一直维护下去的恶性循环。如何通过培训,切实有效地提高员工设计开发水平,从而有效地改善软件设计质量,成为越来越多的软件企业迫切需要解决的问题。本课程不仅在讲解高质量软件设计的理论知识,更关键是将这些知识投放到各个真实的设计场景中。在这些场景中,我们可以看到我们要面对的设计难题,通过对设计难题的深入剖析,寻找问题的根源,对症下药,从而制订出正确的设计方案。不仅如此,本课程的案例选取了许多在需求变更中不断变化的设计过程,从而用慢动作的手法展现了,最初的需求与设计是怎样,第一次变更的设计,第二层变更的设计,第三次变更的设计……这样的过程展示了,如何在需求变更的过程中,通过每一次正确的设计,不让软件退化,来保证高质量的软件设计。本课程首先深入剖析软件质量下降的根源,提出重构是软件变更中保持高质量的必然,讲解如何运用“两顶帽子”的方式应对变更,拒绝腐化。站在实战的角度讲解高质量软件设计的“小步快跑”过程。接着,用真实案例讲解已经代码腐化的遗留系统是如何通过“软件重构七步曲”,由简入深、循序渐进地重构一个大系统。课程的最后,更加深层次地讲解软件重构面临的难题,以及有效地解决之道。
本课程注重实战,采用案例贯穿的方式,收集了大量的真实案例,针对项目过程中技术人员常犯的错误进行了汇总与研讨,并最终形成培训教程。通过大量的真实案例,详细地介绍了软件设计过程需要注意的要点以及难点,这些知识都是讲师十几年经验的总结。本次课程1/3时间讲解核心思想,1/3时间动手重构实践,1/3点评分析总结。
学员学习本课程应具备下列基础知识:
l. 目前正在面临复杂遗留系统,必须需要维护和重构
2. 具有面向对象的基本概念,熟悉基本设计模式。
初中高级工程师、企业架构师、软件设计师等;
各类软件研发中心的软件设计师、架构师、项目经理、技术总监、质量部门经理。对于重构技术怀有疑问和困惑,需要梳理解答的团队和个人,效果最佳。
代码重构 | 设计重构 | 软件腐烂监控 | 重构管理 | |
程序员 | 必须精通 | 需要了解 | 需要了解 | 需要了解 |
设计师 | 必须精通 | 必须精通 | 需要了解 | 需要了解 |
架构师 | 必须精通 | 必须精通 | 必须精通 | 必须精通 |
数据库工程师 | 需要了解 | 需要了解 | / | / |
质量管理 | / | / | 必须精通 | 必须精通 |
管理者 | / | / | 需要监控 | 需要了解 |
二〇二四年三月三日
工业和信息化部教育与考试中心职业技术证书样本
北京中培伟业管理咨询有限公司(以下简称“中培”)成立于2006年,其主营业务面向大中型企业的IT规划咨询业务和面向高端IT人才的培训类业务,其中咨询业务涉及大型集团化企业的IT战略规划、IT架构规划、IT综合管控等领域,培训业务涉及线上线下各种高级IT技术和管理类课程体系。借助于其优质的专家资源池和互联网平台,中培已经为众多的世界500强企业、国有大中型集团化企业、国际知名互联网企业提供过高质量的信息化战略规划、组织架构规划、科技人才管理、信息技术架构规划、信息系统开发和运维管理、信息化能力评测的相关培训与咨询服务。
第1-2天 |
软件设计模式授课内容 |
第一部分 高质量软件设计 |
|
第一章 什么是高质量的软件设计 |
情景剧:软件设计焦虑症
探讨:如何进行高质量的软件设计 什么是高质量的软件设计
|
第二章 软件设计原则 |
易于阅读:
案例:代码编写范例与简便易行的方法
易于维护与变更
案例:购票业务类与数据访问类
案例:需求变更与可扩展点设计 案例:Square/Circle的解决方案
案例:Rectangle/Square的问题 案例:查询参数传递类的问题
案例:评审系统的设计
案例:财务凭证变更带来的问题 案例:超级大函数与大对象的难题 案例:MySQL读写分离的改造过程
典型的代码重复案例 探讨代码复用的难题
探讨软件设计模式:
|
第二部分 软件设计模式 |
|
第三章 适配器模式 |
什么是适配器模式
适配器模式的应用
案例:Hibernate适配器的设计
案例:第三方支付接口的设计 案例:财务数据接口的设计
|
第四章 策略模式 |
什么是策略模式
策略模式的应用
练习:财务凭证生成功能的设计与实现 |
第五章 工厂模式 |
探讨软件设计中遇到的难题
简单工厂模式
案例:剖析Spring的beanFactory
案例:数据导出功能的工厂实现
工厂方法模式
案例:SAX框架的工厂类设计
抽象工厂模式
案例:标签库的设计改进过程
|
第六章 单例模式 |
什么是单例模式
单例模式的应用
|
第七章 原型模式 |
什么是原型模式
原型模式的设计实现 案例:函数调用的无副作用问题 案例:JavsScript中的原型模式 |
第八章 模板方法模式 |
什么是模板方法模式
模板方法模式的作用与技巧 案例:一个工厂模板的设计与实现 深入理解不要重复自己原则
|
第九章 装饰者模式 |
什么是装饰者模式
装饰者模式的应用 案例:多数据源的设计实现
案例:商城收银系统的设计变更过程
重新理解里氏替换原则
练习:商场收银系统的2种设计与实现 |
第十章 桥接模式 |
什么是桥接模式
桥接模式的应用 案例:员工管理与工资发放的设计
案例:查询支持类的设计
深入体会单一职责原则 |
第十一章 享元模式 |
什么是享元模式
享元模式的应用 案例:数据缓存的设计实现 案例:享元模式在大数据中的应用 |
第十二章 其它设计模式 |
观察者模式:JobHunter的情景剧 代理模式:老板与秘书的差异 命令模式:像工作流一样处理业务 外观模式:超级家庭影院的烦恼 构建器模式:SQL Builder的设计 组合模式:如何构建一棵树 中介者模式:QQ在沟通中的作用 迭代器模式:如何顺序访问一个集合 |
第2-4天 |
软件重构实战授课内容 |
第一部分 为什么软件需要及时重构 |
|
第一单元 剖析软件质量不断下降的根源 |
质量不断下降的表现:
以往采取的措施:
带来的问题
分析与反思
案例分析:一个遗留系统的演化过程
软件质量下降的根源:
软件是因需求变更而质量下降吗? 案例分析:推演软件变更的设计过程 应对软件变更的最佳方式:两顶帽子
案例:演示两顶帽子的设计过程 案例:财务凭证生成程序的设计过程 |
第二单元 高质量的软件设计过程 |
案例讲解软件设计原则
案例:购票业务类与数据访问类
案例:需求变更与可扩展点设计 案例:Square/Circle的解决方案
案例:Rectangle/Square的问题 案例:查询参数传递类的问题
案例:财务凭证变更带来的问题 案例:超级大函数与大对象的难题 案例:MySQL读写分离的改造过程
以往软件设计的过程:
小步快跑模式的开发过程:
案例:演示小步快跑的开发过程 小步快跑解决的问题:
案例:数据推送程序的设计过程 |
第二部分 如何进行软件重构 |
|
第三单元 何为重构 |
软件重构的概念
案例:一个Hello World重构过程
案例:Hello World的自动化测试过程
案例分析:重构一个大型遗留系统
超级大函数及其危害 案例:演示大函数产生的过程 案例:演示抽取方法操作步骤 实践抽取方法会遇到的问题和解决方案
超级大对象及其危害 案例:演示超级大对象的产生过程 案例:演示抽取类的操作步骤 讲解单一职责设计原则 案例:演示“分久必合,合久必分”的重构过程
讲解顺序编程及其危害 “不要重复代码”原则 案例:提高代码复用的6个方法 案例:演示新增代码时的代码复用过程 用静态检查工具检查重复代码
过度设计 vs. 恰如其分的设计 讲解“开放-封闭”的设计原则 案例:讲解可扩展设计的4个方法 案例:讲解新增代码的可扩展设计过程
案例:讲解接口、实现与工厂模式 案例:讲解外部接口解耦与适配器模式
反思软件架构需要怎样的分层结构 遗留系统如何拥抱需求变化 遗留系统如何应对技术变革
领域驱动设计的概念 讲解领域模型分析方法 案例:智能温控器分析设计过程(嵌入式+物联网)
练习:重构一个小程序并编写测试脚本
|
第四单元 关于重构的讨论 |
什么时候重构
测试的困境
重构的评价
|
范老师 独立咨询顾问,畅销书籍《架构真意》与《大话重构》的作者,规模化敏捷SPC。曾任航天信息首席架构师,哈工大软件工程硕士,软件架构及重构的客座讲师。从事软件研发工作近二十年,并且现在一直坚守在大型软件架构设计一线工作。从需求分析、软件开发到项目管理、架构设计都有丰富的从业经验。先后参与了数十个国内大型软件项目,涉及国家财政、军工、税务、医疗等领域的大数据中台建设、风险防控与人工智能研究。互联网转型、微服务转型及大数据转型的实践者与倡导者。同时,还是大型遗留系统改造专业户,多次参与大型遗留系统改造、软件系统重构等重大项目,长期关注大型业务系统的品质保证、防止腐化以及技术改造等困扰软件企业的问题,在遗留系统优化与改造方面有丰富的经验。
程老师 中国科学院软件研究所硕士,主要研究方向:架构设计、项目管理实践、大型高可用高并发架构设计、微服务架构、软件测试等等。熟悉网络分布式计算、数据库、网络操作系统,精通J2EE、SQL、中间件服务器。在J2EE技术领域具有理论功底和实践经验。在J2ME商务应用和基于J2ME游戏开发领域具有深厚的理论功底和丰富的实战经验。主要授课方向:DevOps落地实践、微服务架构、软件构架设计、UML、GO语言、OOAD、J2EE企业级高级应用开发等。 擅长架构企业级应用;有独立工作流引擎开发、企业系统应用集成方面的丰富经验;在企业门户(Portal)、报表、工作流引擎和企业服务总线(ESB)等应用领域有深入的理论研究和充分的实践;对软件开发的整个流程有深刻认识,有很好的协作精神和学习能力。在架构下的系统设计和开发方面均有丰富经验。能够结合实际,在复杂的应用环境中选择适合的技术组合并合理利用开源中间件来降低项目开发风险、缩短开发周期、提高应用系统的可维护性和可扩展性。
尹老师 《Spring Cloud微服务-全栈技术与案例解析》,《Spring Cloud微服务入门实战与进阶》作者。简单的技术爱好者,先后就职于京东和阿里巴巴。一直从事Java服务端开发工作,前端开发工作。主要关注分布式,高并发,后端服务,目前重心在微服务这块。
个人成就出书:《Spring Cloud微服务-全栈技术与案例解析》《Spring Cloud微服务入门实战与进阶》GitChat: 微服务中的短信服务如何设计?演讲:极部落Java开发者大会,iTechPlus Java开发者大会分享嘉宾。
培训费:8800元/人(含培训费、资料费、学习期间午餐以及录播视频回放一年)食宿可统一安排,费用自理。
参加培训并通过考试学员,由工业和信息化部教育与考试中心统一颁发《软件设计模式与重构工程师》工业和信息化职业能力证书,证书可作为专业技术人员职业能力考核的证明,以及专业技术人员岗位聘用、任职、定级和晋升职务的重要依据。
相关会议
2024-12-02线上活动
2024-12-02线上活动