《深入浅出设计模式》码农通往架构师的阶梯,致力传授最精髓设计思想

2018 年 9 月 25 日 炼数成金订阅号

理解软件设计模式是初级程序员成长道路上的毕竟之路。作为软件开发人员长期的经验积累,软件设计模式对于软件设计,架构有着极其重要的指导性作用。同时也是一门在软件设计师,架构师之间快速沟通设计思想的专用语言。本课程将详细介绍常用的几种设计模式已经反模式,帮助大家快速理解软件设计原则和设计模式的使用。


课程大纲:

第一课 设计模式简介

         设计模式历史

         设计模式的要素

         设计模式分类

         设计原则

         课程内容安排

第二课 创建模式(上):不要关注具体对象的创建

         Gof设计模式总览

         简单工厂

         工厂方法

         抽象工厂

第三课 创建模式(下)

         单例模式:只有一个对象

         多例模式:单例的扩展

         原型模式:自我复制

         创建者模式:封装对象的创建方法

第四课 结构模式(上)

         适配器:到哪里都能用

         桥接:从不同唯独分离变化

         组合:让递归更容易

         装饰者模式:让无限扩展成为可能

第五课 结构模式(下)

         外观模式:封装内部实现

         享元模式:节约内存和时间

         代理模式:万能的代理

第六课 行为模式(上)

         责任链:步步为营

         命令模式:封装命令

         迭代器:遍历容器

         模板方法:模式中的模式

第七课 行为模式(中)

         观察者:有事通知你

         状态模式:分离不同状态下的行为

         策略模式:自由选择方案

         访问者模式:语法解析器的最爱

第八课 行为模式(下)

         中介者模式:让交流井然有序

         备忘录:记录一下状态

         解释器:简单的解析器

第九课 设计模式复习

         模拟鸭子

         星巴兹咖啡

         星巴兹供应茶了

         回顾设计原则

         正确的心态对待模式

第十课 并发模式

         生产者消费者:我们需要一根管道

         Future模式:给你一个承诺

         Master slave:干活需要一个领导

         Thread Specific Storage:换个思维解决并发冲突

         Single Threaded Execution:一个一个执行

         Thread per Message:为每个消息分配一个线程

         Read Write Lock:更快的并发策略

         Worker Thread:复用线程吧

         Serial Thread Confinement:有时候一个人干活更快

第十一课 常见的反模式(上)

         什么是反模式

         反模式参考模型

         常见开发反模式

             The Blob:万能的类

             Continuous obsolescence:总是使用过时技术

             lava flow:没用的代码

             functional decomposition:真的使用了面向对象?

             Poltergeist:谁在恶作剧

             Golden hammer:我有一把锤子,所以一切都是钉子

             Dead End:走进了死胡同

             spaghetti code:乱七八糟的代码

             input kludge:让用户一碰就挂机

             cut and paste programming:让我们一起复制粘帖吧

第十二课 常见的反模式(下)

         Stovepipe Enterprise:企业内的信息孤岛

         Stovepipe System:系统内的信息孤岛

         Jumble:混乱的设计

         Vendor Lock-in:绑定供应商真的好吗

         Architecture By implication:实现主导架构

         warm bodies:滥竽充数

         design by committee:民主还是专制?

         Reinvent the wheel:重新发明轮子


授课时间:

课程预计2018年10月9日开课,预计课程持续时间为12周。


授课对象:

软件程序员 设计师,任何对软件设计有兴趣的同学。


收获预期:

深入了解设计模式的使用,理解设计原则。


讲师介绍:

葛一鸣,国内著名的Java导师,弟子众多。著述丰富,著有《Java程序性能优化》《实战Java虚拟机》《实战Java高并发设计》《自己动手写神经网络》等技术书籍,在读者中颇受欢迎。亦在炼数成金网站开设《深入JVM内核—原理、诊断与优化》《实战Java高并发程序设计》《深入浅出Spring》等多门Java相关的课程,课程清单依然在不断增加中。葛老师具有深厚的Java开发经验和丰富项目经历。在编码和设计方面有自己独特的视角和观点。曾就职于全球较大托管银行担任高级研发工作。现就职于知名通信公司,负责技术管理和软件质量。热衷于技术专研和分享,偶尔喜欢一露身手,曾在阿里云举办的“大数据安全算法竞赛”中从数千名参赛选手中脱颖而出获得季军。


现任炼数成金JAVA实战精英培养计划导师:

http://ie.dataguru.cn/ieplan-21.html


点击下方二维码或阅读原文报名课程:

登录查看更多
0

相关内容

设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。
【实用书】Python技术手册,第三版767页pdf
专知会员服务
229+阅读 · 2020年5月21日
【书籍推荐】简洁的Python编程(Clean Python),附274页pdf
专知会员服务
173+阅读 · 2020年1月1日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
94+阅读 · 2019年12月4日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
83+阅读 · 2019年11月25日
阿里技术大牛:一份架构师成神路线图!
51CTO博客
29+阅读 · 2019年7月6日
每个架构师都应该培养业务思维
InfoQ
3+阅读 · 2019年4月21日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
码农不识贝叶斯,虽知数据也枉然
Python开发者
6+阅读 · 2018年1月24日
干货|掌握机器学习数学基础之优化[1](重点知识)
机器学习研究会
9+阅读 · 2017年11月19日
图解高等数学|线性代数
遇见数学
39+阅读 · 2017年10月18日
码农日常工具推荐
架构文摘
4+阅读 · 2017年9月26日
Graph Analysis and Graph Pooling in the Spatial Domain
Arxiv
5+阅读 · 2019年2月28日
Arxiv
10+阅读 · 2018年2月9日
Arxiv
4+阅读 · 2016年12月29日
Arxiv
5+阅读 · 2015年9月14日
VIP会员
相关VIP内容
相关资讯
阿里技术大牛:一份架构师成神路线图!
51CTO博客
29+阅读 · 2019年7月6日
每个架构师都应该培养业务思维
InfoQ
3+阅读 · 2019年4月21日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
码农不识贝叶斯,虽知数据也枉然
Python开发者
6+阅读 · 2018年1月24日
干货|掌握机器学习数学基础之优化[1](重点知识)
机器学习研究会
9+阅读 · 2017年11月19日
图解高等数学|线性代数
遇见数学
39+阅读 · 2017年10月18日
码农日常工具推荐
架构文摘
4+阅读 · 2017年9月26日
相关论文
Graph Analysis and Graph Pooling in the Spatial Domain
Arxiv
5+阅读 · 2019年2月28日
Arxiv
10+阅读 · 2018年2月9日
Arxiv
4+阅读 · 2016年12月29日
Arxiv
5+阅读 · 2015年9月14日
Top
微信扫码咨询专知VIP会员