版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件架构与设计模式案例分析设汁模式10周年之际,你真的了解模式吗各有关单位:2010年是设计模式一书出版15周年.如今,对于很多人来说,设计模式已经成为开发标准词典的一部分.15年来,设计模式思想影响了整整一代软件从业者.而且可以预料,它的影响还将继续下去.可是H前国内的大部分程序员学习设计模式和原则之后,往往是不知道如何使用模式,或者滥用模式(言必称模式),最终放弃不用模式,这样三个阶段,最终导致设计模式思想还远没有真正广泛应用,更没有起到应有的作用,因而导致很多对设计模式的误解(学习设讣模式无用论).该课程就是针对学习设讣模式这3个经典错误问题而开设的作为为一门高级课程,若内容缺乏实务便易
2、流于抽象与空泛。本课程除了深入剖析各种典型的设讣模式之原理与结构外,同时会抽取大量知名程序库中的设计模式,利用其源码辅助并加强原理讲解。并且结合讲师大量实际项L1案例进行分析.这种方式对于设计模式的学习有着极大效果。与其它的仍然沿用传统模式口录方式逐一讲述每一模式的意图,结构,适应性等的培训和图书完全不同.课程1/3的时间介绍设汁模式思想和原理,1/3时间案例,并且要求学员组合成小组进行现场设计.最后1/3时间再介绍该案例的设计过程,讲师带领大家一起对设计结果进行分析,指出不”和谐”的地方,通过逐步运用模式,改善设计.而不是把最完美的答案一下子放到学员的面前,让你佩服?并且分析为什么使用模式,
3、而不是过度设计,为什么乂要放弃模式.因为了解优秀软件设计的演变过程比学习优秀设讣本身更有价值,因为设讣的演变过程之中蕴藏着大智慧.培训时根据实际情况,可以安排学员自己的项H代码或者设计作为课程案例进行分析和设计.、培训对象该课程适合各类IT/软件企业和研发机构的软件架构师、软件设汁师、程序员。特别能够带着设计模式实践时的困惑和问题,效果最佳.到时可以与讲师PK讨论,这样对你帮助会更大,收获也会更多?本课程不是设计模式入门级别课程,不会言丁录式介绍每一模式的详细细节,因此需要学员课前做好相关准备,最好已经具备模式概念和常见模式的基本知识?最好课询可以简单预习.二、培训特色本课程注重实战,不尚空谈
4、.讲师根据本人的学习过程和经验来介绍如何解决这些问题.课程不仅仅介绍经典的GO段讣模式,而且涉及常见的其它模式和软件架构模式.该课程首次提由了解决设讣模式如何应用的5个步骤。5个步骤针对应用设计模式的不同错误症状,解决如何应用模式?知道模式是什么和真正理解什么时候去应用模式,就完全是不同的境界.以上步骤,都借助于真实项U案例(不是简单的演示之类的Demo而是真实的系统),展示如何在实际开发之中正确的选择和运用模式,在这些案例之中,在设讣时应用模式能看到实实在在的效果(每个案例,均有PK使用之前和使用之后对比).三、学员基础山于本次课程重点设汁模式如何应用,不会过多时间学习设汁模式基本概念/结构
5、/意图等,因此需要学员课前做好相关准备,以节约课程案例的思考时间以下原则和模式最好预先了解模式类型6个大型项目案例涉及软件原则和模式备注回向对象设计原则单一职责原则(SRP)变化分离“开一闭”原则(OCP)对可变性封装里氏替换原则(LSP)如何进行继承接口隔离原则(ISP)恰当的划分角色和接口依赖倒转原则(DIP)针对接口编程GOF设计模式SingletonFactoryMetResponsibiliMethod/Ada模式/Builder模式/SimpleFactory模式hod模式/Strategy/Observer/Chainofty/Command/Templatepter/Proxy
6、/Fa?ade/Bridge/Decorator/Composite/Visitor课程案例主要涉及15禾”GOF常用设计模式,也重占学八J习这些模式其它设计,模式ObjectPool/Plug-In也模式/DependencyInjection依赖注入/NullObject模式戈式/ActiveObject模式/AbstractServer模式虽然不属于GOF,但是经常件设汁时使用.案例也涉及案例涉及架这些构架构PipeFilter架构模式/Layer架构模式/MicrokernelPattern/MVC/模模式,式在局层设计四、讲师简介15年以上软件从业经历,历任程序员、设计师、软件架构师
7、、项口经理等职位.曾担任某国外独资研发中心中国区技术负责人和资深软件架构师,带领国内的研发团队负责公司儿个主要产品的研发和技术支持工作。是旧M特约讲师,经常参与社区活动并协助旧M中国进行新技术的推广和培训活动。帮助很多国内知名的软件产品研发咨询;同时还在敬捷实施方面有丰富的经验,在帮助推广敬捷开发模式和大型研发团队协作的同时,借助自己丰富的项LI管理和架构设计经验,帮助很多软件公司改进软件开发流程,提高研发团队的效率。作为演讲嘉宾及专家,多次被邀参加各种论坛和峰会发表演进,深受好评.作为特约撰稿人在多家媒体发表专题文章五、培训内容主题授课内容备注设计模式思想与困惑-你的了解设计模式吗?内容一:
8、软件设计模式-模式到底是什么?价值在哪里?1 .什么是模式2 .为什么需要设计模式?难道就为了面试吗?3 .设计模式能够给我们带来什么?4 .设计模式学习面临的困难和解决思路5 .从了解模式到正确应用模式1 .案例分析-一某保险业务系统,在使用模式前解决方案和使用模式后的对比内容一:软件设计模式本质一你真的知道模式背后的原理吗?2 .发现变化进行封装变化3 .把变化与小义必须分离4 .针对接口的编程,而/、是针对实现5 .组合优于继承1 .案例分析一某电信认证项U设计分析,分析模式背后的本质内容三:什么是好的设计一一难道使用设计模式就是好的设计吗?2 .什么是好的设计?3 .难道不使用设计模式
9、就是坏的设计吗?4 .为什么需求变化总是使你痛苦?和你的设计有关系吗?5 .好的系统设计应该有如下的性质:可扩展性、灵活性、可插入性。5.设计模式可以使你的设计更灵活,更易复用,更具可扩展性1 .案例分析一某电信项目4种设计方案的对比,那种更合适?多种方案的对比内容一:面向对象思维是模式基础2 .面向对象分析与设计的本质3 .面向对象设计思维与面向过程设计思维一职责驱动设计4 .抽象对象模型5 .封装对象模型G0F23设计模式是 建 立在对面向对象技术 深刻理解的基础之上 的,本节深入讲解面向 对象设计,儿大经典的 面向对象设计原则, 00对象模型,从各个 角度奠定学习设讣模 式之核心基础6
10、.继承对象模型7 .多态对象模型8 .面向对象常见的错误认识一思考00带来的价值设计模式 应用策略 1一面向 对象思维9 .为什么学习设计模式需要面向对象思维10 从面向对象到模式到再到真正的面向对象11 .案例分析一某ER%LI,使用面向对象设计和过程化设计PK,难道面向对象就一定是最优的?你真正理解面向对象吗?面向对象到底真正有哪些好处,不要人云亦云!内容二:面向对象设计原则(principles)1 .依赖倒置原则(DIP)2 .开放封闭原则(0CP)3 .单一职责原则(SRP)1.Liskov替换原则(LSP)5 .接口隔离原则(ISP)6 .对象组合优于类继承7 .封装变化点8 .面
11、向接口编程9.案例分析一每组原则,分别通过案例进行分析,为什么需要使用原则进行考虑内容一:知道模式-你连设计模式都不了解,还算是设计师吗?设计模式1.了解模式-需要知道自己不知道“用策略2.研读模式的关键4要素2一知道模3.创建型模式4.行为型模式M使知道本节深入阐述GOF235.结构型模式设计模式种经典设计模式6.该阶段经常遇到的应用问题和对策不一定成(包括创建型模式、7.案例分析一设计模式连连看,你知道模式吗?某公司设,一个优结构型模式、行为型模计模式考试题秀的设计式),深入解析它们的内容一:模式案例-数据库连接池系统设计师,但是不意图、动因、原理、实了解设讣1.介绍项U背景情况,如何应对
12、将来的各种变化现与应用实践。2.学员分组进行设计模式绝对不会成为3.应用设计模式,如何改善设计优秀的设4.分析设计模式是否带来软件的可维护性“师5.学习(FactoryMethod/Adapter/Proxy/Observer/Strategy等儿种设计天,UIHV/ZB7>J/设计模式内容一:研读经典系统一学习那些牛B的大师如何使用设计“用策略模式3临摹大1.学习设计模式后,可是无法使用在真实项LI的症状师2.分析经典作品,重新思考设计模式的威力田6帮3.研读设计模式的关键要素牛B的大师内容二:模式案例-Jun设计模式应用分析他们怎样1.ErichGamma和KentBeck的Juni
13、t使用设2.Junit架构思路(微内核模式)计模式的,他们也是在滥用设汁模式吗?3 .Juint的设计,哪些值得我们学习4 .设计JUnit的过程中是怎样应用设计模式的。5 .学习设计模式(Command/Composite/TemplateMethod/Adapter/Observer/Decorate)6.通过研读经典学习到什么?设计模式应用策略4你知道如何用模式去思考吗后时放弁内容一:用模式思考系统设计1 .基于模式的设计系统2 .用模式思考的过程3 .模式的应用层次和组合应用模式4 .基于模式的方法和步骤内容一:放弃设计模式的智/只要遵循原则,保持1 .放弃模式更需要智能,2.设计需要
14、的原则a)重用原则b)扩展原则c)隔离原则d)转接原则e)保变原则简单模式更值得学习3.案例分析-怎样去除设计模式,不用设计模式内容三:模式案例-缓存系统1 .项目系统背景和需求2 .缓存任何对象,任何java对象都可以缓存。3 .拥有全面的API一给你全面的程序来控制所有的缓存的特性。4 .永久缓存一缓存能随意的写入硬盘,因此允许昂贵的创建(expensive-to-create)数据来保持缓存,甚至能让应用重启。设计模式应用策略5一重构到模式通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。“虽然软件的演化, 利用重构从而得到模 式”是有效应用设讣 模式的实践准则。本节 以一
15、此重构技巧来展 示如何通过演化的方 式来步步达至设计模 式,从而帮助学员更好 地掌握如何在软件设 讣中运用设计模式,发 现更多设计模式。5 .支持集群一集群缓存数据能被单个的进行参数配置,不需要修改代码。6 .缓存记录的过期一你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默认性能不需要时)7 .系统的设计思考过程8 .展示如何用模式,进行设计9 .学习设计模式()内容一:重构到模式-1 .设计坏味道概述2 .重构思想3 .理解如何结合重构和模式;1.用模式导向的重构(pattern-directedrefactoring)改善既有代码的设计;5 .我由需要进行模式导向重构的
16、代码段;6 .了解为什么使用模式来改善既有的设计要优于在新的设计早期使用模式。7 .一组坏味(也就是问题),表示需要进行模式导向的重构;8 .实现同一模式的不同方式的示例;9 .什么时候应该通过重构实现模式、趋向模式以及去除模式给由建议。10 .常见设计模式的重构演化的过程内容二:案例-某电信管理子系统的设计1 .介绍项目需求情况,进行设计2 .通过重构逐步实现设计模式3 .Framework设计思想一好莱坞原则4学习设计模式_(FactoryMethod,TemplateMethod,Composite,ChainofResponsibility)设计模式对比大讨论内容一:模式大PK,通过对
17、比了解设计模式的细节1.创建型模式讨论a)简单工场工厂方法抽象工场b)AbstractFactory,builder,Prototype模式c)单例模式2 .行为型模式a) Adapter与Bridgeb) Composite、Decorator与Proxyc) Fa?ade模式与Adapter模式/Proxy模式d) Composite与Iterator模式3 .结构型模式a)封装变化-Strategy/State/Iterator模式b)封装结构-Mediator模式与Facade模式c)对象作为参数-Visitor/Command/Mementord)通信应该被封装还是被分布-Media
18、tor和Observere)对发送者和接收者解耦-Command式与职责链模式将实践中常容易混淆或常常联合使用的儿个模式放在一组讨论,对比分析,讲解思想。如何发现、应用更多模式。通过对“相似或相关的设计模式”的对比分析,加深理解,是避免“模式误用”的好方法。设计模式总结内容一:设计模式总结1 .设计模式不是银弹2 .设计模式真正给设计者带来的价值3 .设计模式仅仅是工具4 .超越设计模式详细内容请上网查阅:6、 培训时间、地点2011年11月9-12日地点:北京7、 证书培训结束,对理论、实践双项考核成绩合格者,颁发中国信息产业培训网及工信部软件与集成电路促进中心的培训证书。8、 费用培训费:5000元/人(含教材、培训费、培训期间午餐以及学习用具等)食宿统一安排,费用自理。请将报名回执(见附件)发送给我中心,届时将给报名人员寄发“报到通知”,告知上课地点及乘车路
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年太和县医疗事业单位人员招聘笔试备考题库及答案解析
- 2026年马山县带编教师招聘笔试备考题库及答案解析
- 2026年南漳县医疗事业单位人员招聘笔试参考题库及答案解析
- 2026年石阡县医疗事业单位人员招聘考试备考试题及答案解析
- 2026年天镇县医疗事业单位人员招聘笔试模拟试题及答案解析
- 2026年印江土家族苗族自治县医疗事业单位人员招聘考试备考题库及答案解析
- 2026年理塘县社区工作者招聘笔试参考题库及答案解析
- 2026年唐河县医疗事业单位人员招聘笔试参考题库及答案解析
- 2026年阳谷县医疗事业单位人员招聘考试备考试题及答案解析
- 2026年西林县社区工作者招聘考试模拟试题及答案解析
- 消防与气体灭火监理细则
- 房产公证委托书模板
- 智慧渔业 课件全套 第1-9章 绪论 -水产品智能物流追溯及安全体
- 青岛市市南区2025-2026学年第二学期五年级语文期末考试卷(部编版含答案)
- 2026年全国两会解读:基层治理能力提升
- 人力资源管理六大模块2026年培训
- 医疗器械员工培训制度
- 试生产调度制度
- 食品安全常识课件
- 信息安全认证服务协议
- 全国大学生职业规划大赛《无人驾驶航空器系统工程》专业生涯发展展示【曾获省级一等奖】
评论
0/150
提交评论