随笔分类 - 【011】读书笔记系列
《C#图解教程》、《你必须知道的.NET》、《CLR via C#》...
摘要:(1)核心思想:一个类最好只做一件事,只有一个引起它变化的原因(2)常用模式:Facade模式、Proxy模式(3)基本方法:Extract Interface 抽取接口、Extract Class 抽取类、Extract Method 抽取方法(4)DEMO:数据库管理系统中根据不同权限进行CRUD操作(这里是使用Proxy模式重构后的代码)
阅读全文
摘要:(1)出生:系统首先会在内存中分配一定的存储空间,然后初始化其附加成员,调用构造函数执行初始化,这样一个对象实体就完成了出生过程。(2)旅程:在某种程度上就是外界通过方法与对象交互,从而达到改变对象状态信息的过程。这也和人的生存之道暗合。在.NET的世界中,对象的生命周期由GC来控制:GC管理所有的托管堆对象,当内存回收执行时,GC检查托管堆中不再被使用的对象,并执行内存回收操作;不被应用程序使用的对象,指的是对象没有任何引用。
阅读全文
摘要:《你必须知道的.NET》来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心得和感悟,将技术问题以生动易懂的语言展开,层层深入,以例说理。全书主要,包括了.NET基础知识及其深度分析,以.NET Framework和CLR研究为核心展开.NET本质论述,涵盖了.NET基本知识几乎所有的重点内容。
阅读全文
摘要:一、接口那点事儿(1)什么是接口?一组函数成员而未实现的引用类型。只有类和结构能实现接口。(2)从IComparable接口看接口实例:假设有如下一段代码,它使用Array类的一个静态方法Sort对一个未排序的int类型数组进行排序,并输出排序后的结果。(3)使用接口注意事项:①声明接口时:不能包含:数据成员、静态成员;只能声明:方法、属性、事件、索引器;②实现接口时:在基类列表中包括接口名称;为每一个接口的成员实现接口;
阅读全文
摘要:一、委托初窥:一个拥有方法的对象(1)本质:持有一个或多个方法的对象;委托和典型的对象不同,执行委托实际上是执行它所“持有”的方法。如果从C++的角度来理解委托,可以将其理解为一个类型安全的、面向对象的函数指针。(2)如何使用委托?①声明委托类型(delegate关键字)②使用该委托类型声明一个委托变量③为委托类型增加方法④调用委托执行方法
阅读全文
摘要:一、万物之宗:Object(1)除了特殊的Object类,其他所有类都是派生类,即使他们没有显示基类定义。(2)一个派生类只能有一个基类,叫做单继承。二、基类那点事儿(1)如何在派生类中访问基类成员?使用base关键字,如base.Field1;(2)如何屏蔽基类中某个方法或成员?在派生类定义的成员定义前使用new关键字;
阅读全文
摘要:一、方法那些事儿(1)方法的结构:方法头—指定方法的特征,方法体—可执行代码的语句序列;(2)方法的调用:参数、值参数、引用参数、输出参数、参数数组;①参数:形参—本地变量,声明在参数列表中;形参的值在代码开始之前被初始化;实参—实参的值用于初始化形参;②值参数:为形参在栈上分配内存,将实参的值复制到形参;
阅读全文
摘要:一、类型初窥:掀起你的盖头来(1)C程序是一组函数和数据类型,C++程序是一组函数和类,而C#程序是一组类型声明;(2)类型是一种模板:模板本身不是数据结构,但它详细说明了由该模板构造的对象的特征;(3)C#提供了16种预定义类型:13种简单类型(数值类型:int,float,double,decimal等;非数值类型:bool,char),3种非简单类型(object,string,dynamic);
阅读全文
摘要:一、在.NET之前的编程世界 C#语言是在微软公司的.NET框架上开发程序而设计的,首先作者给大家纠正了一下C#的正确发音:See Sharp(而不是很多人说的什么C井之类的,每次听到C井我都只能呵呵一笑)。.NET框架由三部分组成,如下图所示。(1)编程工具:IDE、编译器、调试器、网站开发服务端技术(ASP.NET,WCF等);(2)执行环境—CLR(公共语言运行库):内存管理、垃圾回收、即时编译等;(3)BCL(基类库):在.NET框架中使用的一个大的类库,也可以在程序中使用;
阅读全文
摘要:本书是广受赞誉C#图解教程的最新版本。作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式、朴实简洁的文字,并辅之以大量表格和代码示例,全面、直观地阐述了C#语言的各种特性。新版本除了精心修订旧版内容外,还全面涵盖了C# 5.0的新增特性,比如异步编程、调用者信息、case表达式、带参数的泛型构造函数、支持null类型运算等。通过本书,读者能够快速、深入地理解C#,为自己的编程生涯打下良好的基础。
阅读全文