自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

转载 设计模式笔记——策略模式(Strategy Pattern)

一、概述策略模式:定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法变化独立于使用算法客户。--摘自《Head First设计模式》二、策略模式:我们用《Head First设计模式》一书中的例子分析一下为什么我们采用策略模式解决问题。现在我们要开发一个鸭子的游戏,开始鸭子有游泳,叫,玩等行为。我们用继承和多态来实现不同的鸭子执行不同...

2013-12-05 15:48:00 115

转载 C#基础笔记——集合和LINQ

一、概述:  软件开发过程中不可避免会用到集合,C#中的集合表现在数组和若干集合类。不管是数组还是集合类都有若干优点。这样如何使用集合是我们开发过程中不可或缺的技巧。二、C#中集合介绍:在上图中可以看见C#集合分类:集合分为线性和非线性(很少用),这里我们终点介绍线性集合。1. 如果集合的数目固定并且不涉及转型,使用数组效率高,否则就是用List<T&...

2013-11-20 14:42:00 147

转载 C#基础笔记——命名规范

一、概述:对于代码命名我们都不陌生,见名之意是最基本的,但是如何做到见名之意呢,如何做到像自然语言那样清晰的描述呢?下面我们就从.Net基本命名规范说起。二、基本命名规范1. 以<Company>.<Component>.<Layer>为命名空间命名:  如:CTIL.CRMEasy.Business,这里的CTIL是公司,CRM...

2013-11-14 22:09:00 165

转载 C#基础笔记——语言基础

一、概述:C#基础我想每一个.NET程序猿都学习过,但是如何使用才是最优方法呢?往往这些基础知识被大家忽略。怎样操作字符串?如何进行类型转换?什么是克隆?为什么需要HashCode?今天我们就来系统的回顾一下基础知识。二、实现:1. 字符串拼接下面我们看一下下面代码:string a = "t";string b = "e";string c = ...

2013-11-10 15:17:00 98

转载 C#基础笔记——代码整洁

一、概述:  没有参加武斌老师组织的BJDP之前对代码质量的理解只限于实现功能和自动调整格式。在BJDP活动中,武斌老师和王老师对代码要求到极致,甚至不会多出一个空行,再想想自己写的那些热带雨林式的代码简直是糟糕透顶。王老师的说中曾经提到过代码的效率的高低也行和程序员的实际经验职业技能有关系,但是不整洁代码确实工作习惯和态度问题,今天开始从代码整洁做起吧!二、下面我们总结一下编程...

2013-11-06 22:00:00 203

转载 C#基础笔记——序列化(Serialize)和反序列化(NonSerialize)

一、概述序列化是把对象转变成流。相反的过程就是反序列化。哪些场合用到这项技术呢?1. 把对象保存到本地,下次运行程序时恢复这个对象。2. 把对象传送到网络的另一台终端上,然后在此终端还原这个对象。3. 复制系统的粘帖板中,然后用快捷键Ctrl+V恢复这个对象。常用的序列化流有Binary(二进制流),XML,SOAP。二、序列化和反序列化使用事例:这里我们...

2013-11-06 14:05:00 391

转载 C#基础笔记——资源管理

一、概述资源管理什么是C#(或者说是.NET)的资源?简单的说C#的每一种类型都代表一种资源。而资源又分为两类:托管资源:由CLR管理分配和释放发资源,即从CLR里new出来的对象。非托管资源:不受CLR管理的对象,如:Windows内核对象、文件、数据库连接、套接字和COM对象等。如若使用非托管资源可以通过两种方式释放资源:1.通过析构函数(Finalizer)...

2013-11-04 17:28:00 160

转载 C#基础笔记——协变(Covariance)和逆变(Contravariance)

一、概述协变是指返回类型返回比声明的类型派生程度更大的类型,关键字:out。逆变是指方法的参数可以是委托或者泛型接口的参数类型的基类,关键字:in。FCL4.0中支持逆变的常用委托有:Func<in T,out TResult>,Predicate<in T>。二、泛型中协变事例 class Program { ...

2013-11-03 17:41:00 137

转载 C#基础笔记——委托(Delegate)和事件(Event)

一、概述委托首先是一个方法指针。委托也是一个类,当对其进行实例化的时候,要将引用方法作为它的构造方法的参数。事件是为委托施加保护的,它封装了委托类型的变量,使得在类的内部,不管你声明它是public还是protected,它总是private的。在类的外部,注册“+=”和注销“-=”的访问限定符与你在声明事件时使用的访问符相同。二、委托和事件的使用及Observer设计模...

2013-11-03 09:25:00 116

转载 C#基础笔记——泛型(Genericity)

一、概述泛型并不是C#语音一开始就带有的特性,而是在FCL2.0之后实现的新功能。泛型是将类型参数化,以便于更大范围的进行代码复用。二、泛型使用范围及用法1.总是优先考虑泛型以List基本实现为例:public class MyList<T> { T[] items; public T thi...

2013-11-02 22:35:00 134

转载 设计模式笔记——原型模式(Prototype Pattern)

一、概述和工厂模式一样,同样对客户隐藏了对象创建工作,但是,与通过对一个类进行实例化来构造新对象不同的是,原型模式是通过copy一个现有对象来生产新对象的。二、原型模式原型模式的一种形式是带原型管理器的原型模式,其类图如下:客户(Client)角色:客户端类向原型管理器提出创建对象的请求。抽象原型(Prototype)角色:这是一个抽象角色,通常由一个C#接口或...

2013-10-24 17:18:00 133

转载 设计模式笔记——生成器模式(Builder Pattern)

一、概述在软件系统中,把构造对象实例的逻辑移到了类的外部,在这个类的外部定义了类的逻辑。它把一个复杂对象的构造过程从对象的表示中分离出来了,其直接效果是将一个复杂的对象简化为一个比较简单的目标对象。它强调的是产品构造过程。二、意图将一个复杂对象的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。三、Builder模式的结构Builder:为创建...

2013-10-23 16:39:00 158

转载 设计模式笔记——享元模式(Flyweight Pattern)

一、概述在软件开发有时需要创建大量细粒度的对象(比如:文档处理系统就可能需要创建成千上万的字符对象)。但如果new一个新的字符对象就会分配内存空间,那么在系统运行时就会耗费大量的内存资源。如何在保留面向对象操作方式优点的同时避免创建大量的对象呢?这就到了享元模式发挥作用的时候了。二、享元模式享元模式运用共享技术有效地支持大量细粒度的对象。例如可以对文档处理系统创建共享池(内存...

2013-10-18 11:14:00 96

空空如也

空空如也

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

TA关注的人

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