接口隔离原则

接口隔离原则
接口隔离原则(InterfaceSegregationPrinciple,ISP)要求程序员尽量将臃肿庞大的接口拆分成更小的和更具体的接口,让接口中只包含客户感兴趣的方法。以学生成绩管理程序为例一般包含插入成绩、删除成绩、修改成绩、计算总分、计算均分、打印成绩信息、査询成绩信息等功能,如果将这些功能
软件设计原则 2020年01月19日 104次浏览
接口隔离原则

里氏替换原则

里氏替换原则
子类可以扩展父类的功能,但不能改变父类原有的功能。也就是说:子类继承父类时,除添加新的方法完成新增功能外,尽量不要重写父类的方法。关于里氏替换原则的例子,最有名的是“正方形不是长方形”。当然,生活中也有很多类似的例子,例如,企鹅、鸵鸟和几维鸟从生物学的角度来划分,它们属于鸟类;但从类的继承关系来看,
软件设计原则 2020年01月19日 85次浏览
里氏替换原则

单一职责原则

单一职责原则
单一职责原则:应该有且仅有一个原因引起类的变更(Thereshouldneverbemorethanonereasonforaclasstochange)参考链接:https://www.jianshu.com/p/c1073bd9b080
软件设计原则 2020年01月19日 85次浏览
单一职责原则

依赖倒置原则

依赖倒置原则
依赖倒置原则(DependenceInversionPrinciple,DIP)是ObjectMentor公司总裁罗伯特·马丁(RobertC.Martin)于1996年在 C++ Report上发表的文章。依赖倒置原则的原始定义为:高层模块不应该依赖低层模块,两者都应该依赖其抽象;抽象不应该依赖细
软件设计原则 2020年01月19日 81次浏览
依赖倒置原则

迪米特法则

迪米特法则
迪米特法则:最少知识法则。如用户找房,不需要自己找,让中介帮你找。用户只需要告诉中介需要什么样的房子#include#include#includeusingnamespacestd;classAbstractBuding{public:virtualvoidsale()=0;virtualstri
软件设计原则 2020年01月19日 94次浏览
迪米特法则

开闭原则

开闭原则
开闭原则:对扩展开放,对修改关闭。增加功能是通过添加代码实现的,而不是通过修改原有代码实现的。示例代码:#include<QCoreApplication>#include<iostream>usingnamespacestd;classAbstractCalculator{
软件设计原则 2020年01月19日 92次浏览
开闭原则

合成复用原则

合成复用原则
合成复用原则(CompositeReusePrinciple,CRP)又叫组合/聚合复用原则(Composition/AggregateReusePrinciple,CARP)。它要求在软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。#include<QCo
软件设计原则 2020年01月19日 99次浏览
合成复用原则