上一页 1 ··· 6 7 8 9 10 11 下一页
摘要: 在周日的晚上,什么都不想干,却心血来潮的想去了解摄像的知识; 无意中在刷微博的时候看见一篇教程,觉得还不错,所以我打算以自己的方式去记录下来; 我们都知道,在什么样的场景应该搭配什么样的动作,这些对于拍摄人像的时候很重要,要么突出人像,要么人景融合,都是可以的; 宽阔/层次+背影 我们知道在一些非常 阅读全文
posted @ 2016-11-13 22:52 banananana 阅读(611) 评论(0) 推荐(0) 编辑
摘要: 简介 引用计数就是对一个对象记录其被引用的次数,其的引用计数可加可减,那什么时候加什么时候减呢?所以引用计数的重点在于在哪里加,在哪里减; 加: 减: 实现 其中Ref是引用,而RefPtr是对Ref进行操作的封装,在什么时候加减; 测试 cpp // // main.cpp // Ref // / 阅读全文
posted @ 2016-11-08 08:12 banananana 阅读(3076) 评论(0) 推荐(0) 编辑
摘要: 定义 当一个对象在内在状态改变时允许改变其行为,这个对象看起来像是改变了其类; 行为型模式 角色 上下文环境(Context) :定义了客户程序需要的接口并维护了一个具体状态角色的实例,将与状态相关的操作委托给当前的Concrete State对象来处理; 抽象状态(State) :定义了一个接口以 阅读全文
posted @ 2016-11-07 10:05 banananana 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 定义 将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性; 结构型模式 角色 抽象构件角色(Component) :组合中的对象声明接口,在适当的情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理,; 部分构件角色(Leaf) :没 阅读全文
posted @ 2016-11-07 10:05 banananana 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 定义 是一个行为设计模式,它允许我们公开一个统一的接口,系统的不同部分可以通过该接口进行通信,而不需要显示的相互作用; 适用场景 如果一个系统的各个组件之间看起来有太多的直接关系,这个时候则需要一个中心控制点,以便各个组件可以通过这个中心控制点进行通信; 该模式促进松散耦合的方式是:确保组件的交互是 阅读全文
posted @ 2016-11-07 10:04 banananana 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 定义 Decorator是一种结构型设计模式,旨在促进代码复用; 装饰者模式可以动态的给一个对象增加其他职责;就扩展功能来说,装饰者模式比生成子类更为灵活。 角色 抽象构件角色(AbstractComponent) :定义对象的接口,可以给这些对象动态增加职责; 抽象装饰角色(AbstractDec 阅读全文
posted @ 2016-11-07 10:04 banananana 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 定义 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象; 创建型模式 浅拷贝:使用一个已知实例对新创建实例的成员变量逐个赋值; 深拷贝:当一个类的拷贝构造方法,不仅要复制对象的所有非引用成员变量值,还要为引用类型的成员变量创建新的实例,并且初始化为形式参数实例值; 角色 抽象原型类(Pr 阅读全文
posted @ 2016-11-07 10:03 banananana 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 定义 是一种对象的行为模式,在责任链模式里,很多对象由每个对其下家的引用而连接起来形成的一条链,请求在这个链上传递,直到链上的某一个对象决定处理此请求,发出这个请求的客户端并不知道链上的哪一个对象最终会处理这个请求; 行为型模式 角色 抽象处理者角色(Handler) :定义处理请求的接口; 抽象处 阅读全文
posted @ 2016-11-07 10:03 banananana 阅读(696) 评论(0) 推荐(0) 编辑
摘要: 定义 采用一个共享来避免大量拥有相同内容对象的开销;运用共享技术有效地支持大量细粒度的对象;(共享的对象必须是不可变的,不然一变则全变) 享元模式分为单纯享元模式和复合享元模式; 结构型模式 角色 抽象享元角色(Flyweight) :此角色是所有的具体享元类的超类,为这些类规定出需要实现的公共接口 阅读全文
posted @ 2016-11-07 10:02 banananana 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 定义 将抽象部分与它的实现部分分离,是它们都可以独立地变化; 结构型模式 角色 抽象化角色(Abstaction) :定义抽象接口,拥有一个Implementor类型对象引用; 重定义抽象化角色(RefinedAbstraction) :扩展Abstraction中的接口定义; 实现化角色(Impl 阅读全文
posted @ 2016-11-07 10:00 banananana 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 定义 将一个类转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作; 创建型模式 角色 目标接口(Flyweight) :客户所期待的接口,目标可以是具体的或抽象的类,也可以是接口; 需要适配的类(Adaptee) :需要适配的类或适配者类; 适配器(Adapter) 阅读全文
posted @ 2016-11-07 10:00 banananana 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 定义 为子系统中的一组接口提供一个统一的入口,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 角色 外观角色(Facade) :在客户端可以调用它的方法,在外观角色中可以知道相关的(一个或者多个)子系统的功能和责任;在正常的情况下,它将所有从客户端发来的请求委派到相应的子系统,传递 阅读全文
posted @ 2016-11-07 10:00 banananana 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 解释器模式 详解 定义 给定一种语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子; 行为型模式 角色 上下文环境(Context) :一般用来存放文法中各个终结符所对应的具体值; 抽象表达式(Expression) :声明一个所有的具体表达式角色都需要实现的抽象接口 阅读全文
posted @ 2016-11-07 09:59 banananana 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 定义 旨在将方法调用、请求或操作封装到单一对象中,从而根据我们不同的请求对客户进行参数化和传递可供执行的方法调用。此外,这种模式将调用操作的对象与知道如何实现该操作的对象解耦,并在交换出具体类(对象)方面提供更大的整体灵活性; 它为我们提供了一种分离职责的手段,这些职责包括从执行命令的任意地方发布命 阅读全文
posted @ 2016-11-07 09:59 banananana 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类; 创建类模式 角色 抽象工厂角色(AbstractFactory) :模式的核心,提供具体工厂角色必须实现的接口或者必须继承的父类; 具体工厂角色(ConcreteFactory) :含有和具体业务逻辑 阅读全文
posted @ 2016-11-07 09:58 banananana 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 定义 是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 创建类模式 角色 建造者角色(Product) :给出一个抽象接口,以规范产品对象的各个组成部分的建造。这个接口规定要实现复杂对象的哪些部分的创建,并不涉及具体的对象部件的创建; 抽象建造者角色(ConcreteB 阅读全文
posted @ 2016-11-07 09:58 banananana 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 定义 保证一个类仅有一个实例,并且提供一个访问它的全局访问点; (在该实例不存在的情况下,可以通过一个方法创建一个类来实现创建类的新实例;如果实例已经存在,它会简单返回该对象的引用) 创建型模式 适用场景 当类只有一个实例而且客户可以从一个众所周知的访问点访问它时; 该唯一的实例应该是通过子类化可扩 阅读全文
posted @ 2016-11-07 09:57 banananana 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 定义 提供一种方法访问一个容器对象中各个元素,而又不需要暴露该对象的内部细节; 行为型模式 角色 迭代器角色(Iterator) :迭代器角色负责定义访问和遍历元素的接口; 具体迭代器角色(Concrete Iterator) :具体迭代器角色要实现迭代器接口,并要记录遍历中的当前位置; 容器角色( 阅读全文
posted @ 2016-11-07 09:57 banananana 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 定义 代理模式是对象的结构模式,代理模式给某一个对象提供一个代理对象,并由代理对象控制原对象的引用; 结构型模式 角色 抽象对象角色(AbstractObject) :声明了目标对象和代理对象的共同接口,任何可以使用目标对象的地方都可以使用代理对象; 目标对象角色(RealObject) :定义了代 阅读全文
posted @ 2016-11-07 09:56 banananana 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 单一职责原则 Single Responsibility Principle 定义:一个类或者一个接口,最好只负责一项职责。 问题由来 :类T负责两个不同的职责P1和P2。由于职责P1需要发生改变而需要修改T类,就有可能导致原来运行正常的职责P2功能发生故障。 解决方法 :遵循单一职责原则。分别建立 阅读全文
posted @ 2016-11-07 09:56 banananana 阅读(5732) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 下一页