为什么要学习别人的设计模式?

新农商网 全部 1011

为什么要学习别人的设计模式?

回复

共1条回复 我来回复
  • 深入浅出话围棋
    深入浅出话围棋
    这个人很懒,什么都没有留下~
    评论

    我们先看两个小故事

    (一)

    小明是一个电器工程师,某一次他给别人维修电视机,打开之后,发现电路错综复杂,杂乱无章。经过几个小时的努力,小明终于放弃维修并推荐对方重新购买。

    (二)

    小王是一个做事随便的学生,他的东西总是散落各地,有一次他急需找到一张重要的证书,但他忘记放哪儿了。经过了长时间的翻箱倒柜,他终于找到了,但是已经错过了时间。




    生活中的杂乱无章,总是带来各种负担,程序亦如此。虽然,软件工程师把代码隐藏在后台,用户可能感知不到,但工程师必须通过代码来交流。

    如果我们把工程师写下的一条条逻辑比作计算机程序的血管,那么一个到处打结堵塞的血管,能好好工作吗?

    设计模式就是科学架设这些血管的法宝。

    我们有时候会看到,产品经理提出一个修改意见。本来是一个很小的改动,开发却要花很长时间,甚至一段时间后愁眉苦脸的跑来说,改动太大,没法完成任务。

    为什么会这样,没有用好设计模式啊。

    正确的运用设计模式会让你的程序看起来更健康,我们知道软件工程实际上是在构建一套虚拟世界的逻辑规则。不同的应用场景可能有不同的思维模式,而经典的设计模式则是前人总结出的经验,为了解决实际问题的。

    运用设计模式,实际上就是借用别人的最佳实践,可别以为是个轻松的活儿,定位清楚自己的场景,选择合适的设计模式非常重要。

    设计模式虽然有很多种,但是核心的原则并不多,设计模式的六大原则包括

    1. 单一职责原则
    2. 开闭原则
    3. 李氏替换原则
    4. 依赖倒转原则
    5. 接口隔离原则
    6. 迪米特法则
    篇幅问题,不展开,网上有很多介绍六大原则的文章,感兴趣的可以搜来看看。

    只要你认同这些原则,就有使用设计模式的必要,它存在的目的就是让你的软件更加可读,提高可维护性,可扩展性等。

    当然,设计模式不是万能的,滥用设计模式,用错设计模式都会起到副作用,当然这个一两句话说不清楚,要在实践中自己感悟了。

    2018-02-24 19:32:14 0条评论