Software entities should be open for extension,but closed for modification——Bertrand Meyer
对扩展开放,对修改关闭——“开闭原则”
例如:
你要设计一个类似联盟的APP,这个APP可以产生多种不同的发型,脸型,眼睛,但是未来用户还会有什么需求是我们目前不可知晓的,如何做到该软件可扩展而又不用牵一发而动全身呢?踏实肯干的人或许会信心满满的总结出一套自己的代码设计风格,但是,回首已千年。站在巨人的肩膀上成功,那也叫成功。何不借外力而为之,设计模式犹如太极拳的招式,要融会贯通到骨子里,却视乎又已经忘记了。使用却能信手拈来~~~
首先,什么是设计模式?
Design Pattern是一套被反复使用,多人知晓的,经过分类编目的,代码设计经验的总结。
为什么要使用设计呢?
使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化。
有哪些设计模式?
设计模式分为三种类型,共23种。
创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。
结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。
行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式、访问者模式。
相关推荐
在图书管理中,"图书总括登记与个别登记"是两个关键环节,它们确保了图书信息的准确性和完整性。 图书总括登记是图书馆对新进图书进行集体录入的过程,它是对一段时间内入库图书的整体统计和记录。在这个阶段,图书...
保险基础知识总括.pptx
品管圈知识总括.pptx
这四大原则为企业改革指明了方向,表明了咨询团队的策略是以客户需求为导向,追求高效、敏捷和互利的合作模式。 总的来说,这份管理咨询总括汇报旨在通过深入研究和分析,提供针对裕华纺织集团的定制化解决方案,以...
体质的特点体现在以下几个方面:一是体质是个体生理特性的总括,涵盖了脏腑气血等内在机能的强弱;二是体质具有普遍性和复杂性,人群中的体质差异广泛且多样;三是体质的稳定性和可变性,成年后体质相对稳定,但可...
2011政治理论逻辑关联总括图:最权威的资料,最高效的复习!!
会计原理与实务总括new.pptx
文章分为三个部分——总括春天、绘春和颂春。在“总括春天”中,作者为全文定下了基调;“绘春”部分则通过春草图、春花图、春风图、春雨图以及迎春图等五个章节,细腻地刻画了春天的各色景象;最后的“颂春”是对...
"会计基础知识点总括" 本资源摘要信息涵盖了会计基础知识点的总括,涵盖了会计的概念、会计的产生和发展、会计的基本职能、会计对象、会计准则、会计信息质量要求的原则、会计核算方法与程序等方面的知识点。 一、...
Java IO操作总括 在Java编程中,IO(Input/Output)操作是处理数据输入和输出的核心技术。本文将深入探讨Java IO系统的基本概念、主要类库以及它们在实际开发中的应用。 一、Java IO系统概述 Java的IO库提供了一...
主体部分中的过渡段起着承上启下的作用,段落总括句则用于总结上文并引导下文,或者表达作者的观点态度。结尾部分常用来卒章显志,点明文章中心,总结全文,或者首尾呼应,强化主题。 其次,人称的选择对散文的影响...
广西师范大学第37次无偿献血活动总括.doc
另一例是爷爷的小闸屋,采用总分式的结构,先总括其是个好玩的地方,再分述其独特之处。 7. **学习指导**:对于六年级学生,这样的PPT学习教案旨在帮助他们提升阅读理解能力,通过掌握不同的段落结构和概括方法,...
202x年智能物流解决方案总括(专业完整版).pdf
### Java中输入输出的总括 #### 一、引言 在Java编程中,输入输出(简称I/O)处理是一项非常重要的技术。无论是文件操作、网络通信还是与用户交互,都离不开I/O处理的支持。本篇文章将从Java I/O的基础出发,深入...
过滤流(Filter Stream)是一种设计模式,它通过在现有流的基础上添加额外的功能来扩展其能力。过滤流通常作为其他流的包装器,如`BufferedInputStream`包装了一个`FileInputStream`,提供缓冲功能,提高性能。 ## ...
教学片段一中,教师以文章开头的总括句为线索,步步深入,让学生理解每只猫的不同命运,特别是第三只猫的悲剧,从而探讨人与动物的关系,以及对待生命的态度。 【找准切点:追问的切入点】 追问的切入点是引导学生...
- 包括连接语、主体文、总括语三个部分。 - 每个部分开头都要另起一行并空两格。 #### 祝福语 - 用于表示对对方的良好祝愿,如“祝您健康”等。 - 通常紧跟正文,也可独占一行,空两格书写。 #### 署名 - 写在信纸...