面向对象设计原则

面向对象设计原则

内聚与耦合

  • 高内聚-尽量自己的事自己做
  • 低耦合-耦合度越低越好 类与类之间的关系
  • 是所有优秀设计软件的特征

衡量软件设计质量

  • 一,可读性
  • 二,可复用性
  • 三,可扩展性
  • 四,可维护性

设计原则名称

  • 1,单一职责原则,一个类只应该有一个引起它变化的原则
  • 2,开闭原则
  • 3,里氏替换原则 在项目中判断是否该做继承的时候使用的一种原则
  • 4,依赖倒转原则DIP 是指将两个模块之间的依赖抽象类或者接口。
    • 高层模块不应该依赖于低层模块,而都应该依赖于抽象
    • 面试题:分层的时候,低层设计接口或抽象类与高层进行绑定,遵循的是依赖倒转原则,高层应该绑定低层的接口,而不是抽象
  • 5,组合聚合复用原则
    • 在设计时尽量使用组合聚合达到复用的目的,而不是继承来达到目的
    • 好处:
      • 唯一方法是接口,自带分层效果,职责单一原则也具备
      • 黑箱复用
      • 复用所有依赖更少,耦合度更低
      • 可以达到一定的动态效果
    • 继承复用的缺点:
      • 破坏封装
      • 超类实现改变,子类也改变
      • 静态
  • 6,接口隔离原则
    • 尽量定义小接口,少定义大接口
  • 7,迪米特法则LOD
    • 最少知识原则
    • 不要和陌生人说话

模式(套路)

设计模式(微观)23种公认的

  • 学习方法

    • 场景
    • 解决方案{多种}
    • 对比优劣
  • 针对某一具体场景或设计做的代码级设计

  • 创建模式
  • 单例模式(Singleton)//必须掌握手写
  • 当需要一种特殊类,能且只能产生一个对象
    • 第一种:static属性全类共享一个值
      • 好处:代码简单,线程绝对安全,支持高并发
      • 坏处:预加载
    • 第二种:加synchroniezd,不支持高并发
      • 延迟加载(当真正使用对象才产生),解决了线程安全问题
    • 双锁机制:好处:既支持延迟加载又支持高并发(背)
  • 工厂模式Factory
    • 将生产对象的类与使用对象的类进行分离,
    • 简单工厂变化的是商品
    • 工厂方法-同一种商品不同的工厂
    • 抽象工厂-两个工厂两种产品都要考虑到
  • 原型模式
  • 根据一个已有的对象,产生一个一模一样的对
  • 调用克隆方法的这种实现叫浅克隆,只克隆一层
  • 深克隆,序列化出去,反序列化回来

    • 结构模式
    • *
  • 行为模式
  • 装饰品模式
    • 区分主料和配料,配料不能单独存在,配料继承主料

架构模式(宏观)

  • 针对工程的类与接口的关系,进行项目的搭建与设计
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值