IC培训
   
 

软件设计模式(整洁代码与重构)高级课程

 
   班级规模及环境--热线:4008699035 手机:15921673576/13918613812( 微信同号)
       坚持小班授课,为保证培训效果,增加互动环节,每期人数限3到5人。
   上课时间和地点
上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:协同大厦
近开课时间(周末班/连续班/晚班):2021年10月25日(欢迎您垂询,视教育质量为生命!)
   实验设备
     ☆资深工程师授课
        
        ☆注重质量 ☆边讲边练

        ☆合格学员免费推荐工作
        ★实验设备请点击这儿查看★
   质量保障

        1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
        2、课程完成后,授课老师留给学员手机和Email,保障培训效果,免费提供半年的技术支持。
        3、培训合格学员可享受免费推荐就业机会。

课程大纲
体现简单之美的设计方案
可重用的对象与组件
支持良好的可扩展性
充分的测试覆盖率
可读性高的代码;
案例分析
代码阅读:通过运用组合方法模式思想对代码进行重构,进而演化为  Template Method模式去除重复代码
代码阅读:分析面向对象设计方法所不能解决的重复问题,从而引入函数式思想去除重复
邮件服务器:分析邮件服务器代码暴露的问题,在可重用性、代码可维护性、可扩展性等诸多方面着手,剖析代码坏味道。
面向对象的设计要素
合理封装的要点
迪米特法则
继承与委派的区别
关注点分离原则
多态与抽象
案例分析
报表系统之参数处理:了解封装的本质,明确职责的分配以及智能对象的意义,理解  “信息专家”模
式。
事务处理的设计:通过分析职责的承担者,从而辨别职责的分配,并以组合桥接的方式进行抽象的分离。
电子商务系统之订单处理:对行为的封装,职责的委派而非继承的方式,进而重构到  Command模式。
面向对象设计核心的SOLID原则
单一职责原则(SRP):该原则是合理封装对象,分配职责的重要原则;
开放封闭原则(OCP):该原则体现了扩展式开发的核心思想;
Liskov替换原则(LSP):可以将该原则视为是对是否正确运用继承的检验标准;


