博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

读《.NET设计规范》笔记

Posted on 2011-09-02 09:18  随遇  阅读(339)  评论(0编辑  收藏  举报

  在网上看到一些.NET牛逼开发人员对《.NET设计规范》一书评价很高,像我这种有点菜但是立志在.net上希望自己有点剑术的人,立马在网上找到该书,下载下来学习和研究,下面自己是在看此书时候做的一点笔记,仅自己后续温故而知新。

一、类型和名字空间

1.一个类型由一组定义明确、相互关联的成员组成,不应该包含一些不怎么有关的功能。

如果事情变得很复杂,那么久定义更多的类型

2.名字空间的目的是把类型组织成一个有条理、易于浏览、易于理解的层次结构,而不是简单的解决有相同名字的类型之间的名字冲突。

二、类型和结构之间的选择

1.类型和结构:a.大约是16个字节的类型应该可以定义成结构,b.不需要经常被装箱

三、类型和接口之间的选择

1.一个派生类继承一个基类是一种  IS-A关系,一个类时实现一个接口是CAN-DO关系

2.接口可以达到多重继承的类似效果

3.接口可以提供一个多态的值类型,如:public strunt Int32 :IComparable,IFormattable,IConvertible

四、抽象类的设计

1.不要为抽象类定义公有的构造函数,因为抽象类不可以去实例话,应该定义受保护的构造函数或者内部构造函数(internal)

五、静态类

1.静态类智能包含静态成员,静态类是密封的,抽象的,不能覆盖或者声明任何实例成员。

2.提供一种访问操作的快捷方式。

3.静态类应该被作为辅助类,来支持框架的面向对象的核心。

六、结构

七、枚举(分为简单枚举和标记枚举,标记枚举可以去进行位运算)

1.运用于一组值的集合,相当于一个包含静态常量的结构。

2.不要枚举用于开发的集合(比如:操作系统的版本,朋友的名字)。

第五章

成员设计

1.函数重载:把最长的重载函数做成虚函数,较短的函数仅仅是调用较长的重载

2.不要再重载函数中使用ref,out

3.构造函数分:类型构造函数(静态构造函数),实例构造函数

最好显示的申明公有默认构造函数,不声明时候,c#编译器自动生成一个公有的默认构造函数,

抽象类则生成一个受保护的够着函数

要把构造函数的参数用作设置主要属性的便捷方法

要把静态构造函数定义成私有的