模式_Tag标签_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
当前位置:程序员俱乐部 >>Tag标签 >> 模式 >>列表
· DDD~领域服务的规约模式发布时间:2013-12-13
回到目录规约(Specification)模式:第一次看到这东西是在microsoftNLayer项目中,它是微软对DDD的解说,就像petshop告诉了我们MVC如何使用一样,这个规约模式最重要的作用是实现了查询语句与查询条件的分离,查询语句在底层是稳定的,不变的,而查询条件是和具体业务,具体领域有关的,是易变的,如果我们为每一个领域的每一个新需求都写一个新的方法,那就会出现很多重复的代码,不利于程序的最终扩展!下面我们来看一个经典例子一个IOrderRepository的接口... 查看全文
· 设计模式:外观模式发布时间:2013-12-12
设计模式:外观模式外观设计模式(Facadedesignpattern)隐藏了任务内部错综复杂的处理而为我们提供了简单的功能接口。电脑的启动是一个很好的例子。电脑的启动包含CPU启动,内存启动,硬盘启动等等。为了能让用户简便使用,我们添加一个外观,仅仅提供一个简单的接口,来隐藏电脑内部繁琐或者负责的内部处理。1、外观模式的类图2、外观模式的例子//电脑的部件classCPU{publicvoidprocessData(){}}classMemory{publicvoidload(){}... 查看全文
· 模板模式1发布时间:2013-12-12
模板方法模式很常用,其目的是在一个方法中定义一个算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法的某些步骤。概念:定义一个算法的骨架,而将一些实现步骤延迟到子类中。把不变的行为搬到超类,去除子类中重复的代码来体现他的优势。一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。这种标准的模板模式是:父类是一个抽象类,实现了大部分固定的方法,然后有某个核心算法因为当时不好确定,会留给他的子类去实现。具体步骤请看代码:packagecom... 查看全文
· 设计模式之工厂模式--简单工厂发布时间:2013-12-12
packagecom.supan;publicinterfacePerson{publicvoidsay();}packagecom.supan;publicclassChineseimplementsPerson{publicvoidsay(){System.out.println("Iamchinese");}}packagecom.supan;publicclassAmericanimplementsPerson{publicvoidsay(){System.out.println... 查看全文
· java——代理模式发布时间:2013-12-12
1、静态代理由程序员创建或特定工具自动生成源代码,再对其编译。在程序运行前,代理类的.class文件就已经存在了。接口类:packageorg.lazyzhong.test;publicinterfacePeople{publicvoidspeak();publicvoiddoWork();}实现类:packageorg.lazyzhong.test;publicclassManimplementsPeople{@Overridepublicvoidspeak(){System.out... 查看全文
传统编程模型可以采用最经典的状态模式构建状态机,已达到刻画对象生命周期的目的。在这种编程模型中,为了表达一个状态转移需要应用程序员编写下面类似的代码。例如在Android开放源代码中的StateMachine.javaJava代码privateclassHaltingStateextendsState{728@Override729publicbooleanprocessMessage(Messagemsg){730mSm.haltedProcessMessage(msg)... 查看全文
23.3模式讲解23.3.1认识职责链模式(1)模式功能职责链模式主要用来处理:“客户端发出一个请求,有多个对象都有机会来处理这一个请求,但是客户端不知道究竟谁会来处理他的请求”,这样的情况。也就是需要让请求者和接收者解耦,这样就可以动态的切换和组合接收者了。要注意在标准的职责链模式里面,是只要有对象处理了请求,这个请求就到此为止,不再被传递和处理了。如果是要变形使用职责链,就可以让这个请求继续传递,每个职责对象对这个请求进行一定的功能处理,从而形成一个处理请求的功能链。(2... 查看全文
原本有700名员工,估值达10亿美元的Fab.com今年十分困顿。从今年4月份起,公司高层人员接连离开,已经不下10位,包括2011年加入,从Esty挖来的COOBethFerreira,负责挑选商品的联合创始人BradfordShellhammer、CPODavidPaltiel等等;公司缩减各地办事处的规模,德国办公室裁员100人后,再次裁员50人。更糟糕的是,根据调查公司Hitwise的统计,今年Fab.com的流量狂跌75%——2012年9月... 查看全文
· 每天一款设计模式0——概述发布时间:2013-12-10
前些日子忙的焦头烂额,各种乱七八糟的小项目如同走马灯一样轮番上阵,各种的需求不明确及需求变更,各种的只要效率不求质量,搞出来的产品就像憎恶一样东拼西凑丑陋不堪,自己都不想回头去看!最近几天工作不是太忙,重温一下设计模式,洗涤一下自己的心灵,也顺便捡几个项目模拟重构一下。参考书籍只能是经典的GOF的《设计模式》一书... 查看全文
看到很多朋友在写单例,也来凑个热闹,虽然很简单,但是也有很多知识点在单例里面,看看是否能写出点不一样来。单例模式(Singleton)1场景问题1.1读取配置文件的内容考虑这样一个应用,读取配置文件的内容。很多应用项目,都有与应用相关的配置文件,这些配置文件多是由项目开发人员自定义的,在里面定义一些应用需要的参数数据。当然在实际的项目中,这种配置文件多采用xml格式的。也有采用properties格式的,毕竟使用Java来读取properties格式的配置文件比较简单。现在要读取配置文件的内容... 查看全文
热追踪技术可不只是响尾蛇导弹的专利,它还可以有更“亲民”的用途:追踪顾客。从小型精品店到沃尔玛这样的超级市场,这类追踪技术越来越普及了。利用采集到的数据,商家可以判断出顾客的一般移动路线,从而更好地安排商品摆放顺序与位置。在实体店竞争激烈、网上购物兴起的今天,追踪技术带来的一点点改进就足以左右一家商店的沉浮。Alex&AniLLC是一家珠宝店,他们使用了PrismSkylabs公司的软件,软件算法根据安全摄像头拍到的图像判断顾客最爱的行走路线... 查看全文
英文原文:Sentientcode:AninsidelookatStephenWolfram’sutterlynew,insanelyambitiouscomputationalparadigm2002年,出生在英国的科学家、程序员及创业家StephenWolfram的《一种新科学》刚刚发布,其颠覆传统的追求知识方式引发的惊愕、争议与指责就已经铺天盖地。上个月初,他在博客中披露了自己的一个即将完成的新项目,称该项目将会对技术世界乃至于技术以外的世界产生深远影响... 查看全文
问题:有时候我们配置IIS后可能运行提示以下错误:HTTP错误500.23-InternalServerError检测到在集成的托管管道模式下不适用的ASP.NET设置。其中由于在IIS7的应用程序池有两种模式,“集成模式”和“经典模式”。经典模式则是我们以前习惯的IIS6的方式。如果使用集成模式,那么对自定义的httpModules和httpHandlers就要修改配置文件,需要将他们转移到<modules>和<... 查看全文
延迟加载是一个很大的诱惑,可以达到一些比较好的效果,比如:1、在实体框架中,由于关联数据的数量和使用时机是不确定的,通过延迟加载,仅在使用的时候去执行关联数据的查询操作,减少无谓的数据查询操作,可以降低单次数据查询执行的时间,提升系统的性能。2、在一个插件平台中启动平台时只加载必需的程序集,当执行到具体插件时再加载插件相关的程序集,仅在需要的时候加载资源,可以减少插件平台的启动时间,使内存的占用更合理些。延迟加载可以使资源的占用更加合理,并提升一定的性能,当然也有一些例子来说明延迟加载的坏处... 查看全文
受不了32位的小内存,今天启动的时候还是选了win8.1,一下子感觉好多了,但是打开程序就是连不上oracle,原来程序在编译的时候选择的是AnyCpu平台,所以在64上默认64位模式运行,需要配套的64位oracle才能运行,我在电脑上装的的10g的32位版本,上oracle官网已经不提供10g的64版本下载,所以没办法,只有两个办法:1、让开发人员再生成个32版本的,2、强制程序运行在32位Clr上。好了这时候强大的CorFlags登场了打开vs命令窗口... 查看全文
定义一个软件实体(如类、模块、函数)应当对扩展开放,对修改关闭。定义解读在项目开发的时候,都不能指望需求是确定不变化的,大部分情况下,需求是变化的。那么如何应对需求变化的情况?这就是开放-关闭原则要谈的。开放-封闭原则的思想就是设计的时候,尽量让设计的类做好后就不再修改,如果有新的需求,通过新加类的方式来满足,而不去修改现有的类(代码)。那么在实际的项目开发中,是否能做到绝对的对修改关闭呢?答案一般也是否定的。既然这样,那么就要求我们在开发前,去找出变化点,然后针对变化点构造抽象... 查看全文
我现在在QCon全球软件开发大会[上海站]2013的现场,非常有幸能够采访到微信公共帐号人生如戏的主创,Roy厉。那我想,其实我非常了解一下你是如何介绍你自己,我看过你非常多的知乎上的一个问答,都非常神奇。然后我也看到你在介绍自己时说是什么加拿大桥牌青年队会员,那我想对你自己来讲你有一个比较好的完整的一个介绍。Roy厉:是这个样子的,我也一直在想说,这个会场上有很多人也不认识我嘛,我应该怎么介绍自己呢?首先我的名字叫Roy厉,那么我叫别人喜欢叫我厉哥,但其实这个东西不是我的本意... 查看全文
· 看看灾难中 UGC 模式演绎的角色发布时间:2013-12-02
在灾难发生时,连手机基站随时都会出现过载,但互联网在大多数情况下,却可以保持顺畅运作。就像今年的波士顿马拉松炸弹袭击案,一名母亲在电话通讯瘫痪的情况下,通过Twitter成功找到了女儿。这是UGC(User-GeneratedContent用户生成内容)的魅力。和互联网进入Web2.0时代相似,如果将救援工作视为一个行业的话,那么灾难救援也要进入2.0时代。只要合理利用,灾难中由民众产出的零散讯息,也会发挥巨大作用。以GoogleFinder为例... 查看全文
阅读目录:1.开篇介绍2.Model与View的使用关系(数据上下文DataContext与View呈现)3.Metadata元数据驱动设计(如何使用中间层元数据来驱动最终的行为)4.ASP.NETMVCModelMetadata(ModelMetadata元数据如何支撑Model与View之间的组合关系)1】开篇介绍这篇文章让我们一起来学习一下有关Asp.netMvc中的Mode元数据的相关设计和围绕元数据的一些其他对象模型,他们是如何通过彼此协调来支撑起一个灵活的界面编程接口... 查看全文
两个轮的摩托遍地都是,前一轮后两轮的摩托在手撕鬼子的神剧中也见识过。但你见过前两轮后一轮的摩托么?这是日本厂商川崎(Kawasaki)新近推出的一款概念版电动摩托(JVehicle),它采用了非常特别的前二后一的三轮布局,你可能在一些动漫作品中看到过,但是川崎有可能把它真的制造出来。该摩托车目前还处于概念阶段,川崎也没有更多的信息披露。从概念图看,它是前二后一的布局,并且后轮较宽,前轮则较窄。——为什么这样设计呢?这是因为,这辆摩托有两种驾驶模式... 查看全文