接口隔离原则(ISP):对于接⼝的粒度进行规划,以便于设计出更好的接口;
依赖倒置原则(DCP):对于依赖和解耦的分析,利用抽象保证设计的可扩展性;
议题二:整洁代码与重构
编写整洁的代码
糟糕的代码与混乱的代价,整洁代码的艺术;
如何对变量、方法和类进行命名;
如何设计方法,遵循 DRY与CQS原则;
如何进行错误处理和异常处理;
如何组织类和包;
案例分析
给出真实项目中真实的代码片段,对这些代码进行分析,并利用整洁代码的原则进行改善。这些代码涉及到的问题包括:循环嵌套太多,方法命名不合理,缺乏足够的封装,性能问题;
通过重构改善既有代码
破窗理论与重构的原则,包括重构与设计的关系,重构的时机和开展重构的原因介绍代码的坏味道:详细介绍各种代码的坏味道,包括重复的代码、过长函数、过大类、依恋情结、平行继承体系、发散式变化、霰弹式修改等 22种坏味道。
介绍常见的重构手法,例如提取参数、提取方法、提取类、搬移方法、提取参数对象,以委托取代继承等,并利用实际的案例展现如何对丑陋的代码进行重构。
案例分析
对媒体管理系统的坏味道识别,利用重构改善代码,并逐步引入  Strategy模式与Visitor模式,进行改善设计。
议题三:合理的职责分配是良好设计的基础
职责驱动设计
职责的层次:包括职责层次的识别、职责层次与软件架构层次之间的关系、职责与概念、规约与实现
对象的角色:角色、职责与协作是三位一体的关系,角色是发起职责的对象,职责则应该是对象之间的协作
模块级的职责分配:如何根据职责对模块进行分解,了解高内聚、松耦合原则。
案例分析
对邮件服务器进行分析,通过分辨职责层次,来改善设计。并提出需求变更,从而引进对观察者模式、策略模式、简单工厂模式、调停者模式与职责链模式的对比与分析;
处理HTTP请求与应答,体现信息持有者角色;
JMS对Queue的创建体现构造者角色;
税务报告的生成体现服务提供者角色;
服务定位器体现协调者角色;
内容验证器体现控制者角色;
EISaaS的模块划分;
基于AKKA的REST框架Spray;
国际报税系统的架构演进,提出模块重用的方式;
职责分配遵循的原则与模式
分析单一职责原则:分析该原则的核心思想,关注对象的变化点
专家模式:专家模式的核心思想是信息的持有者是操作该信息的专家
自治对象:分析了自治对象的特征,分别包括:小完备,稳定空间,自我履行与独立进化
案例分析
设备状态的迁移:利用 “自治对象”思想逐步引入State模式,并结合实际需求分析标准 State模式的问题,从而对该模式进行改进
议题四:应对需求的变化,设计可扩展的软件
如何应对需求的变化
抽象的关键在于寻找多个对象(或行为)具有的共同特征,并对特性进行泛化
函数式非凡的抽象能力
识别变化点,对变化进行封装
解耦具体依赖:介绍常见的解除具体依赖的方法,包括表驱动法、配置与反射、IoC容器、惯例优于配置
案例分析 *项目管理模型的抽象,通过对多种项⺫管理过程进行分析,对各种模型概念进行分类,并抽象出模型的共同特征,从而简化模型;  *电子商务系统的票据业务规则,引用  Specification模式;   *CIMS系统的机器加载策略,引⼊ Strategy模式; *短信服务,引用Facade模式与Adpater模式;    *人力资源系统考勤模块,介绍 Gateway模式; * URL Web请求,讲解如何解耦具体依赖;
扩展式设计
扩展式设计的过程
案例分析
消息队列规范的设计:通过分析 JMS、MSMQ的设计,理解抽象的含义,例如理解面向接⼝设计、接⼝隔离原则、按意图设计、 Facade模式;


保单问卷调查:讲解如何从坏设计逐步重构到 Visitor模式;
议题五:设计模式的本质
设计模式的境界
初学者:拔剑四顾心茫然,不知道该如何运用设计模式
熟练者:过尤不及,为模式⽽模式,常常导致设计过度
精通者:无招胜有招,掌握了设计模式的本质,能够恰如其分地运用设计模式
设计的常见问题
理论与设计无法有效结合
过度运用设计模式
急于编码,没有有效的设计
设计模式的本质
合理的职责分配是基础
封装并抽象变化是核心
合理运用面向对象设计思想
合理运用面向对象设计原则
案例分析:JUnit框架
通过全面剖析JUnit测试框架,了解大师的设计艺术,展现  JUnit是如何保证框架的简单、可扩展、可重用。内容包括: * JUnit的组件结构  * JUnit的Test Case设计  *如何支持Test  Result显⽰的扩展 *  JUnit中如何通过复杂的设计来简化用户的使用




 

android开发板
linux_android开发板
fpga图像处理
曙海培训实验设备
fpga培训班
 
本课程部分实验室实景
曙海实验室
实验室
曙海培训优势
 
  合作伙伴与授权机构



Altera全球合作培训机构



诺基亚Symbian公司授权培训中心


Atmel公司全球战略合作伙伴


微软全球嵌入式培训合作伙伴


英国ARM公司授权培训中心


ARM工具关键合作单位
  我们培训过的企业客户评价:
    曙海的andriod 系统与应用培训完全符合了我公司的要求,达到了我公司培训的目的。 特别值得一提的是授课讲师针对我们公司的开发的项目专门提供了一些很好程序的源代码, 基本满足了我们的项目要求。
——上海贝尔,李工
    曙海培训DSP2000的老师,上课思路清晰,口齿清楚,由浅入深,重点突出,培训效果是不错的,
