Edward_jie

for you, my Hall of Frame

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年5月15日

摘要: 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。 GoF的“设计模式”是第一次将设计模式提升到理论高度,并将之规范化,本书提出了23种基本设计模式,自此,在可复用面向对象软件的发展过程中,新的大量的设计模式不断出现。一、设计模式和框架 现在,可复用面向对象软件系统现在一般划分为三大类:应用程序工具箱和框架(Framework),我们平时. 阅读全文
posted @ 2012-05-15 18:01 Edward_诺 阅读(14005) 评论(0) 推荐(7)

2012年5月14日

摘要: Observer 与 Subject 互为耦合,但是这种耦合的双方都依赖于抽象,而不依赖于具体。一、观察者模式目的 概述 原理二、 C#中的观察者模式概述 模型与观察者基类 优点三、 事例题目:猫大叫,两只老鼠开始逃跑,主人醒来,宝宝也醒来了并且哭了起来解决方案: 1. 建立模型(目标基类) 2. 建立观察者基类(单行为,多行为) 3. 建立具体目标 4. 建立具体观察者 5. 运行测试一、 观察者模式目的我们都知道解决一个问题有N种解决方式,但在面向对象的设计中如何能做到“高内聚,低耦合”,设计可重用的对象才是我们追求的。在设计过程中,我们经常会接触到一种情况:一个对象的行为引发其它多个对象 阅读全文
posted @ 2012-05-14 23:20 Edward_诺 阅读(24903) 评论(11) 推荐(20)

2012年5月10日

摘要: 单例模式三种写法:第一种最简单,但没有考虑线程安全,在多线程时可能会出问题,不过俺从没看过出错的现象,表鄙视我……publicclassSingleton{privatestaticSingleton_instance=null;privateSingleton(){}publicstaticSingletonCreateInstance(){if(_instance==null){_instance=newSingleton();}return_instance;}}第二种考虑了线程安全,不过有点烦,但绝对是正规写法,经典的一叉publicclassSingleton{privatevola 阅读全文
posted @ 2012-05-10 14:19 Edward_诺 阅读(47962) 评论(4) 推荐(13)

摘要: 一、工厂方法(Factory Method)模式工厂方法(FactoryMethod)模式是类的创建模式,其用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。工厂方法模式是简单工厂模式的进一步抽象和推广。由于使用了多态性,工厂方法模式保持了简单工厂模式的优点,而且克服了它的缺点。在工厂方法模式中,核心的工厂类不再负责所有产品的创建,而是将具体创建工作交给子类去做。这个核心类仅仅负责给出具体工厂必须实现的接口,而不接触哪一个产品类被实例化这种细节。这使得工厂方法模式可以允许系统在不修改工厂角色的情况下引进新产品。在Factory Method模式中,工厂类与产品类往往具有平行的等 阅读全文
posted @ 2012-05-10 13:56 Edward_诺 阅读(1621) 评论(0) 推荐(0)

摘要: 工厂模式专门负责将大量有共同接口的类实例化。工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。工厂模式有以下几种形态:简单工厂(Simple Factory)模式工厂方法(Factory Method)模式抽象工厂(Abstract Factory)模式一、简单工厂(Simple Factory)模式Simple Factory模式根据提供给它的数据,返回几个可能类中的一个类的实例。通常它返回的类都有一个公共的父类和公共的方法。Simple Factory模式实际上不是GoF 23个设计模式中的一员。二、Simple Factory模式角色与结构:工厂类角色Creator 阅读全文
posted @ 2012-05-10 13:54 Edward_诺 阅读(1995) 评论(2) 推荐(1)

摘要: 引入人、工厂、和斧子的问题: (1),原始社会时,劳动社会基本没有分工,需要斧子的人(调用者)只好自己去磨一把斧子,每个人拥有自己的斧子,如果把大家的石斧改为铁斧,需要每个人都要学会磨铁斧的本领,工作效率极低。对应Java里的情形是:java程序里的调用者new一个被调用者的实例。类耦合度极高,修改维护烦琐,效率极低。 (2),工业社会时,工厂出现,斧子不再由普通人完成,而由工厂生产,当人们需要斧子的时候,可以到工厂购买斧子,无需关心斧子是怎么制造出来的,如果废弃铁斧为钢斧,只需改变工厂的制造工艺即可,制作工艺是工厂决定的,工厂生产什么斧子,工人们就得用什么斧子。 对应的Java里的情形是.. 阅读全文
posted @ 2012-05-10 13:35 Edward_诺 阅读(28234) 评论(1) 推荐(4)

2012年5月7日

摘要: This issue is seen when Visual Studio 2008 is installed using SMS. While trying to update a web reference (WSDL) the error pops up "The custom tool 'MSDiscoCodeGenerator' failed" while building projects"While facing this issue it is also seen that the Tool Box is there but its 阅读全文
posted @ 2012-05-07 16:16 Edward_诺 阅读(978) 评论(0) 推荐(1)

摘要: windows mobile已经没落,但由于公司需要,还要进行一个新平台的学习,symbian,meego,wp7,php一路下来,16个月做了5个平台,学到了皮毛但接触到很多方面和层次的技术知识。windows mobile连接mysql数据库,用webservice作为wm平台客户端和服务端进行远程操作数据库的途径。开发环境不用多说1.vs2008+windows mobile professional 6.0 sdk,具体操作请看本博客中windows mobile标签中有关搭建开发环境的博文。刚开始尝试连接sql server数据库,第一步中遇到的问题,报错是.net compact 阅读全文
posted @ 2012-05-07 15:13 Edward_诺 阅读(2824) 评论(3) 推荐(4)

2012年4月25日

摘要: private void grid_show_perm(int status) { string sql = "";//从视图中查询一定的数据,并且赋值给一个中间变量的表aTable sql = "SELECT ID,姓名,注册时间,状态,客服人员,预算,户型结构,面积,派单公司,房屋类型,下次联系时间 FROM view_assess_client where ID in (select clientId from clientinfo where client_status = " + status + " )"; DataTab 阅读全文
posted @ 2012-04-25 13:10 Edward_诺 阅读(446) 评论(0) 推荐(0)

2012年4月12日

摘要: firefox+firebug可以随时调试页面样式,下载firebug插件的时候直接将zip安装包拖到firefox的应用栏目里面就可以安装了,重启firefox就可以使用了。 阅读全文
posted @ 2012-04-12 11:05 Edward_诺 阅读(192) 评论(1) 推荐(0)