Effiective C# Item1 : 使用属性代替成员变量

Effective C# Item2:运行时常量(readonly)优于编译时常量(const)

Effective C# Item3:操作符as或is优于强制转换

Effective C# Item4:使用Conditional特性代替#if条件编译

Effective C# Item5:总是提供ToString()方法

Effective C# Item6:明辨值类型和引用类型的使用场合

Effective C# Item7:将值类型尽可能实现为具有常量性和原子性的类型

Effective C# Item8:确保0是值类型的有效状态

Effective C# Item9:理解几个相等判断之间的关系

Effective C# Item10:理解GetHashCode()方法的缺陷

Effective C# Item11:优先采用foreach循环语句

Effective C# Item12:变量初始化器优于赋值语句

Effective C# Item13:使用静态构造器初始化静态类成员

Effective C# Item14:利用构造器链

Effective C# Item15:利用using和try/finally语句来清理资源

Effective C# Item16:尽量减少内存垃圾

Effective C# Item17:尽量减少装箱和拆箱

Effective C# Item18:实现标准Dispose模式

Effective C# Item19:定义并实现接口优于继承类型

Effective C# Item20:明辨接口实现和虚方法重写

Effective C# Item21:使用委托表达回调

Effective C# Item22:使用事件定义外发接口

Effective C# Item23:避免返回内部类对象的引用

Effective C# Item24:声明式编程优于命令式编程

Effective C# Item25:尽可能将类型实现为可序列化的类型

Effective C# Item26:使用IComarable和IComparer接口实现排序关系

Effective C# Item27:避免ICloneable接口

Effective C# Item28:避免强制类型转换

Effective C# Item29:只有当新版基类导致问题时才考虑使用new修饰符

Effective C# :创建二进制组件

Effective C# Item30:尽可能实现CLS兼容的程序集

Effective C# Item31:尽可能实现短小简洁的方法

Effective C# Item32:尽可能实现小尺寸、高内聚的程序集

Effective C# Item33:限制类型的可见性

Effective C# Item34:创建大粒度的Web API

Effective C# Item35:重写优于事件处理器

Effective C# Item36:合理使用.NET运行时诊断

Effective C# Item37:使用标准配置机制

Effective C# Item38:定制和支持数据绑定

Effective C# Item39 : 使用.NET验证

Effective C# Item40 : 根据需要选用恰当的集合

Effective C# Item41 : DataSet优于自定义结构

Effective C# Item42:利用特性简化反射

Effective C# Item43 : 避免过度使用反射

Effective C# Item44:为应用程序创建特定的异常类

Effective C# Item45 : 优先选择强异常安全保证

Effective C# Item46:最小化互操作

Effective C# Item47:选择安全代码

《Effective C#》读书笔记的更多相关文章

  1. csapp读书笔记-并发编程

    这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...

  2. CSAPP 读书笔记 - 2.31练习题

    根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1)  属于第一种情况 sum = x ...

  3. CSAPP读书笔记--第八章 异常控制流

    第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...

  4. CSAPP 并发编程读书笔记

    CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...

  5. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  6. 读书笔记--SQL必知必会18--视图

    读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...

  7. 《C#本质论》读书笔记(18)多线程处理

    .NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...

  8. C#温故知新:《C#图解教程》读书笔记系列

    一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...

  9. C#刨根究底:《你必须知道的.NET》读书笔记系列

    一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...

  10. Web高级征程:《大型网站技术架构》读书笔记系列

    一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...

随机推荐

  1. 使用Hexo搭建专属Blog

    喜欢折腾的自己最开始在博客园有仿写几篇Blog,虽也可以自己改变风格,可是到底不是独立的一块儿地方,要知道独立的才是自己的;有属于自己独立的域名和Blog,真真是一件很爽的存在.在各种大牛的分享下在G ...

  2. SQL Server数据库sql语句生成器(SqlDataToScript)的使用(sql server自增列(id)插入固定值)

    SqlDataToScript是根据表数据进行生成 Insert Into语句,此工具还有一个好处是可以对自增列插入固定值,例如:自增的列id值为5,但是5这个行值已经删除,如果想存储Id自增列值为5 ...

  3. 伪静态下Post无法响应的问题

    页面进行伪静态,Post的地址就不要写相对路径了,这样容易出错. 原来路径为,/SC/ProductDetail.aspx?id=110 用相对路径, 那么post的地址为:/SC/ProductDe ...

  4. css3中transition和display的坑

    不知道大家做css3动画的时候遇到过这种情景没? 用opacity实现淡入淡出的效果.噢!good!一切正常 给个栗子: <!DOCTYPE html> <html> < ...

  5. WPF textblock加入超链接

    <TextBlock Grid.Row=" Margin="75,0,0,0"> <Hyperlink Name="BlogHl" ...

  6. Android之startService()和bindService()区别

    1. 生命周期: startService()方式启动,Service是通过接受Intent并且会经历onCreate()和onStart().当用户在发出意图使之销毁时会经历onDestroy(), ...

  7. 从零开始编写自己的C#框架(4)——文档编写说明

    在写本系列的过程中,了解得越多越不知道从哪里做为切入点来写,几乎每个知识点展开来说都可以写成一本书.而自己在写作与文档编写方面来说,还是一个初鸟级别,所以只能从大方面说说,在本框架开发所需的范围内来讲 ...

  8. [c++] Smart Pointers

    内存管理方面的知识 基础实例: #include <iostream> #include <stack> #include <memory> using names ...

  9. 安装infer整个过程

    日期:2015-06-26 孟起  15:43:25 大神.. 孟起  15:43:38 我是不是照着这个安装 HelloWorld  15:45:05 直接找二进制文件安卓就行 孟起  15:46: ...

  10. java 线程的开始、暂停、继续

    Android项目中的一个需求:通过线程读取文件内容,并且可以控制线程的开始.暂停.继续,来控制读文件.在此记录下. 直接在主线程中,通过wait.notify.notifyAll去控制读文件的线程( ...