一颗不安分的创业心
摘要: 抽象工厂模式即工厂方法模式的集合。工厂方法得到一种产品,而抽象工厂模式得到一系列产品。同样先来UML来个总体认识:一、抽象工厂类抽象工厂是GameFactory,它生产两种产品(英雄,建筑。当然包括更多,本文只给出两种)。 ///<summary>///抽象工厂///</summary>publicabstractclassGameFactory{publicabstrac... 阅读全文
posted @ 2009-07-26 22:57 pangxiaoliang[北京]流浪者 阅读(292) 评论(0) 推荐(0)
摘要: 工厂方法,特征就是“方法”上,由子类实现父类的抽象方法,把创建产品的责任转移到子类中。先上UML图:还是以Dota游戏为例,我们的工厂是Dota中创建模型的工厂,而产品则是不同的模型。首先我们要明确需求,Dota中需要创建N中Model,包括英雄、野怪、树木等那么我们的产品类如下:[代码]细心的Dotaer已经看到,产品父类包含一个接口ISkill,这个代表技能。技能的接口... 阅读全文
posted @ 2009-07-26 22:55 pangxiaoliang[北京]流浪者 阅读(192) 评论(1) 推荐(0)
摘要: 发表了两篇文章,没有发到首页上,没想到访问量这么低,汗啊..........不过既然要写还是写完吧,看来Dota的队伍不够大呃。当作我自己总结了这篇是简单工厂,实际上简单工厂不是Gof的23个设计模式一员,但是还是有必要说说滴,先来个UML图吧:设计模式的目标是解耦,把变化的部分各类来,本次Dota的例子是选择游戏类型的命令(-ap,-ar,-rd等等)。首先我们有命令对象,如下所示:[代码]RD... 阅读全文
posted @ 2009-07-26 22:53 pangxiaoliang[北京]流浪者 阅读(277) 评论(0) 推荐(0)
摘要: 话说昨日和老婆吵架,被老婆关在门外,数次求进,无果。无奈,暂避于同租同学小王之室,无聊中突想起去年面试时在方正公司的面试上机题——N×N矩阵螺旋打印输出 阅读全文
posted @ 2009-07-24 12:45 pangxiaoliang[北京]流浪者 阅读(3251) 评论(46) 推荐(3)
摘要: Winform控件分为用户控件和自定义控件,用户控件比较简单,本文讨论的是自定义控件。MS控件,无论是Winform控件还是Webform控件,无论是用户控件还是自定义控件,都有着相同的设计思想。1)对于自定义控件来说:Winform控件的UI显示是靠OnPrint方法,Webform控件的UI显示是靠RenderXXXX方法。2)对于自定义控件和用户控件来说:Winfrom控件和Webform控... 阅读全文
posted @ 2009-06-28 16:49 pangxiaoliang[北京]流浪者 阅读(1434) 评论(2) 推荐(0)
摘要: 多线程,一个古老的话题,今天我来聊下最基本的线程,UI线程和后台线程。在后台线程中直接操作UI控件会出现异常(线程间操作无效:从不是创建控件“XX”的线程访问它)。怎么解决这个问题那?关键点在代理和InvokeRequired属性,Winform的UI(窗口)代码如下:[代码]为了能在后台线程中操作UI线程,我们的MainForm继承了公共接口IFormWorkThread... 阅读全文
posted @ 2009-06-28 16:49 pangxiaoliang[北京]流浪者 阅读(667) 评论(0) 推荐(0)
摘要: Window服务比较简单。新建Windows服务就可以编写,代码如下:[代码]此服务用来记录服务启动时间,很简单:)配置Windows服务就有些复杂了。1)在项目中添加新项Installer,并且拖入两个对象(ServiceProcessInstaller对象和ServiceInstaller对象)。2)设置两个拖入的对象:serviceProcessInstaller的Account属性可以设置... 阅读全文
posted @ 2009-06-28 16:48 pangxiaoliang[北京]流浪者 阅读(415) 评论(0) 推荐(0)
摘要: 如果你从前做过asp,php,jsp就会知道,表单真的很重要。现在的aspx实际上基础还是html,下面就aspx代码和展现在客户端的源代码进行比较说明:aspx代码:[代码]aspx.cs代码[代码]客户端源代码:[代码]首先从UI上分析,Panel实际上被解析成div,TextBox实际上被解释为input(type为text),Button实际被解析为input(type为submit)等等... 阅读全文
posted @ 2009-06-28 16:46 pangxiaoliang[北京]流浪者 阅读(1005) 评论(2) 推荐(0)
摘要: 同样,先看下我们的web.config文件:<httpHandlers> <add verb="*" path="*.yy" type="Identify.LandpyHttpHander,Identify"/></httpHandlers>首先提个问题大家见过后缀名为“yy”的文件吗,呵呵,这里实际上是使用了一个小技巧。利用IHttph... 阅读全文
posted @ 2009-06-28 16:45 pangxiaoliang[北京]流浪者 阅读(295) 评论(0) 推荐(0)
摘要: IHttpModle先于IHttphandler处理,我们还是从web.config看起:<httpModules> <add name="LandpyModule" type="LandpyServerControl.LandpyModule,LandpyServerControl"/> </httpModules>IHttphandler的配置如下:<... 阅读全文
posted @ 2009-06-28 16:45 pangxiaoliang[北京]流浪者 阅读(210) 评论(0) 推荐(0)
小豆芽之父