2012年4月10日

第二章 生成、打包、部署和管理应用程序及类型

摘要: .NET Framework部署目标将类型生成到模块中 响应文件元数据概述将模块合并成程序集 使用Visual Studio IDE将程序集添加到项目中 使用程序集链接器 为程序集添加资源文件程序集版本资源信息语言文化简单应用程序部署(私有部署的程序集) 简单管理控制(配置) 阅读全文

posted @ 2012-04-10 23:27 tLEE 阅读(129) 评论(0) 推荐(0)

第一章 CLR的执行模型

摘要: 将源代码编译成托管模块将托管模块合并成程序集加载公共语言运行时执行程序集的代码 IL和验证 不安全的代码本地代码生成器:NGen.exeFramework类库通用类型系统公共语言规范与非托管代码的互操作性 阅读全文

posted @ 2012-04-10 23:22 tLEE 阅读(117) 评论(0) 推荐(0)

2012年3月15日

堆(heap)和栈(stack)的区别

摘要: 堆和栈的区别 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后由系统释放。 4、文字常量区 —常量字符串就是放在这里的。 ... 阅读全文

posted @ 2012-03-15 10:19 tLEE 阅读(1075) 评论(0) 推荐(0)

2011年12月13日

设计模式总结

摘要: Simple Factory Pattern(简单工厂模式) 优势和缺陷 在简单工厂模式中,工厂类是整个模式的关键所在。它包含必要的判断逻辑,能够根据外界给定的信息,决定究竟应该创建哪个具体类的对象。通过使用工厂类,外界可以从直接创建具体产品对象的尴尬局面中摆脱出来,仅仅需要负责“消费”对象就可以了,而不必管这些对象究竟是如何创建以及如何组织的。这样就明确区分了各自的职责和权力,有利于整个软件体系结构的优化。 不过,凡事有利就有弊,简单工厂模式的缺点也正体现在其工厂类上。由于工厂类集中了所有实例的创建逻辑,很容易违反GRASPR的高内聚的责任分配原则。将全部创建逻辑都集中到一个工厂类还有另.. 阅读全文

posted @ 2011-12-13 23:53 tLEE 阅读(6586) 评论(0) 推荐(0)

二十六.行为型设计模式——Visitor Pattern(访问者模式)

摘要: 定义 说明一个操作执行于一个对象结构的成员(elements)中。访问者样式让你定义一个类的新操作而无须改变它操作的这些成员类。 UML类图如下: 其中类和对象的关系为: 1.Visitor(抽象访问者):为对象结构类中每一个ConcreteElement的类声明一个Visit操作。这个操作的名称及标志(signature)识别传出Visit请求给访问者的类。这就使得访问者可以解定正要被访问的元素的具体类,这样访问者就可以直接经由其特有接口访问到元素(Element)。 2.ConcreteVisitor(具体访问者):实现每个由Visitor声明的操作。每个操作实现本算法的一部... 阅读全文

posted @ 2011-12-13 23:28 tLEE 阅读(553) 评论(0) 推荐(0)

2011年12月12日

二十五.行为型设计模式——Template Method Pattern(模版方法模式)

摘要: 定义 定义一个操作中算法的骨架(skeleton),以将一些步骤延缓到子类中实现。模版方法让子类重新定义一个算法的某些步骤而无须改变算法的结构。 UML类图如下: 其中类和对象关系为: 1.AbstractClass(抽象类):定义一个抽象原始的操作,其子类可以重定义它实现一个算法的各个步骤;实现一个模版方法定义一个算法的骨架,此模版方法不仅可以调用原始的操作,还可以调用定义于AbstractClass中的方法或其他对象中的方法。 2.ConcreteClass(具体子类):实现原始的操作以完成子类特定算法的步骤。 典型应用的顺序图如下: 实例1——数据库连接模版 下面的代... 阅读全文

posted @ 2011-12-12 23:53 tLEE 阅读(340) 评论(0) 推荐(0)

二十四.行为型设计模式——Strategy Pattern(策略模式)

摘要: 定义 定义一系列算法(algorithms family),将每一个算法封装起来,并让它们可以互相替换(interchangeable)。策略模式让算法独立于使用它的客户而变化。 UML类图如下: 其中类和对象的关系为: 1.Strategy(抽象策略类):定义一个公共的接口给所有支持的算法。Context使用这个接口调用ContextStrategy定义的算法。 2.ContextStrategy(具体策略类):调用Strategy接口实现具体的算法。 3.Context(场景):用ContextStrategy对象配置其执行的环境;维护一个对Strategy的引用实例;可以... 阅读全文

posted @ 2011-12-12 23:00 tLEE 阅读(488) 评论(0) 推荐(0)

2011年11月26日

正则表达式基础

摘要: 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。如:JScriptVBScript匹配/^\[ \t]*$/"^\[ \t]*$"匹配一个空白行。/\d{2}-\d{5}/"\d{2}-\d{5}"验证一个ID 号码是否由一个2位数字,一个连字符以及一个5位数字组成。/<(.*)>.*<\/\1>/"<(.*)>.*<\/\1>" 阅读全文

posted @ 2011-11-26 14:00 tLEE 阅读(209) 评论(0) 推荐(0)

正则表达式入门

摘要: 元字符现在你已经知道几个很有用的元字符了,如\b,.,*,还有\d.正则表达式里还有更多的元字符,比如\s匹配任意的空白符,包括空格,制表符(Tab),换行符,中文全角空格等。\w匹配字母或数字或下划线或汉字等。对中文/汉字的特殊处理是由.Net提供的正则表达式引擎支持的,其它环境下的具体情况请查看相关文档。下面来看看更多的例子:\ba\w*\b匹配以字母a开头的单词——先是某个单词开始处(\b),然后是字母a,然后是任意数量的字母或数字(\w*),最后是单词结束处(\b)。好吧,现在我们说说正则表达式里的单词是什么意思吧:就是不少于一个的连续的\w。不错,这与学习英文时要背的成千上万个同名的 阅读全文

posted @ 2011-11-26 13:13 tLEE 阅读(401) 评论(0) 推荐(0)

2011年11月22日

二十三.行为型设计模式——State Pattern(状态模式)

摘要: 定义 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 UML类图如下: 其中类和对象的关系为: 1.Context(情景类):定义客户应用程序有兴趣的接口;维护一个ConcreteState(具体状态)子类的实例对象。 2.State(抽象状态类):定义一个接口以封装与Context的一个特别状态(State)相关的行为。 3.ConcreteState(具体状态类):每一个具体状态类(ConcreteState)实现了一个Context的状态(state)相关的行为。 典型应用的顺序图如下: 实例1——账户分类: 允许账户因它的余额... 阅读全文

posted @ 2011-11-22 00:09 tLEE 阅读(537) 评论(0) 推荐(0)

导航