摘要:
dependency (use a) 依赖关系 当类Y与类X彼此独立,而类Y是类X成员函数的一个参数,或者X中成员函数的一个局部变量 assocation(konws a)关联关系 一个类是另一个类的成员变量 Aggregation (has a) 聚合关系 一个类是另一个类的集合或者容器,但被包含 阅读全文
posted @ 2019-01-10 10:28
二狗啸地
阅读(284)
评论(0)
推荐(0)
摘要:
定义 一个软件实体应当尽可能少地与其他实体发生相互作用 解释 迪米特法则包括不要和“陌生人”说话、只与你的直接朋友通信。对于一个对象,它的直接朋友包括: 任何一个对象,如果满足上面的条件之一,就是当前对象的“朋友”,否则就是“陌生人”。在应用迪米特法则时,一个对象只能与直接朋友发生交互,不要与“陌生 阅读全文
posted @ 2019-01-09 17:07
二狗啸地
阅读(208)
评论(0)
推荐(0)
摘要:
定义 使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口。 解释 不要提供大而全的接口给很多客户端使用,导致客户端不得不实现一些自己根本不需要的方法 一个类对另一个类的依赖应该建立在最小的接口上; 一个接口代表一个角色,不应该将不同的角色都交给一个接口,因为这样可能会形成 阅读全文
posted @ 2019-01-09 17:01
二狗啸地
阅读(239)
评论(0)
推荐(0)
摘要:
定义 抽象不应该依赖于细节,细节应当依赖于抽象。换言之,要针对接口编程,而不是针对实现编程。 解释 如果说开闭原则是面向对象设计的目标的话,那么依赖倒转原则就是面向对象设计的主要实现机制之一,它是系统抽象化的具体实现。 依赖倒转原则要求我们在程序代码中传递参数时或在关联关系中,尽量引用层次高的抽象层 阅读全文
posted @ 2019-01-09 16:09
二狗啸地
阅读(171)
评论(0)
推荐(0)
摘要:
定义 所有引用基类(父类)的地方必须能透明地使用其子类的对象 解释 在软件中将一个基类对象替换成它的子类对象,程序将不会产生任何错误和异常,因此我们需要注意的是,尽量不要重载或者重写父类的方法(抽象方法除外),因为这样可能会改变父类原有的行为。 里氏代换原则是实现开闭原则的重要方式之一,由于使用基类 阅读全文
posted @ 2019-01-09 16:05
二狗啸地
阅读(303)
评论(0)
推荐(0)
摘要:
定义 一个软件实体(如类、模块、函数)应当对扩展开放,对修改关闭。即软件实体应尽量在不修改原有代码的情况下进行扩展 解释 在项目开发的过程中,需求会随时间的推移而发生变化。当软件系统需要面对新的需求时,我们应该尽量保证系统的设计框架是稳定的。如果一个软件设计符合开闭原则,那么可以非常方便地对系统进行 阅读全文
posted @ 2019-01-09 16:03
二狗啸地
阅读(437)
评论(0)
推荐(0)
摘要:
定义 就一个类而言,应该只有一个引起它变化的原因 解释 这是六大原则中最简单的一种。一个类只负责一种职责的工作。在软件系统中,一个类(大到模块,小到方法)承担的职责越多,它被复用的可能性就越小,而且一个类承担的职责过多,就相当于将这些职责耦合在一起,当其中一个职责变化时,可能会影响其他职责的运作 优 阅读全文
posted @ 2019-01-09 16:01
二狗啸地
阅读(112)
评论(0)
推荐(0)
摘要:
用法 只要初始化器的类型被确定,则编译器会用来自函数调用的模板实参推导规则所决定的类型替换关键词 在使用尾随返回类型语法的函数声明中,关键词 auto 不进行自动类型检测。它只作为语法的一部分起作用。 auto 的自动类型推导发生在编译期间,不会降低程序的运行效率。 替代冗长的变量声明 比如,以前对 阅读全文
posted @ 2019-01-03 19:33
二狗啸地
阅读(485)
评论(0)
推荐(0)
摘要:
bind 定义在头文件 functional 里 函数模板 bind 生成 f 的转发调用包装器。调用此包装器等价于以一些绑定到 args 的参数调用 f 。类似于 python 的 functools.partial 参数 f 表示可调用对象(函数对象、指向函数指针、函数的引用、指向成员函数指针或 阅读全文
posted @ 2019-01-03 16:55
二狗啸地
阅读(1571)
评论(0)
推荐(1)
摘要:
ignore 一个未指定的类型对象,任何值都可以没有影响地赋值给它。通常使用tie来解压一个元组,作为可以忽略的占位符。 tie 创建一个元组的左值引用 可以看到,tie函数返回的是一个tuple的左值引用 tie函数可以用来解压一个pair,tuple,也可以用来产生一个结构体的字典序比较 输出: 阅读全文
posted @ 2019-01-02 21:46
二狗啸地
阅读(1269)
评论(0)
推荐(0)