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. SVN+码云 简单使用流程

    1.登录码云网站...

  2. Android-Notification-简单的demo

    通知,几乎存在于每一个 Android 的应用中,新闻客户端来一条新闻的时候会给你发一条通知,QQ.微信有新消息来的时候会给你发一条通知,反正,通知就像魔鬼般一直缠绕在我们的左右.所以,Android ...

  3. Security3: Schema 和 Permission

    Schema是Object的容器,授予对Schema访问的权限,就是授予对Schema下所有object的访问权限. 一,Schema 是object的container The new schema ...

  4. OLE DB Command transformation 用法

    OLE DB Command transformation component 能够引用参数,逐行调用sqlcommand,This transformation is typically used ...

  5. 深入学习jQuery鼠标事件

    × 目录 [1]类型 [2]写法 [3]合成事件[4]鼠标按键[5]修改键[6]坐标位置 前面的话 鼠标事件是DOM事件中最常用的事件,jQuery对鼠标事件进行了封装和扩展.本文将详细介绍jQuer ...

  6. 详解 ML2 Core Plugin(II) - 每天5分钟玩转 OpenStack(72)

    上一节我们讨论了 ML2 Plugin 解决的问题,本节将继续研究 ML2 的架构. ML2 对二层网络进行抽象和建模,引入了 type driver 和 mechansim driver. 这两类 ...

  7. .net基本数据类型操作

    代码编写的过程中,较多的会涉及到基本数据类型的使用和定义,在项目中,对于类型的判定和类型间的相互转换,有时也较为的麻烦,先提供几种基本数据类型的判断方法: 1.判断对象是否为Int32类型的数字: / ...

  8. ++a和a++的区别。

    先来看2段js代码 var a=0; var b=0; while(a<10) { document.write(a++); } document .write("<br> ...

  9. mongodb-基础-update-remove

    1.一些操作 collection重命名: > db.post.renameCollection('foo') { "ok" : 1 } > show collecti ...

  10. git配置

    安装完成git之后基本就可以使用了,但是,有些配置还是需要的. 在任何一个目录下,右键 Git Bash Here, 然后输入: 1.设置用户名和邮箱 $ git config --global us ...