3、设计原则

1、设计原则简介

  • 概述:用于评价一个设计模式的使用效果的重要指标之一

  • 类型

    • 单一职责原则
    • 开闭原则
    • 里氏替换原则
    • 依赖倒置原则
    • 接口隔离原则
    • 合成复用原则
    • 迪米特法则

2、单一职责原则

  • 概述:用于控制类的粒度大小,一个类只负责一个功能领域中的相应职责

  • 地位:是实现高内聚、低耦合的指导方针

  • 示例:开发人员针对某CRM(客户关系管理)系统中客户信息图形统计模块提出了如图所示的初始设计方案结构图,

  • 分析:CustomerDataChart 类承担了太多的职责,违背了单一职责原则。因此需要对该类进行拆分,使其满足单一职责原则

    • DBUtil:负责连接数据库,包含数据库连接方法getConnection()
    • CustomerDAd:负责操作数据库中的Customer 表,包含对Customer 表的增/删/改/查等方法,如findCustomers()
    • CustomerDataChart:负责图表的生成和显示,包含方法createChart()和displayChart()

3、开闭原则

  • 概述:一个软件实体应当对扩展开放,对修改关闭。即软件实体应尽量在不修改原有代码的情况进行扩展

  • 地位:是面向对象的可复用设计的第一块基石

  • 运用:为了满足开闭原则,需要对系统进行抽象化设计,抽象化是开闭原则的关键。在 Java、C# 等编程语言中,可以为系统定义一个相对稳定的抽象层。而将不同的实现行为移至具体的实现层中完成。

4、里氏替换原则

  • 概述:所有引用基类(父类)的地方必须能透明地使用其子类对象

  • 地位:是实现开闭原则的重要方式之一

  • 运用:在运用里氏替换原则时,应该将父类设计为抽象类或者接口,让子类继承父类或实现父类接口,并实现在父类中声明的方法。

5、依赖倒置原则

  • 概述:抽象不应该依赖于细节,细节应该依赖于抽象。换言之,要针对接口编程,而不是针对实现编程。

  • 地位:是面向对象设计的请要实现机制之一

  • 运用:要求在程序代码中传递参数时或在关联关系中,尽量引用层次高的抽象层类,即使用接口和抽象类进行变量类型声明、参数类型声明、方法返回类型声明,以及数据类型的转换等,而不要用具体类来做这些事件。

6、接口隔离原则

  • 概述:使用多个专门的接口,而不使用单一的总接口

7、合成复用原则

  • 概述:尽量使用对象组合,而不是继承来达到复用的目的

  • 运用:合成利用原则就是在一个新的对象里通过关联关系(包括组合关系和聚合关系)来使用一些已有的对象,使之成为新对象的一部分。

8、迪米特法则

  • 概述:一个软件实体应当尽可能少地与其他实体发生相互作用

  • 地位:如果一个系统符合迪米特法则,那么当其中某一个模块发生修改时,就会尽量少地影响其他模块,扩展会相对容易

  • 运用:不要和"陌生人"说话,只与你的直接朋友通信

    • 当前对象本身(this)
    • 以参数形式会传入到当前对象方法中的对象
    • 当前对象的成员对象
    • 如果当前对象的成员对象是一个集合,那么集合中的元素也都是朋友
    • 当前对象所创建的对象
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
3D打印技术是一种快速制造技术,可以通过添加层次来制造三维物体。为了获得最佳的3D打印质量和效率,以下是一些设计原则和技巧: 1. 设计时考虑打印方向:在设计3D模型时,应考虑打印方向。如果您的模型需要支撑结构,那么应该考虑将其朝向打印板。如果需要的话,可以采用支撑材料来支撑模型。 2. 设计时考虑层高:层高是3D打印的一个关键因素。层高越小,打印物品的表面质量越好。然而,较小的层高会导致打印时间增加。因此,应根据需要进行平衡。 3. 设计时考虑壁厚:壁厚是指模型壁面的厚度。壁厚越大,打印物品的强度越高。但是,较厚的壁面也会使得打印时间增加。因此,应根据需要进行平衡。 4. 使用支撑材料:如果您的模型需要支撑结构,那么应该考虑使用支撑材料。支撑材料可以帮助您打印出更复杂的模型,并且可以减少模型变形。 5. 设计时考虑悬挂部分:在设计3D模型时,如果需要悬挂部分,应该考虑将其朝向打印板。这样可以减少模型变形的风险。 6. 设计时考虑过度悬挂部分:如果模型中有过度悬挂的部分,那么应该考虑使用支撑材料。 7. 设计时考虑材料收缩率:不同的3D打印材料具有不同的收缩率。在设计3D模型时,应该考虑材料的收缩率,以便在打印时进行调整。 8. 设计时考虑打印机的最小尺寸:在设计3D模型时,应该考虑打印机的最小尺寸。如果您的模型比打印机的最小尺寸小,那么可能无法打印。 9. 设计时考虑材料的弹性:某些3D打印材料比其他材料更具弹性。在设计模型时,应该考虑材料的弹性,以便在打印时进行调整。 10. 使用CAD软件:使用CAD软件可以帮助您更好地设计3D模型,并且可以让您更轻松地进行调整和修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值