-
LSP里氏替换原则----正方形不是长方形和鸵鸟不是鸟的测试程序
所属栏目:[程序设计] 日期:2020-05-22 热度:99
//面向对象设计原则:LSP里氏替换原则//正方形不是长方形的测试程序#include iostreamusing namespace std;//长方形类Rectangleclass Rectangle {private:int width;int height;public:int getWidth(){ return width;[详细]
-
7.9.1: 依赖关系注入之后的行为
所属栏目:[程序设计] 日期:2020-05-22 热度:149
Spring可以管理 singleton作用域 Bean的生命周期,Spring可以精确地知道该Bean何时被创建、何时被初始化完成、容器何时准备销毁该Bean实例。 对于 prototype作用域 的Bean,Spring容器仅仅负责创建,当容器创建了Bean实例之后,Bean实例完全交给客户端代码管[详细]
-
WPF基础到企业应用系列8——依赖属性之“风云再起”
所属栏目:[程序设计] 日期:2020-05-22 热度:168
一. 摘要 首先圣殿骑士很高兴”WPF 基础到企业应用系列” 能得到大家的关注、支持和认可。看到很多朋友留言希望加快速度的问题,我会尽力的,对你们的热情关注也表示由衷的感谢。这段时间更新慢的主要原因是因为忙着用TDD还原MONO的框架,同时也因为一直在研[详细]
-
31天重构学习笔记12. 分解依赖
所属栏目:[程序设计] 日期:2020-05-22 热度:198
摘要:由于最近在做重构的项目,所以对重构又重新进行了一遍学习和整理,对31天重构最早接触是在2009年10月份,由于当时没有订阅Sean Chambers的blog,所以是在国外的社区上闲逛的时候链接过去的。记得当时一口气看完了整个系列并没有多少感觉,因为这些基本[详细]
-
TDD-让梦想走进现实
所属栏目:[程序设计] 日期:2020-05-22 热度:105
TDD的三步法的每一步都有其深刻的含义,这三步让我们想到一句话“让 梦想 走进 现实”。 梦想可能是美好的,但是可能生活驱使你不断的调整梦想,最终走向现实。 最终你会发现,梦想一般和现实是有差别的,有时可能差别会很大。[详细]
-
设计模式---单一职责原则
所属栏目:[程序设计] 日期:2020-05-22 热度:51
单一职责原则:就一个类而言,应该仅有一个引起他变化的原因。 软件设计真正要做的许多内容,就是发现职责并把这些职责相互分离! 如果你能想到多于一个的动机去改变这个类,那么这个类就具有多于一个的职责![详细]
-
2147:DotA的
所属栏目:[程序设计] 日期:2020-05-22 热度:94
#include iostreamusing namespace std;int main(){ int n; while(cinn) { while(n1) { coutn-; if(n%2==0) n=n/2;[详细]
-
设计模式---依赖倒转原则 + 里氏替换原则
所属栏目:[程序设计] 日期:2020-05-22 热度:102
依赖倒转原则:抽象不应该依赖细节,细节应该依赖抽象,换句话说,就是针对接口编程,而不是针对实现编程。 A:高层模块不应该依赖底层模块,两个都应该依赖抽象。 B:抽象不应该依赖细节,细节应该依赖抽象。 里氏替换原则:子类型必须能够替换掉他们的父类[详细]
-
抽象工厂+反射(未能加载文件或程序集 “DAL”或它的某一个依赖项。系统找不到指定的文件)
所属栏目:[程序设计] 日期:2020-05-22 热度:192
抽象工厂+反射提示“未能加载文件或程序集 “DAL”或它的某一个依赖项。系统找不到指定的文件”,出现这个问题的原因是编译的时候文件生成在U层,而U层没有dll文件所以会提示错误。 那把D层的dll文件复制到U层的debug中不就行了吗?操作后运行程序提示“登录[详细]
-
三范式的依赖,小小的知识,大大的学问
所属栏目:[程序设计] 日期:2020-05-22 热度:101
三范式使得数据库的设计变得有据可依,数据库的冗余大大减少。然而,三范式的定义,却不那么让人省心,一堆文字外加数学知识,让人着实有点小蒙。 虽然说完全按照三范式设计数据库并不可取,但是要想设计一个好的数据库,三范式的知识是必不可少的。 要想更[详细]
-
“未能加载文件或程序集“×××”或它的某一个依赖项。试图加载格式不正确的程序”问题的解决
所属栏目:[程序设计] 日期:2020-05-22 热度:138
昨天晚上 发布到WN7 64位旗舰版iis上时,报:”未能加载文件或程序集“BC.Common”或它的某一个依赖项。试图加载格式不正确的程序。“。 该DLL的本地复制没有设置为true(在项目引用里找到该引用,右键属性里有这个”本地复制).所有发布的时候,它不会自动复[详细]
-
8.2.3: 使用@Resource配置依赖
所属栏目:[程序设计] 日期:2020-05-22 热度:169
@Resource位于java.annotation包下,是来自JavaEE规范的一个Annotation,Spring直接借鉴了该Annotation,通过使用该Annotation为目标Bean指定协作者Bean。 @Resource有一个name属性,默认情况下,Spring将这个值解释为需要被注入的Bean实例的名字。换句话说,[详细]
-
软件设计原则----合成/聚合复用原则(CARP)http://blog.csdn.net/beyondhaven/ar
所属栏目:[程序设计] 日期:2020-05-22 热度:143
软件设计原则----合成/聚合复用原则(CARP) “要尽量使用合成/聚合,尽量不要使用继承。” 陈述: 在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分,新对象通过向这些对象的委派达到复用已有功能的目的。 引入: 如我们所知,在面向对象设计[详细]
-
软件设计原则----依赖倒置原则(DIP)http://blog.csdn.net/beyondhaven/articl
所属栏目:[程序设计] 日期:2020-05-22 热度:83
软件设计原则----依赖倒置原则(DIP) 要依赖于抽象,不要依赖于具体。” “要针对接口编程,不要针对实现编程。” 陈述: 高层模块不应该依赖于低层模块。二者应该依赖于抽象。 抽象不应该依赖于细节。细节应该依赖于抽象。 分析: 所谓“倒置”是相对于传统[详细]
-
软件设计原则----单一职责原则(SRP)http://blog.csdn.net/beyondhaven/articl
所属栏目:[程序设计] 日期:2020-05-22 热度:67
软件设计原则----单一职责原则(SRP) 陈述: 就一个类而言,应该只有一个导致其变化的原因 分析: 一个职责就是一个变化的轴线。 一个类如果承担的职责过多,就等于将这些职责耦合在一起。一个职责的变化可能会虚弱或者抑止这个类完成其它职责的能力。 多职[详细]
-
DDD:订单管理 之 如何组织代码
所属栏目:[程序设计] 日期:2020-05-22 热度:87
背景 系统开发最难的是职责的合理分配,或者叫:“如何合理的组织代码”,今天说一个关于这方面问题的示例,希望大家多批评。 示例背景 参考数据字典 需求 OrderCode必须唯一。 Total = Sum(Subtotal)。 订单有三种状态:【未提交】、【待审核】和【已审核[详细]
-
多年来对聚合和组合的误区
所属栏目:[程序设计] 日期:2020-05-22 热度:56
以前一直以为组合就是用类的对象直接作为别的类的成员变量,聚合就是指针作为别的类的成员变量,但是当画出类图后生成类后发现,代码都是指针,后来才恍然大悟,原来是组合就是类管理别的类的对象,包括构造和析构,不管是直接的对象还是通过指针管理对象。聚[详细]
-
依赖、关联、聚合、组合的区别。
所属栏目:[程序设计] 日期:2020-05-22 热度:166
依赖、关联、聚合、组合的区别。 依赖:Uses a。这种使用关系是具有偶然性的、临时性的、非常弱的,但是B类的变化会影响到A;比如类B作为参数被类A在某个method方法中使用; 关联:Has a。这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,[详细]
-
不再依赖A*,利用C++编写全新寻路算法
所属栏目:[程序设计] 日期:2020-05-22 热度:194
不再依赖A*,利用C++编写全新寻路算法 分类:C/C++ 2013-07-02 19:24 1841人阅读 评论(8) 收藏 举报 C++ 算法 寻路 目录(?)[+] 一,说在前面的话 大概在半年前,看见一到信息竞赛题:在任意方格阵中设置障碍物,确定起始点后,求这两点之间路径。当时觉得蛮有[详细]
-
(泛化,实现,依赖,关联(聚合,组合))
所属栏目:[程序设计] 日期:2020-05-22 热度:189
UML的构造快包含3种: (1) 事物(4种):结构事物,行为事物,分组事物,注释事物 (2) 关系(4种):泛化关系,实现关系,依赖关系,关联关系 (3) 图(10种):用例图,类图,对象图,包图,组件图,部署图,状态图,活动图,序列图,协作图 事物是对模型中最[详细]
-
六大原则之合成聚合原则
所属栏目:[程序设计] 日期:2020-05-22 热度:90
1. 为什么尽量使用合成聚合原则,而不使用继承? 第一: 如果子类的实现发生改变,不得不改变超类。 第二: 超类的方法对于子类是透明的,可以称为白箱复用(对于client端来说,使用子类方法的时候,能够看到父类的方法) 第三: 从超类继承而来是静态的.,什[详细]
-
自定义Panel中添加依赖属性需要注意的问题
所属栏目:[程序设计] 日期:2020-05-22 热度:99
今天帮忙同事调试一个自定义Panel的问题, 很奇怪, 利用Binding可以通过ItemSource来添加控件,但是在Listbox的xaml里添加几个ListboxItem却报异常: VisualTree of ItemsPanelTemplate must be a single element. 原因有2: 1)ListBox的ItemPanelTemplate[详细]
-
(转载)WPF基础到企业应用系列7——深入剖析依赖属性(WPF/Silverlight核心)
所属栏目:[程序设计] 日期:2020-05-22 热度:194
原文地址 一. 摘要 首先圣殿骑士很高兴这个系列能得到大家的关注和支持,这个系列从七月份开始到现在才第七篇,上一篇发布是在8月2日,掐指一算有二十多天没有继续更新了,最主要原因一来是想把它写好,二来是因为最近几个月在筹备“云计算之旅”系列,所以一[详细]
-
Qt--将Qt 动态链接生成的exe及依赖dll打包方法
所属栏目:[程序设计] 日期:2020-05-22 热度:154
Qt静态编译链接生成的exe文件,不需依赖dll,可以独立运行,发布很方便。 但绝大多数用的都是Qt开源版本,如果用静态链接,会有些限制。 方法之一,就是用动态编译,然后把exe和需要的dll整合成一个文件,问题就解决了。 具体步骤: 一、先动态编译链接,生成[详细]
-
UML中的泛化,关联,依赖
所属栏目:[程序设计] 日期:2020-05-22 热度:145
UML把类之间的关系分为以下5种. ● 关联((Association):类A与类B的实例之间存在特定的对应关系 ● 依赖(Dependency):类A访问类B提供的服务 ● 泛化(Generalization):类A继承类B ● 实现(Realization):类A实现了B接口 其中关联又分为一般关联关系和聚合关[详细]

浙公网安备 33038102330553号