• 简单明了的设计模式-立意篇


    1.岁月的沉淀

    我们为什么要学设计模式?

    如果是在我刚成为程序员的时候,我大概会这么回答:

    因为设计模式是前人经验的总结,可以用来解决特定环境下,重复出现的特定问题。

    同时也是程序员进阶的必备知识

    上面的说法当然没有错,但是如果让现在的我来回答,我会加上这几句:

    因为设计模式不会过时。

    是的,在工作多年以后,看见各种技术如大浪淘沙一般从兴起到衰落,看见主流技术栈两三年就换血一次,我不禁陷入了深深的担心:如果我学不动了怎么办?

    特别是在年龄渐长之后,虽然大多数技术都有相通之处,想要快速掌握并不难。可是细微之处却也有不少坑,真用起来,踩坑肯定也是少不了的。

    所以渐渐的,我开始寻找那些不变的东西,寻找在这些让人眼花缭乱的技术背后,在漫长岁月中真正能沉淀下来的东西。

    不错,我想你已经猜到了,就是那些老生常谈的东西,大学时老师曾经无数次在我耳边强调的东西:

    数据结构、算法、设计模式…...

    最质朴的东西往往最珍贵,古人诚不欺我,哈哈。

    作为一名普通的码农,数据结构和算法平时接触不多,真正用的多的,还是设计模式。

    • 设计一个功能模块要用到设计模式,否则根本没法维护

    • 扒开源项目的源码要懂设计模式,否则有可能看不懂

    • 代码review也会用到,虽然不直接用模式,但是会用到原则

    所以,对我而言,设计模式已经成为挡在身前的一座山,要么跨过去,要么永远止步于此。

    所以有了简明设计模式的写作计划,愿我们都能征服这座大山,最后同立山巅,看日升日落,云卷云舒。

    2.设计模式的分类

    设计模式一共23个。

    其实设计模式之间也有很多共性和差异,为了方便理解和记忆,一般来说会分为三类:

    • 创建型模式:抽象了对象实例化过程,用来帮助创建对象的实例

    • 结构型模式:描述如何组合类和对象以获得更大的结构

    • 行为型模式:描述算法和对象间职责的分配

    具体情况如下图:

    file

    3.磨一下刀

    所谓磨刀不误砍柴工,在学习设计模式之前,我们还需要掌握两种武器:设计原则和UML类图

    学习UML类图,是为了能够更好的理解设计模式的结构

    学习设计原则,则是为了知道设计模式为什么要这么设计

    这个就放到下次说吧。

    本文由博客一文多发平台 OpenWrite 发布!

  • 相关阅读:
    jni java与c++交互返回三维数组jobjectArray
    Android开发之EditText 详解(addTextChangedListener监听用户输入状态)
    Android JNI和NDK学习(09)--JNI实例二 传递类对象
    JavaDoc的生成规则---ShinePans
    Android 电话自己主动接听和挂断具体解释
    传统线程技术(一)
    Linux内核启动及根文件系统载入过程
    eclipse、MyEclipse实现批量改动文件编码
    菜鸟开发—应具备的搜索技巧
    Java之GUI编程(一)
  • 原文地址:https://www.cnblogs.com/bailiyi/p/13663673.html
Copyright © 2020-2023  润新知