自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

heguodong的专栏

寂寞的空间

  • 博客(50)
  • 资源 (5)
  • 收藏
  • 关注

原创 DevExpress报表设计之表格

先看看效果  再看下设计器里的效果表格报表的关键设置是PageBreaker,由它来确定如何分页和分组,位置放置在黑线的位置,它最关键的属性是FormattingRules  如上面的设置,表示每10行一页,这里用的数据源是DataSet,用其他数据源还不清楚怎么设置. 表格的样式由Styles确定,其中EventStyle代表基数行的效果,OddS

2012-05-28 22:28:35 7100 2

原创 关于linq的分组查询语法

[太原]杨治理(346048058)  20:56:07怎么分组 求出每次列车 历时 起始站 终点站 [太原]杨治理(346048058)  20:57:21例如:K130,齐齐哈尔,长春,历时[江苏] Tim (107770540)  21:06:27var query=from t in db.TableA          group t by t.ID into

2012-04-25 21:11:58 1069

原创 一段关于正则表达式的交流

[大连]Chris(14197232)  18:09:55有没有正则比较熟的,${SETTING}这种表达式用正则应该如何写[上海]苗苗(491808539)  18:10:25(来自手机QQ: http://mobile.qq.com )  [怀化]英界尔(32354456)  18:10:25规则是什么啊?[大连]Chris(14197232)  18:11:44

2012-04-23 18:16:32 450

原创 微软企业库--Policy使用Login Handler

先看如下代码        publicvoid LogMessage()        {            Console.WriteLine("LogMessage.......................");        }                internalstaticvoid Testlog()        {

2012-04-20 07:21:57 544

原创 微软企业库--Policy使用Exception Handler

先看如下代码        public void ThrowException()        {            Console.WriteLine("ThrowException.................");            throw new NotImplementedException();        }

2012-04-19 20:21:59 471

原创 微软企业库--Policy包含多个MatchingRule

一个Policy对应多个Matching Rule的情况下,我原来以为是OR的关系,经过测试实际上是AND的关系,就是需要这多个匹配规则同时满足才执行该Policy,如以下代码:          [AttributeUsage(AttributeTargets.Method)]         public class TraceAttribute:System.Attrib

2012-04-19 19:53:23 641

原创 微软企业库日志-系统日志

日志记录模块最直接的就是使用系统日志,看如下代码        public static void TestSystemLoging()        {            LogEntry log = new LogEntry();            log.Message = "测试Loging......";            log.Categor

2012-04-18 22:28:13 2518

原创 微软企业库异常处理-CustomHandler

自定义异常机制可以让我们自行定义异常的处理Handler,如下定义: 文本代码如下    [ConfigurationElementType(typeof(CustomHandlerData))]    public class MyExceptionHandler : Microsoft.Practices.EnterpriseLibrary.ExceptionHandl

2012-04-17 22:39:26 1361

原创 微软企业库异常处理-ReplaceHandler

ReplaceHandler我感觉和WrapHandler差不多,区别只是WrapHandler会抛出新类型的异常,而ReplaceHandler只会抛出原来类型的异常,看下面代码        public static void TestReplaceHandler()        {            try            {

2012-04-17 22:25:31 774

原创 微软企业库异常处理-WrapHandler

有时候我们希望把程序里捕获的异常进行包装后重新抛出另一个异常,这样的理由很多,比如原来的异常里带有敏感信息,必须进行清除,或者希望抛出一个对客户调用方更加友好的异常信息等等,这种情况下应该使用WrapHandler来处理,下面来演示一个具体过程:        public static void TestWrapHander()        {            try

2012-04-17 22:03:58 766

原创 微软企业库5.0-面向切面AOP(PolicyInjection)学习记录 --控制CallHandler的执行顺序

前一例子演示了自定义属性匹配规则和自定义拦截,现在架设我还需要再进行一次拦截,针对操作询问用户是否要取消方法调用,这样把与用户交互相关的代码也可以抽取出来,否则假设    public class Person : IPerson{        public void Shout(string aa)        {          //这个方法很危险,会修改

2012-04-14 16:52:01 690

原创 微软企业库5.0-面向切面AOP(PolicyInjection)学习记录--自定义属性匹配来拦截方法

--自定义属性匹配来拦截方法    面向切面关注将代码的业务流程和其他辅助流程分开解耦和,使我们写业务代码时不再关注之外的逻辑,比如定义一个人(person),具有咆哮的行为(Shout),有时候为了调试跟踪实现而输出一些内容,如下:    public interface PersonBase    {        voidShout(string aa);

2012-04-14 10:45:55 1457

转载 不错的好文章

微软企业库:这是EnterLib PIAB的BUG吗?《EnterLib PIAB深入剖析》系列博文汇总《Enterprise Library深入解析与灵活应用》博文系列汇总 EnterLib PIAB又一个BUG?EnterLib PIAB又一个BUG?[续]——这是一个致命的BUG VS集成与VS集成的若干种代码生成解决方案[博文汇总(共8篇)] htt

2012-04-13 19:32:13 405

原创 OOD沉思录 之 类和对象的关系--包含关系4

4.9 在实现语义约束时,最好根据类定义来实现。但是这经常会导致泛滥成灾的类,在这种情况下约束应当在类的行为中实现,通常在类的构造函数中实现,但不是必须如此。    还是以汽车为例,我们看汽车的定义,为了集中注意力,先只关心汽车的发动机  class 汽车 { 汽车(发动机 para) { m_发动机=para;

2012-03-23 23:28:31 872

原创 OOD沉思录 之 类和对象的关系--包含关系3

4.7 类包含的对象数目不应当超过开发者短期记忆数量,这个数目通常应该是6左右 4.8 让系统在窄而深的包含体系中垂直分布    假设有如下两份菜单:    正餐--->甜瓜        --->牛排        --->土豆        --->豌豆        --->玉米        --->馅饼    或者    正餐--->甜瓜

2012-03-21 19:19:02 809

原创 OOD沉思录 之 类和对象的关系--包含关系2

4.6 尽量让类中定义的每个方法尽可能多地使用包含的对象(即数据成员)    这其实就是高内聚的翻版强调。如果每个类的情况并非如此,那很可能是这一个类表示了两个或更多的概念,记住一个类只应该表示一个概念。    最明显的情况就是类的一半方法使用了一半的数据成员,而另一半方法使用了另一半的数据成员,那么这个类就应该一分为二。    我们假设一个澡堂,有VIP客户和普通客户,各自有不同的服

2012-03-21 13:08:28 789

原创 OOD沉思录 之 类和对象的关系--包含关系1

4.5 如果类包含另一个类的对象,那么包含类应当向被包含的对象发送消息(调用方法)。    也就是说,所有的包含关系都应当是使用关系。    如果不是这样,那么包含的类有什么用处呢?当然,面向过程的开发人员会想到可能有一个Get方法供其它类使用这个包含的对象,那么按照“数据隐藏原则”,为什么不让使用包含类的类直接包含被包含的这个对象呢?包含一个对象一定是需要使用它才包含。    比

2012-03-20 22:53:18 1179

原创 OOD沉思录 之 类和对象的关系--使用关系原则

4.1 尽量减少类的协作的数量,即减少使用者和被使用者的数量。      协作意味着一定程度的耦合,但是完全没有协作的类也是没有意义的,最多只能作为一个库使用。      通过抽象,依赖接口,可以最大程度减少依赖的实现类,对使用者来说,只看到接口的依赖,而具体的实现的依赖可以通后后期绑定来配置依赖关系。      如 菜单----〉牛肉             ----〉羊肉

2012-03-20 07:18:12 578

原创 OOD沉思录 之 类和对象的关系--使用关系

使用关系对象A的方法MethodA使用了B的方法MethodB,则表示A对B存在使用关系使用关系的最关键问题在于,A如何找到B,存在6种方案方案一:      A包含了B,B作为一个成员定义在A的类中,那么在MethodA中可以直接调用B.MethodB()      如汽车可以包含车轮。      但是汽车需要加油,那么就需要调用"加油站B.加油()"

2012-03-19 21:32:35 670

原创 《The Design of Design》之 需求、罪念以及合同(合同)--《人月神话》作者之力作

任何在项目伊始就规划所有的可能需求之企图都会落败,并以客观的延误告终。-Pahl,Beitz 《Engineering Design》关于合同:      先在合同上把价格让步,然后等合同上的需求变化时再好好抬价。您有这体会吗?      希望需求,目标和约束条件早点确定下来,是形成合同的最佳需求。每个人心里都很清楚,在实施过程中,需求一定会发生变化的。合同最多只能描述几个概要的需求,

2012-03-19 18:19:43 428

原创 《The Design of Design》之 需求、罪念以及合同(罪念)--《人月神话》作者之力作

摘抄片段:假定:     1,客户从不索求无度,非常乐意为他的架构师和建筑工人的专业技能和辛勤劳动支付合理的费用。     2,客户聘请的代理人,渴望用自己的才华和技能帮助客户发现其真正需求所在,并竭诚服务。     3,承包方充分理解并不折不扣地按照其要求做事,并在预算和工期范围内依照最佳性价比生产高质量的产品。     4,所有的项目成员都是诚实、本分的,并且他们之间的沟通

2012-03-18 10:55:05 410

原创 《The Design of Design》之 需求、罪念以及合同(需求)--《人月神话》作者之力作

任何在项目伊始就规划所有的可能需求之企图都会落败,并以客观的延误告终。-Pahl,Beitz 《Engineering Design》 关于需求:      项目伊始,有多少需求是有技术人员参与的?有多少需求是市场人员提供的?。。。      现实中,大部分此类需求只是客户那边的管理层,各自为阵提出自己的想法。而这些想法很多只是为了表明自己分量,现实自己工作多么重要,这是我亲身

2012-03-16 13:35:52 767

原创 关于蜗牛游戏公司笔试

贴文:假设某网络游戏中的积分排行榜:昵称 等级(整数,取值范围1~100) 积分(整数,取值范围0~10亿)张三 99 212100021李四 98 212100021王五 98 112109766... .... ........排序规则:以积分值降序排列,同样积分的情况下等级高的排在前面榜的大小:在内存中只保存前N名玩家的数据,N的大小在程序初始化时传入要求

2012-03-15 21:30:18 1157

原创 关于九连环

以前回复一个帖子,是关于9连环解法的问题,看过《计算机程序设计艺术》的人都知道,这个问题的是中国的古老游戏,其解法就是“格雷二进制”的描述。这个帖子如下: 九连环是一种传统的中国玩具,它有九个连在一起的环河一根长棒组成。一开始,九个环都装在榜上,由于其特殊的构造,只能按以下规则从棒上取下或装上环:1)所有环只能从棒的一端取下。将环按距离这一端的远近从近到远依次编号为1~9号环。无论

2012-03-15 21:19:09 1022

原创 收集网站信息的代码骨架

前段时间应群友的要求,写一个从网站收集信息的代码框架1,要求并行2,网址可以变化3,从一个网址的具体搜索过程她自己有线程的代码4,要求.Net考虑了下,写了如下代码,寥寥几行,感觉已经足够 public static class PandearCol { public static IEnumerable GetUrls() //这个方法负

2012-03-15 17:43:56 520

原创 OOD沉思录 之 面向动作与面向对象2--避免泛滥成灾的类

3.7 从设计中取出不需要的类    只有Get/Set方法的类不算是一个必要的类,Get/Set方法也不算是有意义的行为。这种类降级为属性更加合适。3.8 去除系统外部的类    如果一个类只调用系统领域的方法,而系统没有向该类调用,则可以认为这个类并不属于系统。可能只是系统的使用者,我们没必要去为此建模。    创建此类时应该问一问“这个类在系统内做什么事情?”3.

2012-03-15 07:27:21 506

原创 OOD沉思录 之 面向动作与面向对象1--避免全能类

面向过程的软件开发通过非常集中化的控制机制来分解功能,在程序设计中表现就是大量的条件判断,深层次的循环嵌套等。这种模式下,我们可以通过分析方法的参数,局部变量及其访问的全局变量来得到方法对数据的依赖性,但是我们只有分析整个项目代码才能得到数据对方法的依赖性。      面向对象的软件开发主要关注在非常分布的环境中分解数据以及同数据相关的功能。通过高内聚(数据与其相关行为的高度融合)和低耦合(实

2012-03-14 21:04:47 792

原创 《The Design of Design》之 对理性模型的批判--《人月神话》作者之力作

Wiston Royce,瀑布模型的提出人,他提出瀑布模型的本意就是用来批判的,但是现实和他闹了个笑话,多少年了大量的设计师把它奉为圣典。更加可恶的是,我们的教科书上曾经也把他视为珍宝,这些教育工作者,叫兽砖家们,该醒醒了,舔人屁股的时候先看下有没有肠炎。。。:)理性模型强调在设计的第一阶段就是把需求的内容以完整的设计树来表达,而这是不可能的。首先,我们的项目的初始阶段并不能真正知道需

2012-03-13 22:10:24 487

原创 .Net关于几种格式化字符串

在.Net中将一个对象格式化为字符串有以下方式:1,String.Format(string format, params object[] args)以及几种变形     这种格式化要求args能实现了IFormattable接口2,string Format(IFormatProvider provider, string format, params object[] args)

2012-03-13 19:28:25 1501

原创 超大数字的操作

问题来源:http://topic.csdn.net/u/20091209/16/41034134-2088-485b-9e16-f46e6574cd20.html?seed=1247131905&r=61791844#r_61791844怎么求2的n次方的最高位和次高位(十进制)? 如,2^4=16,最高位是 "1",次高位是"6"。 1,n可以不限定在32或者64之内,如

2012-03-13 12:37:53 1135

转载 GUI 博士的忠告:切勿锁定类型对象!

http://user.qzone.qq.com/32354456/blog/1260362886

2012-03-13 12:35:51 260

转载 windows消息机制细节

http://user.qzone.qq.com/32354456/blog/1259693888

2012-03-13 12:35:19 260

原创 Dispatch接口事件的纯手工实现(C++ COM)

初试化过程: try { CLSID clsid; HRESULT hr=::CLSIDFromProgID(L"MSWinsock.Winsock",&clsid); if(FAILED(hr)) throw "获得对象的CLSID失败"; hr=::CoCreateInstance(clsid,NULL,CLSCTX_INPROC_SER

2012-03-13 12:33:47 2423

转载 通过用 .NET 生成自定义窗体设计器来定制应用程序

http://user.qzone.qq.com/32354456/blog/1322921518

2012-03-13 12:25:28 363

原创 面向对象设计的 11 原则

头五项原则是关于类设计的,它们是:  ◆ SRP,单一职责原则,一个类应该有且只有一个改变的理由。   ◆ OCP,开放封闭原则,你应该能够不用修改原有类就能扩展一个类的行为。  ◆ LSP,Liskov替换原则,派生类要与其基类自相容。   ◆ DIP,依赖倒置原则,依赖于抽象而不是实现。   ◆ ISP,接口隔离原则,客户只要关注它们所需的接口。 另外的六项是关于包的设

2012-03-13 12:24:17 345

原创 《The Design of Design》之 理性模型--《人月神话》作者之力作

理性模型        最原始也是最符合设计师第一感觉的设计方式,因为理性,所以叫理性模型:);        设计的理论即一般的搜索理论,对象是巨大的组合空间.目标:        某人想要建立一个海滨小屋,以享用面向大海的一块海滨场地的海浪.必要条件:       海滨小屋应该足够兼顾以抵御飓风;       具备至少14个人躺卧和就座的空间;       为宾

2012-03-13 12:23:04 523

原创 OOD沉思录 之 继承

一,继承只应被用来为特化层次结构建模   实际上也就是要满足LSP原则,水果类<-榴莲的继承是特化二,派生类必须知道他们的基类,基类不应当知道他们的派生类  复用的前提三,基类中的所有数据都应该是私有的,不要使用保护数据(方法不在此原则约束下)   数据封装,物体的重量看起来可以用一个保护数据来表达,而不是get/set方法,但是考虑其他星球上,那么重量的应该实现为质量

2012-03-13 12:22:30 522

原创 OOD沉思录 之 导引

OOD沉思录 之 导引  一个对象一定会有如下4个属性:     1,它的身份标示,可能只是它在内存中的地址;     2,它的类的属性(通常是静态属性)和这些属性的值(通常是动态的);     3,它的类的行为(从实现者的角度看);     3,它的公开接口(从用户的角度看). 2.1 所有数据都应该隐藏在它所在的类内部.    考虑最简单的点Point类(X,Y

2012-03-13 12:21:44 465

原创 一个元编程的例子

写一个函数,用递归函数完成以下运算:sum(n) =  1 – 1/2 + 1/3 – 1/4 + … -(1/n)*(-1)n        (其中n>0) 函数原型:         float sum(int n); 函数参数:n为正整数。 函数返回值:相应于给定的n,右边表达式运算结果。提示:你可以使用递归表达式: sum(n) = sum(n-1) -(1/n)*(-

2010-06-20 23:58:00 624

原创 找出两个字符串中最长的相同的字符串

问题:请写一个函数,找出两个字符串中最长的相同的字符串。比如: 字符串“likeyou”和“Lookyou” 最长的相同字符串是“you” 怎么写?来源:http://topic.csdn.net/u/20100610/17/94c675b2-0ad9-43cd-b091-130ae6091d98.html假设str1= “abcde”      Str2= “cdefgd

2010-06-11 03:28:00 4814 6

FizzBuzzWhizz_1

ThoughtWorks测试 你是一名体育老师,在某次课距离下课还有五分钟时,你决定搞一个游戏

2014-04-29

通用嵌入式软件测试平台

关于测试,看了一遍,感觉有很有道理,特别是关于测试的自动化描述

2014-03-11

DevExpress报表学习

详细学习了DevExpress报表的各种功能 编译环境:VS2010 ,Devexpress 10

2012-06-12

CodeDom模型学习笔记(全记录)

Word版本,详细记录CodeDom的细节,望一起交流

2010-04-09

窗体设计器(winform窗体)

.Net设计器,目前完成了窗体设计器,可以编译运行窗体,可以保存打开,基于微软的设计期模型,欢迎使用,需要.Net FrameWork3.5环境

2010-04-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除