关于java:设计模式之初体验

9次阅读

共计 2097 个字符,预计需要花费 6 分钟才能阅读完成。

提到设计模式这个词,置信很多小伙伴都很相熟,这种相熟预计更多的都是停留在对设计模式这个词的相熟,而不是对设计模式相熟;为什么这么说呢,因为当咱们干踏入软件开发这个行业的时候,就会听到身边很多的程序员在说设计模式这个词,然而咱们也没有据说过,就会感觉肯定是一种高大上的技术,不懂也不敢乱乱说话,惟恐裸露了本人的“扫地僧”的身份

凡事没听过的技术,肯定都是牛逼的技术

所以,秉承着咱也不晓得,咱也不敢问的准则,开始了本人的缓缓学习之路

然而,程序员们天生爱学习,爱钻研,所以咱们都是背地里默默地下功夫,偷偷去致力,而后惊艳所有人

而后咱们就去偷偷关上百度百科,在搜寻框,用敲代码的手速,输出了 设计模式 四个大字,下意识的按了一下回车键,一顿操作猛如虎,如行云流水般,零打碎敲

眼睛缓缓凑近屏幕,开始钻研起了设计模式

明天就把钻研设计模式的常识,给大家科普科普

什么是设计模式

首先咱么先来唠唠什么是设计模式,怎么就在程序员群体中这么有这么高的知名度,应该不是靠颜值~~~

要说什么是设计模式,那还要从很久很久以前说起

在 1995 年,一个号称“F4”组合出了一本书叫《设计模式:可复用面向对象软件的根底》的书,这本书能够说是设计模式的开山鼻祖,从此关上了设计模式的大门

设计模式其实是软件开发人员在软件开发过程中面临的常见问题的解决方案。这些解决方案是很多软件开发人员通过相当长的一段时间的试验和谬误总结进去的。所以又名最佳实际

什么是设计模式如果用一句话来总结的话,就是最佳实际。所谓最佳实际就是前人总结进去的教训

比方咱们中学学数学的时候,数学老师常常会给咱们讲一些万能的“教训公式”,这些公式尽管没有科学依据,然而你在解题的时候,轻易用,屡试不爽啊

“F4”们 这么稍稍一总结,一不小心就总结出了 23 中设计模式,搞的开发人员切实是有点吃不消啊,然而没方法啊,它又的确好用,所以只能硬着头皮学呗

须要咱们留神的是设计模式它是不辨别开发语言的,它同样实用于 Java、C++、JavaScript 等

设计模式有什么用

晓得了设计模式其实就是最佳实际,那它肯定是常常用来解决咱们的遇到的问题,大家可能会有一些纳闷,到底咱们在哪里用到了设计模式呢?

在咱们软件设计开发的时候,会有领会到很多设计模式的长处,当初大家干什么事儿,不都喜爱模板吗,有了,设计模式能够算是有了一个能够参考的模板,参照这个模板来设计你的程序,就能够让你的程序的可保护、可复用、可扩大、灵活性变的更好,同时也能进步开发效率

设计模式根本准则

咱们在应用这些最佳实际的时候,也不是轻易乱用的,同样也会遵循一些它的准则;如果每个人都依照本人的了解来应用设计模式,岂不是要天下大乱了

还是老话说的好啊,没有规矩,不成方圆;所以,“F4”的同志们,就给设计模式定下了七条“帮规”

  • 繁多职责

    对类来说,即一个类应该只负责一件事。

  • 开闭准则

    开闭准则的意思是: 对扩大凋谢,对批改敞开 。在程序须要进行拓展的时候,不能去批改原有的代码,实现一个热插拔的成果

  • 里氏代换准则

    里氏代换准则是面向对象设计的根本准则之一。里氏代换准则中说,任何基类能够呈现的中央,子类肯定能够呈现。LSP 是继承复用的基石,只有当派生类能够替换掉基类,且软件单位的性能不受到影响时,基类能力真正被复用,而派生类也可能在基类的根底上减少新的行为。里氏代换准则是对开闭准则的补充。实现开闭准则的关键步骤就是抽象化,而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换准则是对实现抽象化的具体步骤的标准

  • 依赖倒转准则

    这个准则是开闭准则的根底,具体内容:针对接口编程,依赖于形象而不依赖于具体。

  • 接口隔离准则

    这个准则的意思是:升高类之间的耦合度。其实设计模式就是从大型软件架构登程、便于降级和保护的软件设计思维,它强调升高依赖,升高耦合。

  • 迪米特法令(起码晓得准则)

    起码晓得准则是指:一个实体该当尽量少地与其余实体之间产生相互作用,使得零碎功能模块绝对独立。

  • 合成复用准则

    合成复用准则是指:尽量应用合成 / 聚合的形式,而不是应用继承。

设计模式的分类

下面咱么说了,“F4”的同志们给咱们总结出了 23 种设计模式,在咱们的理论应用中,会给设计模式进行一些分类;分类的形式也有两种,一种是依据目标分类,一种是依据范畴分类,然而通常状况下咱们更多的应用的是依照目标来分类,也就是能干什么,所以咱们重点来说下这部分

这样的话就能够分将 23 种设计模式分为 3 大类

  • 创立型模式 :创立型模式就是用来形容怎么创立的对象的,比方最常见的单例模式

    工厂办法模式、形象工厂模式、单例模式、建造者模式、原型模式

  • 结构型模式 :用于形容如何将类或对象按某种组合成更大的构造

    适配器模式、装璜器模式、代理模式、外观模式、桥接模式、组合模式、享元模式

  • 行为型模式 :用于形容类或对象之间相互协作实现单个对象都无奈独自实现的工作

    策略模式、模板办法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式

到这里根本能就把设计模式的概念搞清楚了,接下来就是在实际去利用每一种设计模式,能够让咱们的程序能够更加的高效

欢送关注公众号【码农开花】一起学习成长

正文完
 0