达到了我们想要的效果,希望继续合作下去。
——中国电子科技集团技术部主任 马工
    曙海的FPGA 培训很好地填补了高校FPGA培训空白,不错。总之,有利于学生的发展, 有利于教师的发展,有利于课程的发展,有利于社会的发展。
——上海电子,冯老师
    曙海给我们公司提供的Dsp6000培训,符合我们项目的开发要求,解决了很多困惑我 们很久的问题,与曙海的合作非常愉快。
——公安部第三研究所,项目部负责人李先生
    MTK培训-我在网上找了很久,就是找不到。在曙海居然有MTK驱动的培训,老师经验 很丰富,知识面很广。下一个还想培训IPHONE苹果手机。跟他们合作很愉快,老师很有人情味,态度很和蔼。
——台湾双扬科技,研发处经理,杨先生
    曙海对我们公司的iPhone培训,实验项目很多,确实学到了东西。受益无穷 啊!特别是对于那种正在开发项目的,确实是物超所值。
——台湾欧泽科技,张工
    通过参加Symbian培训,再做Symbian相关的项目感觉更加得心应手了,理 论加实践的授课方式,很有针对性,非常的适合我们。学完之后,很轻松的就完成了我们的项目。
——IBM公司,沈经理
    有曙海这样的DSP开发培训单位,是教育行业的财富,听了他们的课,茅塞顿开。
——上海医疗器械高等学校,罗老师
  我们新培训过的企业客户以及培训的主要内容:
 

一汽海马汽车 DSP培训
苏州金属研究院 DSP培训
南京南瑞集团技术 FPGA培训
西安爱生技术集团 FPGA培训,DSP培训
成都熊谷加世电气 DSP培训
福斯赛诺分析仪器(苏州) FPGA培训
南京国电工程 FPGA培训
北京环境特性研究所 达芬奇培训
中国科微系统与信息技术研究所 FPGA高级培训
重庆网视只能流技术开发 达芬奇培训
无锡力芯微电子股份 IC电磁兼容
河北科研究所 FPGA培训
上海微小卫星工程中心 DSP培训
广州航天航空 POWERPC培训
桂林航天工 DSP培训
江苏五维电子科技 达芬奇培训
无锡步进电机自动控制技术 DSP培训
江门市安利电源工程 DSP培训
长江力伟股份 CADENCE 培训
爱普生科技(无锡 ) 数字模拟电路
河南平高 电气 DSP培训
中国航天员科研训练中心 A/D仿真
常州易控汽车电子 WINDOWS驱动培训
南通大学 DSP培训
上海集成电路研发中心 达芬奇培训
北京瑞志合众科技 WINDOWS驱动培训
江苏金智科技股份 FPGA高级培训
中国重工第710研究所 FPGA高级培训
芜湖伯特利汽车安全系统 DSP培训
厦门中智能软件技术 Android培训
上海科慢车辆部件系统EMC培训
中国电子科技集团第五十研究所,软件无线电培训
苏州浩克系统科技 FPGA培训
上海申达自动防范系统 FPGA培训
四川长虹佳华信息 MTK培训
公安部第三研究所--FPGA初中高技术开发培训以及DSP达芬奇芯片视频、图像处理技术培训
上海电子信息职业技术--FPGA高级开发技术培训
上海点逸网络科技有限公司--3G手机ANDROID应用和系统开发技术培训
格科微电子有限公司--MTK应用(MMI)和驱动开发技术培训
南昌航空大学--fpga 高级开发技术培训
IBM 公司--3G手机ANDROID系统和应用技术开发培训
上海贝尔--3G手机ANDROID系统和应用技术开发培训
中国双飞--Vxworks 应用和BSP开发技术培训

 

