手机版
热门标签
站点地图
我要投稿
广告合作
联系我们
搜 索
广告位招租
广告位招租
切换导航
首页
编程教程
编程导航
编程百科
编程问答
编程博文
编程实例
硬件设备
网络运营
软件教程
移动数码
办公软件
操作系统
网络运维
设计教程
技术频道
▸ 编程语言
▸ 前端开发
▸ 移动开发
▸ 开发工具
▸ 程序设计
▸ 行业应用
▸ CMS系统
▸ 服务器
▸ 数据库
公众号推荐
微信公众号搜
"智元新知"
关注
微信扫一扫可直接关注哦!
原则
原则专题提供原则的最新资讯内容,帮你更好的了解原则。
设计原则4-依赖倒转原则
本文转自:http://www.cnblogs.com/guoshiandroid/archive/2010/06/07/1753270.html 针对接口编程(依赖倒转原则)-问世间情为何物 直教人生死相许 应用场景举例: “十六年后 在此重会;夫妻情深 勿失信约”,悲痛欲绝的杨过跑到断肠崖,看到小龙女亲手留在石壁上的文字,即惊喜又痛苦不欲生:“十六年!为什么要等到十六年?!”。 但是信约已定
作者:佚名 时间:2020-02-23
设计模式-OOD的设计原则(1)-"开-闭原则"
这些OOD原则的一个基石就是"开-闭原则"(Open-Closed Principle OCP).这个原则最早是由Bertrand Meyer提出,英文的原文是:Software entities should be open for extension,but closed for modification.意思是说,一个软件实体应当对扩展开放,对修改关闭.也就是说,我们在设计一个模块的时候,应
作者:佚名 时间:2020-02-23
设计模式-OOD的设计原则(2)-"里氏代换原则"
从上一篇的"开-闭"原则中可以看出,面向对象设计的重要原则是创建抽象化,并且从抽象化导出具体化.这个导出要使用继承关系和一个原则:里氏代换原则(Liskov Substitution Principle, LSP). 那么什么是里氏代换原则呢?有个严格的表述,绕口,不好记.还是比较白话的这个好记.说的是:一个软件实体如果使用的是一个基类的话,那么一定适用于其子类,而且它察觉不出基类对象
作者:佚名 时间:2020-02-23
设计模式-OOD的设计原则(3)-"依赖倒转原则"
"开-闭"原则是我们OOD的目标,达到这一目标的主要机制就是"依赖倒转原则".这个原则的内容是:要依赖于抽象,不要依赖于具体. 对于抽象层次来说,它是一个系统的本质的概括,是系统的商务逻辑和宏观的,战略性的决定,是必然性的体现;具体的层次则是与实现有关的算法和逻辑,一些战术性的决定,带有相当大的偶然性.传统的过程性系统设计办法倾向于使高层次的模块依赖于低层次的模块;抽象层次依赖于具体层
作者:佚名 时间:2020-02-23
设计模式-OOD的设计原则(4)-"接口隔离原则"
接口隔离原则(ISP):使用多个专门的接口比使用单一的总接口要好.也就是说,一个类对另外一个类的依赖性应当是建立在最小的接口上的. 这里的"接口"往往有两种不同的含义:一种是指一个类型所具有的方法特征的集合,仅仅是一种逻辑上的抽象;另外一种是指某种语言具体的"接口"定义,有严格的定义和结构.比如Java语言里面的Interface结构.对于这两种不同的含义,ISP的表达方式以及含义都有
作者:佚名 时间:2020-02-23
设计模式-OOD的设计原则(5)-"合成聚合复用原则"
合成(Composition)和聚合(Aggregation)都是关联(Association)的特殊种类。聚合表示整体和部分的关系,表示“拥有”;合成则是一种更强的“拥有”,部分和整体的生命周期一样。合成的新的对象完全支配其组成部分,包括它们的创建和湮灭等。一个合成关系的成分对象是不能与另一个合成关系共享的。 换句话说,合成是值的聚合(Aggregation by Value),而一
作者:佚名 时间:2020-02-23
【8】SRP:单一职责原则
《敏捷软件开发 原则、模式与实践(c#版)》 第8章 SRP:单一职责原则 定义: “SRP:一个类应该只有一个发生变化的原因。”(P89) “在SRP中,我们把职责定义为变化的原因。如果你能够想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责。” (P90) 部分摘要 “如果一个类承担的职责过多,就等于把这些职责耦合在了一起。一个职责的变化可能会削弱或者抑制这个类完成其他职责的能
作者:佚名 时间:2020-04-19
OOD实践之依赖倒置原则
OOD设计之依赖倒置原则:解耦高层模块和底层模块的利器是让两者皆依赖于抽象。抽象是什么呢?抽象是一个约定,在C++中这个约定可通过一个纯虚类来表示,Java中便是interface。为什么要解耦高层模块和底层模块啊?因为谁都不想被谁锁定喽。e.g. 有两个模块:一个是用于管理图像的模块 A,另一个是对图片进行编解码的模块 B;显然模块 A 在读取图片的时候要依赖于模块B提供的图片解码服务,在保存图
作者:佚名 时间:2020-04-19
设计模式六大原则2:里氏代换原则
里氏代换原则(Liskov Substitution Principle) 里氏代换原则是由麻省理工学院(MIT)计算机科学实验室的Liskov女士,在1987年的OOPSLA大会上发表的一篇文章《Data Abstraction and Hierarchy》里面提出来的,主要阐述了有关继承的一些原则,也就是什么时候应该使用继承,什么时候不应该使用继承,以及其中的蕴涵的原理。2002年,软件工
作者:佚名 时间:2020-04-19
OOD沉思录 之 类和对象的关系--使用关系原则
4.1 尽量减少类的协作的数量,即减少使用者和被使用者的数量。 协作意味着一定程度的耦合,但是完全没有协作的类也是没有意义的,最多只能作为一个库使用。 通过抽象,依赖接口,可以最大程度减少依赖的实现类,对使用者来说,只看到接口的依赖,而具体的实现的依赖可以通后后期绑定来配置依赖关系。 如 菜单----〉牛肉 ----〉羊肉
作者:佚名 时间:2020-04-19
设计原则之--里氏代换原则
一个软件实体如果使用的是一个基类的话,那么一定适用于其子类,而且它根本不能察觉出其子类对象和基类对象的区别。 里氏代换原则是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不会受到影响时,基类才能真正的被复用,而衍生类才可能够在基类的基础上增加新的行为。 但是反过来不成立。 java对里氏代换的支持: 在编译时期,java语言编译器会检查一个程序是
作者:佚名 时间:2020-04-19
设计原则之--依赖倒转原则
在传统的过程性系统的设计办法倾向于使高层次的模块依赖于低层次的模块;抽象层次依赖于具体层次。倒转原则就是要把这个错误的依赖关系倒转过来。 依赖(或耦合)关系的分类: 零耦合关系:如果两个类没有耦合关系,就称之为零耦合 具体耦合关系:具体耦合关系发生在两个具体的(可实例化)的类之间,经由一个类对另一个类的直接引用造成。 抽象耦合关系:抽象耦合关系发生在一个具体类和一个抽象类(或者java接口)之
作者:佚名 时间:2020-04-19
【设计模式攻略】OO设计原则之SRP-单一职责原则
概要 所谓单一职责,一个类或接口应该只负责一种职责,当某个类或接口会因为两种职责的变更而引起变化时,我们就需要分割职责。 目的 一个类或接口应该只会因一种职责而发生改变 实例与效果 先看个例子吧。假设我们需要一个消息的接口类,可以设定发信者和消息内容,很容易我们会设计成这样一个接口以及实现的类, class IMessage { public: virtual void SetSende
作者:佚名 时间:2020-04-19
【设计模式攻略】OO设计原则之DIP-依赖倒置原则
概要 依赖倒置原则,从字面意思看的话,就是反映的是模块间依赖关系的问题。 目的 降低耦合,降低变更引发的风险,提高扩展性 实例与效果 先让我们从宏观上来看下,举个例子,我们经常会用到宏观的一种体系结构模式--layer模式,通过层的概念分解和架构系统,比如常见得三层架构等。那么依赖关系应该是自上而下,也就是上层模块依赖于下层模块,而下层模块不依赖于上层,如下图所示。 这应该还是比较容易理解的,因为
作者:佚名 时间:2020-04-19
类之单一职责原则
//z 2012-4-17 15:02:07 PM IS2120@CSDN 0. 面向对象设计的5原则(SOLID) • Single Responsibility Principle 单一职责原则 • Open Closed Principle 开闭原则 • Liskov Substitution Principle 里氏替换原则 •
作者:佚名 时间:2020-04-19
OO设计原则 OO设计的LSP里氏替换原则
概要 Functions that use pointers or references to base classesmust be able to use objects of derived classes without knowing it. 所有引用基类的地方必须能透明地使用其子类的对象。 即: ◇ 所以使用基类代码的地方,用派生类代码替换后,能够正确的执行动作处理。 ◇
作者:佚名 时间:2020-04-20
OO设计原则 OO设计的 DIP依赖倒置原则
依赖倒置原则的2个重要方针 A. High level modules should not depend upon low level modules. Both shoulddepend upon abstractions. 高层模块不应该依赖于低层模块,二者都应该依赖于抽象 B. Abstractions should not depend upon details. Details s
作者:佚名 时间:2020-04-20
设计模式学习笔记——单一职责原则
前言: 很久没有写博客了,最近学习了很多东西,没有来得及总结,一直不写博客,慢慢的就有些懈怠了,现在正在学习设计模式,学习了一半,感觉设计模式就是将我混乱的程序让它变得思路清晰,虽然我还没达到这样的水平,但是这个是在于长久的实践练习,目前学习设计模式旨在认识一下都有哪些模式,体会其精髓,还得等到以后项目做多了,才能体会。我用的书是秦小波写的《设计模式之禅》,在图书馆翻到的书,喜欢这本书的风格,没有
作者:佚名 时间:2020-04-20
设计模式学习笔记——里氏替换原则
里氏替换原则是针对继承的,它为良好的继承定义了一个规范。 从学习面向对象编程开始,就知道了继承的概念,是面向对象的三大特征之一,但是继承究竟有什么好的呢?凡事都有两面性,在尽享继承带来的好处的同时,它又给我们带来什么弊端呢?这里我们来回顾一下: 好处: 1、代码共享,减少创建类的工作量,每个子类都拥有父类的方法和树形; 2、提高代码的重用性; 3、提高代码的可扩展性; 4、提高项目或产品的开放性;
作者:佚名 时间:2020-04-20
设计模式学习笔记——依赖倒置原则
依赖倒置最精简的定义就是“面向接口编程”,这个思想我以前一直没有理解,写了很久的程序了,几乎很少写接口,也从不想去写接口,不知道接口到底有什么用,其实,还是写的少啊,而且写的东西都是小型的东西,看来还没有到达要用接口的程度。但是看了这个原则的讲解,知道了接口,或者叫做抽象的作用的重要性和方便性。 依赖倒置原则在java语言中的表现就是: 1、模块间的依赖是通过抽象发生的,实现类之间不发生直接的依赖
作者:佚名 时间:2020-04-20
上一页
1
2
3
4
5
6
7
8
下一页
小编推荐
苹果市值2025年有望达4万亿美元
• 苹果iPhone屏幕划痕如何去除?7个法子可
• iPhone SE 4首发!苹果自研5G基带第一个
• 史无前例:iPhone 16系列电池容量公布
• 首批iPhone 16在路上了!苹果已发货 明
• 绝!iPhone16开卖:北京上海用户暴雨中
• iPhone 18用上台积电2nm芯片!但苹果又
• 粉碎不支持iPhone谣言!微信官宣:朋友
热门标签
更多
python
JavaScript
java
HTML
PHP
reactjs
C#
Android
CSS
Node.js
sql
r
python-3.x
MysqL
jQuery
c++
pandas
Flutter
angular
IOS
django
linux
swift
typescript
路由器
JSON
路由器设置
无线路由器
h3c
华三
华三路由器设置
华三路由器
电脑软件教程
arrays
docker
软件图文教程
C
vue.js
laravel
spring-boot