Fork me on GitHub

2012年9月25日

摘要: 是攻击还是逃走?—— 状态模式(State Pattern)简介摘要:某游戏有以下规则:1.玩家距离敌人比较远时,敌人会看不见玩家,按既定路线巡逻。2.玩家距离敌人比较近时,敌人会发现玩家并进行攻击。3.当敌人被杀得差不多,只剩下一两个时,敌人会逃走。4.敌人可能会隐藏起来伏击玩家。…… 请你用状态模式设计这些敌人!作者:张传波www.umlonline.org/school/作者自述:在高中时已经很喜欢coding,可惜没有考上计算机相关的大学专业,但仍然偏执于写程序,毕业后做了几年的程序员,后来成为项目经理直到常务副总。熟悉的语言有Basic、VB、C#,一直遗憾的事情是没有花时间去精通C 阅读全文
posted @ 2012-09-25 17:57 HackerVirus 阅读(233) 评论(0) 推荐(0)
摘要: Enterprise Solution 支持用户自定义查询(query and lookup),并把查询query定义为一个标准功能,查找lookup用于返回查询的值给数据输入窗体。先配置数据库连接字符串,使用公司注册来注册一个新的数据库连接。再到查询设计器中,选取相应的对象,设计关联,Web框架可以解析此查询,变成一个页面功能。在客户页面中,添加TriggerBox,它的后面会显示一个小图标,以查于查找数据 <ext:TriggerBox ID="tbxCustomerNo" ShowLabel="true" Readonly="fal 阅读全文
posted @ 2012-09-25 17:56 HackerVirus 阅读(331) 评论(0) 推荐(0)
摘要: 题目:下列数据放在一个List中,当ID和Name都相同时,去掉重复数据IDName1张三1李三1小伟1李三2李四2李武------------------------------------------------------------------------------------------------------------解决这个问题,方法很多,最开始想到的就Enumerable.Distinct方法我们可能经常用的是Distinct<TSource>(IEnumerable<TSource>)用它对数组这一类去重复这里要用Distinct<TSour 阅读全文
posted @ 2012-09-25 11:38 HackerVirus 阅读(147) 评论(0) 推荐(0)
摘要: 在平时的项目开发中,可能有的团队对业务都是用口头在团队里面进行交流,有时程序员的理解跟老大表达的意思不一致,还有其他等等的弊端就不说了。我们知道建筑工人都是按照图纸做事的,同样在软件开发中,我们应该也有这样一份”图纸“,这也就是我们要说的UML,有了它就可以让我们做事统一口径,而从更快的理解业务并完成项目。 可喜的是VS2010已经集成了我们平时最常用的一些UML图,这个系列也准备介绍这5种图。我们从”活动图“说起,平时我们在看prd的时候,经常会看到一些”用例图“和”活动图“,对的,一个好的产品经理这些都是基本功。一:用途 活动图是一种工作流程图,非常容易看懂,非常适合于和用户沟通的一种.. 阅读全文
posted @ 2012-09-25 09:50 HackerVirus 阅读(283) 评论(0) 推荐(0)
摘要: 问题描述:昨天将MVC从3升级到了4,主要是想利用其中的Web Api功能。创建了一个继承自ApiController的控制器,并且跟以前普通控制器一样,构造函数的参数采用Ninject进行依赖注入。之后调用其中某个方法,却发现提示这个控制器没有默认构造函数,经过搜索,发现Ninject目前不直接支持对ApiController的依赖注入,仅仅支持普通控制器(继承自Controller)。解决方法:google了一下,发现有很多文章介绍解决方法,都是如下思路:1.nuget安装Ninject.Web.WebApi包2.在global.asax中设定: GlobalConfiguration.C 阅读全文
posted @ 2012-09-25 09:47 HackerVirus 阅读(244) 评论(0) 推荐(0)
摘要: 1.引言上节介绍了事件持久化,就是事件恢复执行,有时候Timer启动时,时间已经过了很久了,这样的话,事件恢复执行,可能会出现很多,但并不希望它们都出执行,而是有选择性的执行,这就是这节介绍的过滤器EventFilter。2.EventFilterScheduled Timer提供了一个过滤器接口,先来看看接口声明 public interface IResultFilter { void FilterResultsInInterval(DateTime start, DateTime end, List<DateTime> list); }很简单,一个方法,提... 阅读全文
posted @ 2012-09-25 09:46 HackerVirus 阅读(996) 评论(0) 推荐(0)
摘要: 对于ERP中的SOA架构,做了一个简单的模型图来说明一下,前端采用MVP,通过SOA客户端Facade,调用SOA代理,SOA的服务层采用WCF 架构,通过权限认证和分布式缓存机制对不同的服务进行访问。对WCF服务支持的引擎模块有工作流,报表,邮件等。 WCF服务层通过ESB异步通信完成与物理模块的操作。我会在下面的blog中一个一个的说明。这里只是能这个初步的模型图做个说明 以便下一步分解。用于实现 SOA 可伸缩性的企业服务总线企业服务总线 (ESB) 是一个行业概念,其中使用了许多技术进行构建。ESB 是 Web 服务的基础结构,可协调组件之间的通信。简而言之,ESB 是让多个应用程序异 阅读全文
posted @ 2012-09-25 09:45 HackerVirus 阅读(257) 评论(0) 推荐(0)
摘要: MVC在Web开发中的优势(在TDD方面、逻辑与UI的彻底分离)已无需多言,除此之外个人感觉在给UI提供JSON各式的数据也更加方便。但是总体上说,在公司的这次MVC经历最后的感觉还是比较失败。个人记录下来在此做个反思,同时希望和大家一起交流,向大家学习。整体项目截图如下:(图1)首先从以上截图中, 个人就犯错了。从整体架构上来说,项目中的授权部分(Accredit)之前是希望通过AOP的方式进行的,最后和在基础加上的AOP部分就发生了剧烈的冲突。这是一个非常致命的错误!导致只有的AOP上无法进行。接下来的问题,注意体现就是EasyUI上了。1、EasyUI数据绑定EasyUI 在统计数据表中 阅读全文
posted @ 2012-09-25 09:44 HackerVirus 阅读(437) 评论(0) 推荐(0)
摘要: 关键字:C#WebBrowser作者:txw1958原文:http://www.cnblogs.com/txw1958/archive/2012/09/24/CSharp-WebBrowser.html0、常用方法Navigate(string urlString):浏览urlString表示的网址Navigate(System.Uri url):浏览url表示的网址Navigate(string urlString, string targetFrameName, byte[] postData, string additionalHeaders): 浏览urlString表示的网址,并发送 阅读全文
posted @ 2012-09-25 09:43 HackerVirus 阅读(304) 评论(0) 推荐(0)
摘要: 本文结合HBase 0.94.1版本源码,对HBase的Block Cache实现机制进行分析,总结学习其Cache设计的核心思想。1. 概述HBase上Regionserver的内存分为两个部分,一部分作为Memstore,主要用来写;另外一部分作为BlockCache,主要用于读。写请求会先写入Memstore,Regionserver会给每个region提供一个Memstore,当Memstore满64MB以后,会启动 flush刷新到磁盘。当Memstore的总大小超过限制时(heapsize * hbase.regionserver.global.memstore.upperLimi 阅读全文
posted @ 2012-09-25 09:39 HackerVirus 阅读(219) 评论(0) 推荐(0)