`

三个原则

阅读更多
面向对象的四个好处:可维护、可扩展、可复用、灵活性好。

单一职责原则:
1 就一个类而言,应该仅有一个引起它变化的原因
2 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。
3 软件设计真正要做的许多内容,就是发现职责并把这些职责相互分离。如果你能够想到多于一个动机去改变一个类,那么这个类就具有多于一个的职责,就应该考虑累得职责分离。

开放-封闭原则:
1 软件实体(类、模块、函数等等)应该可以扩展,但是不可修改。
2 对于扩展是开放性的,对于修改时封闭性的。
3 在最初写代码时,假设变化不会发生。当发生变化时,我们就创建抽象来隔离以后发生的同类变化。
4 面对需求,对程序的改动是通过增加新代码进行的,而不是更改现有的代码。
5 开放-封闭原则是面向对象设计的核心所在。遵循这个原则可以带来面向对象技术所声称的巨大好处,也就是可维护、可扩展、可复用、灵活性好。开发人员应该仅对程序中呈现出频繁变化的那些部分做出抽象,然而,对于应用程序中的每个部分都刻意地进行抽象同样不是一个好主意。拒绝不成熟的抽象和抽象本身一样重要。

依赖倒转原则:
抽象不应该依赖细节,细节应该依赖于抽象(要针对接口编程、不要对实现编程)

分享到:
评论

相关推荐

    FPGA系统设计的三个原则.pdf

    以上三个原则共同构成了FPGA系统设计的基础框架,它们之间相辅相成,确保了FPGA设计的高效性、稳定性和可靠性。设计者必须对这些原则有深刻的理解,并在实践中灵活运用,才能设计出性能优异的FPGA系统。在设计中,...

    完善FPGA系统设计的三个原则

    本文档中强调的三个原则是:面积与速度的平衡互换原则、硬件可实现原则、以及同步设计原则。这三个原则分别涉及到了资源使用优化、设计实现可行性和同步机制的选择。 首先,面积与速度的平衡互换原则指出,在FPGA...

    设计FPGA系统应了解的三个原则.docx

    理解和运用好这三个原则,能够帮助开发者更高效地利用FPGA的资源,构建出既快速又紧凑的系统。在实际工程中,还需要结合具体的项目需求和FPGA芯片的特性,进行综合考虑和优化,以达到最佳的设计效果。

    (完整)选择Linux入门教程的三个原则 .doc

    以下三个原则对于初学者尤其有用: 原则1:选择适合自己的Linux发行版 Linux有着丰富的发行版,如RHEL、CentOS、Fedora、Ubuntu等。对于打算从事Linux运维工作的学习者,建议选择RHEL或CentOS,因为它们与企业环境...

    制定应急救援预案应坚持的三个原则.docx

    制定应急救援预案应坚持的三个原则.docx

    设计FPGA系统应了解的三个原则.pdf

    以下是基于标题和描述中的三个关键原则的详细说明: **原则一:面积与速度的平衡互换** 在FPGA设计中,面积和速度是两个相互关联的重要指标。面积主要指的是FPGA芯片上的逻辑资源和I/O资源的占用量,而速度则表示...

    技术高手的十三个原则

    学技术要刨根问到底,要看清楚本质和原理,这样你才能根据原理和本质去千变万化,否则你只有永远跟在别人后面,做别人做过的功能。

    有效处理JAVA异常三原则

    总之,有效处理Java异常的三个原则——具体明确异常、提早抛出异常和延迟捕获异常,对于创建健壮、易于调试的Java应用程序至关重要。通过合理使用异常类型、异常堆栈跟踪以及用户友好的错误处理提示,我们能够构建出...

    瘦人增重,把握三个基本原则

    今天,我们将讨论瘦人增重的三个基本原则,这三个原则将帮助您更好地增重。 原则一:合理膳食 瘦人的增重,首先要保证足够的能量摄入。国家高级公共营养师杜冬梅介绍说,瘦人想要增重,首先要注意膳食的多样性和...

    Java有效处理异常的三个原则

    下面我们将详细探讨这三个原则,并结合一个虚构的个人财务管理器类JCheckbook进行说明。 首先,**具体明确**是指在处理异常时,应该尽可能使用具有特定含义的异常类,而不是过于通用的异常。Java的异常体系结构包括...

    选用光藕继电器的三个原则和方法

     选用光藕继电器的三个原则和方法 首先必须对光藕继电器所控制的对象一一被控回路的性质、特点以及对光藕继电器的要求等都要有周密地考察和透彻地了解。其次,对光藕继电器本身的各种特性一一原理、使用条件、技术...

    模拟技术中的选用光藕继电器的三个原则和方法

     选用光藕继电器的三个原则和方法 首先必须对光藕继电器所控制的对象一一被控回路的性质、特点以及对光藕继电器的要求等都要有周密地考察和透彻地了解。其次,对光藕继电器本身的各种特性一一原理、使用条件、技术...

    推行6s管理的三大基本原则.pdf

    推行6s管理的三大基本原则.pdf

    物体碰撞问题三原则.pdf

    通过分析题目中的例子,我们可以看到,只有同时满足这三个原则的答案才是正确的。例如,例题3中,我们通过动量守恒和动能关系排除了一些选项,最终找到了可能的正确答案。 总的来说,解决物体碰撞问题的关键在于...

    Redux三大原则1

    Redux 是JavaScript状态容器,提供可预测化的状态...这三个原则共同构建了Redux的核心机制,为复杂的JavaScript应用提供了强大而有序的状态管理方案。在实际开发中,配合React等库,可以实现高效且易于维护的前端应用。

    《深入浅出设计模式》读书笔记--策略模式与三个设计原则

    除了这三个原则,策略模式还与依赖倒置原则(Dependency Inversion Principle, DIP)有所关联。DIP强调高层模块不应该依赖于低层模块,两者都应该依赖于抽象。在策略模式中,客户端依赖于抽象策略接口,而不是具体策略...

    代码的抽象三原则-阿沐1

    在实际开发中,这三个原则相互配合,帮助我们找到代码冗余和开发成本之间的平衡点。DRY保证了代码的统一性,YAGNI提醒我们关注实际需求,而Rule of Three则是这两个原则在实践中的实用指南。理解并灵活运用这些原则...

    模式和原则

    除了上述三个原则之外,GRASP还包括其他几个重要的原则: - **Controller(控制器)** - 控制器负责处理外部请求,并将请求转发给适当的对象进行处理。 - **Indirection(间接性)** - 通过引入中介对象来降低类...

    附件1-三原则案例.ppt

    总结这三个原则,企业在进行薪酬设计时,需确保薪酬的公平性,提高薪酬制度的透明度,同时全面考虑员工的需求,包括工作环境、福利待遇、职业发展等多方面因素,以提升员工的满意度和留存率。只有这样,才能构建一个...

    2022年浅析计算机及网络应用技术的实践三原则.docx

    这三个原则在计算机及网络应用技术的实践中相辅相成,共同构成了高效、规范、简约的技术实施框架。无论是大型企业的网络部署,还是个人用户的电脑配置,都可以从中受益。它们为工程师和技术人员提供了一种思路,帮助...

Global site tag (gtag.js) - Google Analytics