上海水务建设工程有限公司--Alter/Xilinx FPGA应用开发技术培训
恩法半导体科技--Allegro Candence PCB 仿真和信号完整性技术培训
中国计量--3G手机ANDROID应用和系统开发技术培训
冠捷科技--FPGA芯片设计技术培训
芬尼克兹节能设备--FPGA高级技术开发培训
川奇光电--3G手机ANDROID系统和应用技术开发培训
东华大学--Dsp6000系统开发技术培训
上海理工大学--FPGA高级开发技术培训
同济大学--Dsp6000图像/视频处理技术培训
上海医疗器械高等专科学校--Dsp6000图像/视频处理技术培训
中航工业无线电电子研究所--Vxworks 应用和BSP开发技术培训
北京交通大学--Powerpc开发技术培训
浙江理工大学--Dsp6000图像/视频处理技术培训
台湾双阳科技股份有限公司--MTK应用(MMI)和驱动开发技术培训
滚石移动--MTK应用(MMI)和驱动开发技术培训
冠捷半导体--Linux系统开发技术培训
奥波--CortexM3+uC/OS开发技术培训
迅时通信--WinCE应用与驱动开发技术培训
海鹰医疗电子系统--DSP6000图像处理技术培训
博耀科技--Linux系统开发技术培训
华路时代信息技术--VxWorks BSP开发技术培训
台湾欧泽科技--iPhone开发技术培训
宝康电子--Allegro Candence PCB 仿真和信号完整性技术培训
上海天能电子有限公司--Allegro Candence PCB 仿真和信号完整性技术培训
上海亨通光电科技有限公司--andriod应用和系统移植技术培训
上海智搜文化传播有限公司--Symbian开发培训
先先信息科技有限公司--brew 手机开发技术培训
鼎捷集团--MTK应用(MMI)和驱动开发技术培训
傲然科技--MTK应用(MMI)和驱动开发技术培训
中软国际--Linux系统开发技术培训
龙旗控股集团--MTK应用(MMI)和驱动开发技术培训
研祥智能股份有限公司--MTK应用(MMI)和驱动开发技术培训
罗氏诊断--Linux应用开发技术培训
西东控制集团--DSP2000应用技术及DSP2000在光伏并网发电中的应用与开发
科大讯飞--MTK应用(MMI)和驱动开发技术培训
东北农业大学--IPHONE 苹果应用开发技术培训
中国电子科技集团--Dsp2000系统和应用开发技术培训
中国船舶重工集团--Dsp2000系统开发技术培训
晶方半导体--FPGA初中高技术培训
肯特智能仪器有限公司--FPGA初中高技术培训
哈尔滨大学--IPHONE 苹果应用开发技术培训
昆明电器科学研究所--Dsp2000系统开发技术
奇瑞汽车股份--单片机应用开发技术培训


 
  曙海企业  
  备案号:沪ICP备08026168号 .(2014年7月11)...................
友情链接:Cadence培训 ICEPAK培训 EMC培训 电磁兼容培训 sas容培训 罗克韦尔PLC培训 欧姆龙PLC培训 PLC培训 三菱PLC培训 西门子PLC培训 dcs培训 横河dcs培训 艾默生培训 robot CAD培训 eplan培训 dcs培训 电路板设计培训 浙大dcs培训 PCB设计培训 adams培训 fluent培训系列课程 培训机构课程短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班培训 南京 NS3培训 OpenGL培训 FPGA培训 PCIE培训 MTK培训 Cortex训 Arduino培训 单片机培训 EMC培训 信号完整性培训 电源设计培训 电机控制培训 LabVIEW培训 OPENCV培训 集成电路培训 UVM验证培训 VxWorks培训 CST培训 PLC培训 Python培训 ANSYS培训 VB语言培训 HFSS培训 SAS培训 Ansys培训 短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班 曙海 教育 企业 培训课程 系列班 长期课程列表实践课程高级课程学校培训机构周末班 短期培训系列课程培训机构 曙海教育企业培训课程 系列班 软件无线电培训 FPGA电机控制培训 Xilinx培训 Simulink培训 DSP培训班 数字信号培训 Ansys培训 LUA培训 单片机培训班 PCB设计课程 PCB培训 电源培训 电路培训 CST培训 PLC课程 变频器课程 Windows培训 R语言培训 Python培训 5G培训
在线客服