代码编织梦想

系列文章目录

前言

为来编写的代码规范,且提高代码的维护性而需要蹲守的七大原则。

一、单一职责

  在代码里,所有的类,对象,接口都只能有一种职责(功能),从而减少该类(对象,接口)被修改的动机。特别是测试完的代码最好都不要动,否则bug自负。

二、开闭原则

  对原有的代码只能扩展,不能修改。还是那句话,特别是测试完的代码最好都不要动,否则bug自负。

三、接口隔离

  任何接口都只能有一个方法,算是对单一职责的一次补充。

四、里氏替换

  派生类只能对基类原有的功能进行扩充,不能进行修改。算是对开闭原则的一次补充。

五、迪米特法则

  比如有一个A类和一个B类,A类和B类相互知道对方的细节越少越好(耦合性必须低)

六、依赖倒置

  比如有一个Course类和一个Student类,这里模拟一下Student调用Course类的前景。

class Course{
       //学习java课程
       public void javaCourse(){
              //todo
       }
       //学习c sharp课程
       public void csharpCourse(){
               //todo
       }
}

  而Student类对其调用就需要这样的写法

class Student{
       //学习
       public void study(){
              Course course = new Course ();
              course.javaCourse();
              course.csharpCourse();
       } 
}

  这是你要新加一个Js的教材,你会发现要去同时修改Student类和Course类,这样就很麻烦。这时我们可以引用一个ICourse接口,然后让Student类每次都去通过ICourse接口调用课程学习且是新增加一个类必须对原来的类进行修改。写法如下:

interface ICourse{
       void learnCourse();
}

class JavaCourse : ICourse{
     void learnCourse(){
           //todo
     }
}

class CSharpCourse : ICourse{
     void learnCourse(){
           //todo
     }
}

class Student{
      //学习
      public void study(){
             //想写java就new java,代码扩展性和阅读性都提高了,还有就可恨的耦合性
             ICourse javaCourse = new JavaCourse ();
             javaCourse。learnCourse();
      } 
}

七、合成复用

在设计代码的时候,能用组合关系的尽量用组合关系而不使用继承关系。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41094072/article/details/126984115

[软件工程] 面向对象设计-爱代码爱编程

面向对象设计 面向对象设计一、 面向对象设计的准则(一) 模块化(二) 抽象(三) 信息隐藏(四) 弱耦合对象之间的耦合可分为两大类:(1) 交互耦合(2) 继承耦合 (五)强内聚(六)可重用

软件设计(面向对象设计)的七大原则 and UML 类图 详解-爱代码爱编程

目录 1 软件设计模式的七大原则 1.1设计模式的目的  1.2 设计模式七大原则 1.3  单一职责原则 1.4  接口隔离原则(Interface Segregation Principle) 1.5 依赖倒转原则 1.6 里氏替换原则 1.7 开闭原则 1.8 迪米特法则 1.9 合成复用原则(Composite Reuse Pr

面向对象(OOP)的七大设计原则-爱代码爱编程

如何学习设计模式                                                                                                                           ①    学习技巧 学习设计模式时,有一些技巧能够帮助你快速理解设计模式。 a)   使用

面向对象设计的七大原则详细说明-爱代码爱编程

面向对象设计的七大原则 1、开闭原则 - Open Close Principle(OCP) 1)定义 一个软件实体如类、模块和函数应该对扩展开放,对修改关闭 Software entities like classes,modules and functions should be open for extension but closed for

OOP面向对象七大原则(个人总结)-爱代码爱编程

OOP(面向对象)七大原则 简述开闭原则里氏替换原则依赖倒置原则单一职责原则接口隔离原则迪米特法则合成复用原则 简述 开闭原则:对扩展开放,对修改关闭里氏替换原则:继承必须确保超类所拥有的性质在子类中仍然成立依赖倒置原则:要面向接口编程,不要面向实现编程单一职责原则:控制类的粒度大小,将对象解耦,提高其内聚性接口隔离原则:要为各个类建立它们需

python设计模式六大原则_设计模式七大原则(示例代码)-爱代码爱编程

