zoukankan      html  css  js  c++  java
  • 设计模式从0开始

      做开发今年是第4年了,可是做的最多的是粘贴和复制。把一段代码从这个地方复制到另一个地方,做一下修改就完成了一个新的功能。又或者把一个项目直接赋值过来改个名字就开始做一个新项目。做完也就完了。完全是为了工作而工作,没有经过太多的思考。也没有花时间去回顾之前做的项目都有什么共同点。久而久之学会的只有一些需要用的知识点,还有就是粘贴复制更快了。表面上给人感觉好像自己很能干,其实自己变成了一个实实在在的码农,相信这个词适用于不少人,呵呵。

      为了打破自己的现状,不得不好好的花点时间去学习 更有用的东西。 好了不废话了。 光说不练假把式,干活不用功,说死也无功(呵呵!经理说的)。

      来说说面向过程编程的缺点吧:

      1)程序过于僵硬。

      2)过于脆弱,容易出现各种各样的逻辑问题

      3)复用率底,明明是差不多的逻辑 非要复制一份几经修改才能达成目标

      4)粘度过高,正所牵一发动全身啊。修改起来相当的麻烦啊。

      要学好设计模式其实就是学好面向对象编程,下面看看几个面向对象的要点吧:(后面会讲得比较慢,也希望自己能在书写的过程中加深自己的印象)

      一、开放-封闭 原则

      讲的是一个软件应当对扩展开发,对修改关闭。

      这样做的有点是:通过扩展已有的软件系统,可以提供新的行为,以满足对软件的新要求,使变化中的软件有一定的适应性和灵活性。

      对于已有软件模块,特别是最重要的抽象层模块不能再修改,这使变化中的软件系统有一定的稳定性和延续性。

      看到有本书里面举了一个例子挺好的,说是就西游记里面的  把天庭当作是一个软件系统,他有着自己的天规和次序,然后孙悟空想去改变天宫,想自己做玉皇大帝,也就是有针对系统有新的需求,并且还是严重性的需求,面对这一需求,天宫实行了开闭原则,没有让他做玉皇大帝,而是针对他提出了一个职位将其招安。这样就体现了 系统的开放原则。

      自己对这一原则的理解 是在做修改的时候不能盲目的去调整系统整个结构,而是在保持现有体系不变的基础上进行扩展。那么也就是说在做系统的时候要考虑到系统的扩展性,整理出不会变动的根本架构,然后基于这个架构做扩展开发。

  • 相关阅读:
    《页面优化》-- 一个大话题,也是一个面试比较老俗的问题
    Single-SPA 前端微服务化 动态路由多系统合并
    浏览器的DNS缓存查看和清除
    es6 的类 class
    数据驱动表格| 根据json数据,自动生成合并式table
    隐式调用 以及使用技巧
    柯里化currying + 隐式调用 = 一个有名的add面试题
    工作笔记
    php升级版本
    git使用
  • 原文地址:https://www.cnblogs.com/zyj469470971/p/3159295.html
Copyright © 2011-2022 走看看