抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。抽象工厂模式是指当有多个抽象角色时,使用的一种工厂模式。抽象工厂模式可以向客户端提供一个接口,使客户端在不必指定产品的具体的情况下,创建多个产品族中的产品对象。根据LSP原则,任何接受父类型的地方,都应当能够接受子类型。因此,实际上系...
分类:
其他好文 时间:
2014-05-27 01:17:23
阅读次数:
206
new 修饰符与 new 操作符是两个概念new
修饰符用于声明类或类的成员,表示隐藏了基类中同名的成员。而new 操作符用于实例化一个类型new 修饰符只能用于继承类,一般用于弥补基类设计的不足new
修饰符和 override 修饰符不可同时用在一个成员上,因为这两个修饰符在含义上互相排斥pub...
分类:
其他好文 时间:
2014-05-24 05:23:44
阅读次数:
234
这期讨论了斯金纳箱。对游戏设计很有用。在斯金纳之前我们只知道有条件反射。让动物对某一事物反射。而斯金纳认为我们可以控制意志,改变人们的选择。两个重要结论:1.这个也适用于人类。2.每次都给予相同的奖励对建立反射不利。如果按照次数或者时间随机给用户以奖励,这更有利于让玩家一遍遍的玩。饮食睡眠这些生物性...
分类:
其他好文 时间:
2014-05-21 21:59:35
阅读次数:
289
1.在酒桌上,和几十个以前没见过的,以后不会再见的所谓亲戚碰杯,听了很多“光宗耀祖”、“前途无量”之类冠冕堂皇的话2.冷漠的一代:这一代的年轻人很冷,而且是那种不舒服的冷--缺乏热情,缺乏善意,对待周遭的事物,尤其是对待人(可以说是包括自己的亲人在内的一切人),有一种刻骨铭心的冷漠。3.屌丝变土豪:...
分类:
其他好文 时间:
2014-05-19 17:25:23
阅读次数:
182
要区别设计良好的模块与设计不好的模块,最重要的因素在于,这个模块对于外部的其他模块而言,是否隐藏其内部数据和其他实现细节。设计良好的模块会隐藏所有的实现细节,把它的API与它的实现清晰地隔离开来。
信息隐藏之所以非常重要有许多原因,其中大多数理由都源于这样一个事实:它可以有效的解除组成系统的各...
分类:
其他好文 时间:
2014-05-19 13:03:30
阅读次数:
173
Foo.class = 类 = 设计图new Foo() = 建立物件 =
从设计图中弄一件实在的东西出来当然,你也可以在设计图上写写画画点点,但设计图怎样弄都只有一张。物件可以有很多。xxx.class返回的是描述“类”的类(Class)的一个实例而new
xxx();是用来新建一个xxx类的实例
分类:
其他好文 时间:
2014-05-19 09:27:45
阅读次数:
256
设计模式的使用,增加了代码的可维护性、可扩展性、可复用性和灵活性,而设计模式的六大原则为知道方针,也是设计模式的核心。
设计模式中常用的六大原则为:
一、单一职责原则(Single Responsibility Principle,SRP)
定义:一个对象应该只包含单一职责,并且该这则被完整的封装在一个类当中。确切的解释是,就一个类...
分类:
其他好文 时间:
2014-05-18 18:45:12
阅读次数:
238
面向对象编程--再谈文本查询示例引言: 扩展第10.6节的文本查询应用程序,使我们的系统可以支持更复杂的查询。 为了说明问题,将用下面的简单小说来运行查询: Alice Emma has long flowing red hair.
Her Daddy says when the wind blows
through her hair, it looks almost alive,
l...
分类:
编程语言 时间:
2014-05-18 04:15:13
阅读次数:
564
开放-封闭原则:是说软件实体应该可以扩展,但不可修改。设计人员必须对于他设计的模块应该对哪种变化封闭做出选择,先猜测出最有可能发生的变化种类,然后构造抽象来隔离那些变化。面对需求,对程序的改动是通过增加新代码进行的,而不是更改现有的代码。拒绝不成熟的抽象和抽象本身一样重要。
分类:
其他好文 时间:
2014-05-17 21:35:26
阅读次数:
282
抽象不应该依赖谢姐,细节应该依赖于抽象:针对接口编程,不要对实现编程。例如电脑内的内存坏了不会影响到其它模块,而且什么品牌都可以插入内存插槽,而不仅限于某个品牌的内存条。A。高层模块不应该依赖底层模块,两个都应该依赖抽象。B。抽象不应该依赖细节,细节应该依赖抽象。里氏代换原则(LSP):子类型必须能...
分类:
其他好文 时间:
2014-05-17 21:34:49
阅读次数:
299