设计模式目的 编写软件过程中,程序员面临着来自 耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性 等多方面的 挑战,设计模式是为了让程序(软件),具有更好 1) 代码重用性 (即:相同功能的代码,不用多次编写) 2) 可读性 (即:编程规范性, 便于其他程序员的阅读和理解) 3) 可扩展性 (即:当需要增加新的功能时,非常的方便,称为可维

python面向对象六大原则_面向对象设计的七大原则-爱代码爱编程

1.开闭原则 - Open Close Principle(OCP) 1)定义 一个软件实体如类、模块和函数应该对扩展开放,对修改关闭 Software entities like classes,modules and functions should be open for extension but closed for modificat

设计模式(一)之七大设计原则-爱代码爱编程

导言:为什么要学设计模式? 让程序具有: 1)代码重用性(相同代码,可以复用,不用多次编写) 2)可读性(代码编程规范,便于其他人阅读理解) 3)可扩展性(在原有基础上增加新功能时,比较方便) 4)可靠性(在原有基础上增加新功能后,对原来的功能没有影响) 5)高内聚,低耦合(模块内部紧密,模块与模块之间依赖性低) 七大设计原则 单一职责原则

Java面向对象7大设计原则讲解-爱代码爱编程

        面向对象程序设计是当今主流的程序设计范型,已经取代了早期的“结构化”过程化程序设计开发技术,java是完全面向对象的计算机语言,要使用面向对象式来设计java程序。         学习Java肯定需要知道面向对象设计原则是什么,这样才能用写出程序。         面向对象设计原则一共有七个:开闭原则、里氏替换原则、依赖倒转原则、

Java七大设计模式原则(附相关电子图书下载)-爱代码爱编程

博主信息: 📢@博主: 嘟嘟的程序员铲屎官 💬:大家好,我是嘟嘟的程序员铲屎官,一位爱喵咪,爱开源,爱总结,爱分享技术的Java领域新星博主,如果你想和博主做朋友,关注博主,并私聊博主(给我发一条消息我就会关注你喔),博主本人也十分喜欢解决问题,如果你有什么问题,也可以来私聊博主喔,希望能够和C站的朋友相互学习,相互进步。 💬:关于本篇博客,最近在

Java设计模式【之】 七大设计原则(有道有术,代码示例)-爱代码爱编程

Java设计模式【之】 有道有术(设计原则,代码示例) 名词解析1.单一职责2.接口隔离3.依赖倒置(面向接口编程)4.里氏替换5.开闭原则(ocp)6.迪米特(好朋友原则)7.合成复用8.精华:代码示例解析《上一篇:Java-UML类图》《目录:Java设计模式》《目录:从零手写Tomcat》《幕》 名词解析 高内聚,低耦合、可读性、

Java设计模式之七大设计原则-爱代码爱编程

Java设计模式之七大设计原则 本文对Java设计模式中的七大设计原则进行汇总介绍,提炼最核心的概念。 设计模式总结笔记 一、设计模式七大原则 设计模式的目的: 代码可重用性:相同功能的代码,不用多次编写。可读性:编程规范性,便于其他程序员的阅读和理解。可扩展性:当需要增加新的功能的时候,非常方便,称为可扩展性。可靠性:当我们新增功能后,

面向对象七大设计原则之开放封闭原则_jerry nan的博客-爱代码爱编程

        熟练掌握和应用面向对象设计七大原则,是初中级工程师向高级/资深工程师进阶的一个必备技能。他可以大大的提升程序的可复用性和可维护性是重构代码的一大利器。         本人菜鸟一枚本面文章的出发点是1.加深个人印象。2.作为笔记记录。3.分享。文章中有描述的不到位或者不正确的地方各位大佬多多指出多多包涵。         使用设计模式的

面向对象设计(ood)七大原则-爱代码爱编程

这篇文章我会不停的维护它,它将会越来越长,但它是关于我在面向对象中的一些学习的思考心得。希望对自己对各位都能有用处。     开篇前,说明一下写这篇文章的原因。原因是因为设计模式。因为设计模式里的各种模式,都是建立在这些原则之上的。好比盖房子需要夯实的地基,或者比作数学论证中的使用到的公理。你不能说为什么盖房子一定要建立在地基之上,也不能说为什么两点一直