`
252190908
  • 浏览: 228304 次
文章分类
社区版块
存档分类
最新评论
文章列表
o(︶︿︶)o 唉,今天的状态不是很好,但是学习还是要继续的,今天和大家一起分享一下建造者模式,记得之前自己之前一直再想QQ秀换装是怎么是怎么是实现的,今天看了建造者模式我明白了... Darren又在每天的这个时候与大家见面了........ 伴随着家驹的《不在犹豫》今天的学习就这样展开了: 首先回忆一下之前我已经学习的设计模式和原则: 简单工厂模式,策略模式,单一职责原则,开放封闭原则,依赖倒转原则,装饰模式,代理模式,抽象工厂模式,原型模式,模板方法模式,迪米特法则,外观模式 总结一下目前我已经学习了8个设计模式和4个设计原则 今天就再学习一下建造者模式 先分析一下我们现在的 ...
首先各位博友对Darren的一直支持,令我最高兴的一件事就是我的博文被CSDN推荐到首页啦,激动啊,大家有兴趣的可以去捧捧场,顺便顶顶啊:http://blog.csdn.net/fwj380891124/article/details/7600346 先回顾一下之前我们已经讲过的设计模式: ...
各位博友晚上好 先回顾一下之前学习的设计模式和原则 简单工厂模式,策略模式,单一职责原则,开放封闭原则,依赖倒转原则,装饰模式,代理模式,抽象工厂模式,原型模式(Copy,深复制,浅复制)以及昨天刚刚学习的模板方法(最大化优化代码)。 今天吃完饭听了一会猫扑网络电台,感觉里面的MM声音不错,听了一个小时,现在开始继续学习啦。 迪米特法则定义(Law of Demeter) 又叫最少知识法则(Least Knowledge Principle 简写LKP),就是说一个对象应当对其它对象尽可能少的了解,不和陌生人说话。英文简写:LoD。 它在软件中的定义是这样的:如果两个类之间不必彼此直 ...
大家晚上好,又在每天的这个时候和大家分享学习成果了: 之前我写了:简单工厂模式,策略模式,单一职责原则,开放封闭原则,依赖倒转原则,装饰模式,代理模式,抽象工厂模式,原型模式,今天来讲一下设计模式之模板方法模式. 在编程过程中也许大家都会遇到重复的代码,然而重复对于我们来说就是: 重复=易错+难改,而模板方法模式就是帮助我们去减少这些重复的代码。 为了更好的了解模板方法模式 先看看我写的一个事例 模拟学员考试答题 /// <summary> /// 考试试题类 /// </summary> public class TestPaper ...
在多线程或单线程任务中,让线程带传入参数一直是个麻烦的问题,通常有种方法就是以类,对像的变量来传参数,这种方法理解上很简单不过在某些场合使用很麻烦,这里就不介绍了,我们主要介绍一种.NET2.0中新增加的带参数运行线程的方法,示例程序如下: ParameterizedThreadStart ParStart = new ParameterizedThreadStart(ThreadMethod); Thread myThread = new Thread(ParStart); object o = “hello”; myThread.Start(o); Thread ...
在之前的文章中我们讲了简单工厂模式,策略模式,单一职责原则,开放封闭原则,依赖倒转原则,装饰模式,代理模式,抽象工厂模式,上一节在抽象工程模式中讲了利用工厂模式创建英雄的过程,今天我将带大家用原型模式模拟一下魔兽世界里面的怪物创建,其实我平时很少玩游戏的,但是我喜欢对游戏进行分析,下面就讲一下设计思路: 我要模拟的是这样的场景,模拟游戏地图中的出怪功能: 地图中创建怪,也许一次不止要创建一个怪,而是创建一批怪,怎么编程才能让我们的游戏耗的资源小一点呢,对于大型的游戏,系统配置是玩游戏的瓶颈所在: 最易想到的就是用for循环去创建一批怪,但是这样每次创建一个怪,都要new一次,这样明显的是不 ...
很高兴又在每天的这个时候可以学习了,今天和大家分享一下我刚学习的设计模式工厂模式: 今天这个事例使用游戏里面的思想去做的,希望大家有兴趣。 工厂模式定义: 定义一个创建对象的接口,让子类决定实例化哪一个类,工厂方法让一个类的方法延迟到了其子类。 简单工厂VS抽象工厂: 简单工厂最大的好处在于在工厂中加入了逻辑判断,根据客户端变化动态创建具体的类,对于客户端来说,去除了与具体产品的依赖。 工厂方法模式客户端需要决定实例化哪一个工厂来实现运算类,选择判断问题还是存在的,也就是说,工厂方法将简单工厂方法的逻辑判断移到了客户端,如果你想要增加功能,本来是改变工厂类的,现在变成客户 ...
很高兴又在每晚的这个时候和博友有分享今天的学习成果了,感谢大家一直对Darren的支持,也希望各位博友们能将自己的好文章分享出来,在此Darren只是抛砖,希望大家不要吝啬自己的学识,江海之大,汇集于河流。不多说了,直接进入主题。 先介绍大力模式的定义: 为其它对象提供一个代理来控制对这个对象的访问。 定义是不是挺简单的? 下面送上代理模式的结构图 这个图也不难,大家一看都会看明白 下面来讲一下代理模式的应用,当我看到这一块的时候我大吃一惊,没想到一个小小的代理模式竟然有如此神通 第一:远程代理 为同一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同 ...
各位博友晚上好,又到了每天和大家分享学习成果的时候了,前几天一直在学习设计模式中的3大原则:单一职责,开放封闭,依赖倒转原则,今天终于走上正路开始学习装饰模式l了,闲话少说,先来介绍一下装饰模式: 定义:动态 ...
各位博友晚上好,又到了晚上的这个时间,感谢大家一直对Darren博客的支持,希望这篇文章对你有所帮助: 这几天一直在看设计模式:简单工厂模式,策略模式,单一职责原则,开放封闭原则,今天我学习了依赖倒转原则,再此和大家分享一下学习心得。 抽象不应该依赖细节,细节应该依赖于抽象。说白了就是针对接口编程,而不是针对实现编程。 依赖倒转原则: 高层模块不应该依赖与低层模块,两个都应该依赖抽象。 抽象不应该依赖细节,相反细节应该依赖于抽象。 在这里我们还要顺便讲一下里氏带换原则 定义:子类型必须能够替换他们的父类型。只有当子类可以替换掉父类,软件单位的功能不受到影响时,父类才能真正被复用 ...
亲爱的博友们,感谢来到Darren的博客 最近一直很忙,今天抽空开了一下开放封闭原则,再这里和各位分享一下学习心得: 开放封闭原则:软件实体(类,模块,函数)等等,对于扩展是开放的,对于修改是封闭的。 对于程序设计而言,怎么的设计才能面对需求的改变却可以保持相对的稳定,从而可以使得系统可以再第一个版本的基础上不断的推出新版本呢? 答案是在程序设计的时候使用开放封闭原则。 但是设计的同时,绝对对修改的关闭是不可能的,无论模块是多么的封闭,都存在一些无法对之封闭的变化,既然不可以完全的封闭,设计人员必须对他设计的模块应该对哪种变换的封闭做出选择,他必须猜测出最有可能发生变换 ...
很高兴又在每天的这个时间和大家一起分享自己的学习见解,今天我看了一下大话设计模式里面的单一职责原则,现在就跟大家一起分享一下自己的学习成果: 单一职责的定义: 就一个类而言,应该只有一个引起它变化的原因。 ...
首先新建一个基于Sigle view Application的项目,名为GestureTest;我的项目结构如下: 往viewController.xib文件里拖动一个imageView,并使覆盖整个屏幕,改动属性为: viewController.h文件: #import <UIKit/UIKit.h> @interface ViewController : UIViewController{ IBOutlet UIImageView *imageView; } @property (nonatomic,retain)IBOutlet UIImageVi ...
最近一直在抽时间研究设计模式,之前对设计模式也有一定的了解,但是都没有平心静气的去研究过,只是了解了一些皮毛,最近打算再深入研究一下,重新打开了设计模式的数据,对之前的疑问一个个的刨根问底,今天看了简单工厂模式和策略模式看的人有点小晕,两个的大概思路没有怎么变,都是通过多态去减少代码的耦合度,怎么看两个都是如出一辙,最后终于找到了两个的本质区别,在此和大家分享下: 先上代码: 简单工厂模式: //抽象类 abstract class AbsClass { //抽象方法:提供一些列的算法操作 public abstractvoid acceptCash(string org); ...
发布新游戏:三国记-乱世群雄 一,关于引擎: 本游戏是用鄙人新开发的flash脚本引擎Legend0.12制作而成,该引擎完全脱离光荣原版引擎,关于引擎Legend0.1版的下载和使用方法, 请看这里http://blog.csdn.net/lufy_legend/article/details/6889424 目前引擎的剧本编辑器仍在制作中,希望下次发布新游戏的时候,下次引擎更新时会提供给大家。 二,关于游戏: 本游戏是一款以三国题材为背景的战旗游戏,本次是游戏的第三次更新, 第一次发布为黄巾之乱,第二次发布为特殊版本---经典战役版。
Global site tag (gtag.js) - Google Analytics