【设计模式】01.软件设计模式概述

本篇文章来自GOF的23种设计模式,通过学习进行的一些摘录,供自己以后复习,帮助也想学习的人可以迅速的掌握!

软件设计模式概述

为什么学习设计模式

会java的人越来越多,但是徘徊在语言层次 的程序员也越来越多,真正掌握java中接口或抽象类的应用的人反而不是很多,大家经常以这些技术只适合大型项目为由,避开或忽略它们,实际中,java的接口或抽象类是真正体现java思想的核心所在,这些你都将在gof里面领略到它们变幻务求的魔力。
实际上,gof并不是一种具体“技术”,它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧,让你能够真正掌握接口或抽象类的应用,从而在原来的java语言基础上跃进一步,更重要的是,gof反复向你强调一个宗旨:要让你的程序尽可能的可重用。
客户需求千变万化,我们应该尽可能去寻找出不变的东西,并将它和变化的东西分离开!

设计模式的基本要素

  • 模式名称:每一个模式都有自己的名字,通常用一两各词来描述,可以根据模式的问题、特点、解决方案、功能和效果来命名,模式名称有助于我们理解和记忆该模式,也方便我们来讨论自己的设计模式。

  • 问题:问题描述了该模式的应用环境,即何时使用该模式 ,它解释了设计问题和存在问题的前因后果,以及满足的一系列先决条件。

  • 解决方案:包括设计的组成成分、它们之间的相互关系以及各自职责和协作方式。因为模式就像一个模板,可英语于多种不同场合,所以解决方案并不描述一个特定而具体的设计或实现,而是提供设计问题的抽象描述和怎样用一个具有一般意义的元素组合(类或对象的组合)来解决这个问题。

  • 效果:描述了模式的应用效果以及使用该模式应该权衡的问题,即模式的优点和缺点,主要是对时间和空间的衡量,以及该模式对系统的灵活性、扩充性、可移植性的影响,也考虑其实现问题。显式地列出这些效果对理解和评价这些模式有很大的帮助。。

学习设计模式的方法

切勿不要死记硬背

  1. 带着问题去学习,看到设计模式类图后,首先想一想为什么这样设计,这个设计相比我们普通的编程有什么优点,这样更容易理解一些。(不要光看代码,要学思想)
  2. 不要因为一开始学不会就放弃,可以先学容易的,当理解一个模式后,会产生恍然大悟的感觉,一个设计模式的理解往往会带来对其他设计模式的更深刻理解。设计模式之间不用按照顺序学习,可以串插,反复学习会有不同的理解。
  3. 第一次、第二次会没有关系,在实际工作中写几个月或者几年的程序后再回头来学,往往会有意想不到的收获。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值