effective c sharp 印象

今天在 www.cnblogs.com 看到了这么一篇文章《[你必须知道的.NET] 第六回:深入浅出关键字---base和this》【AndTao】的文章,写的不错。

最后发现基本上是对《Effective C#》的翻译重新组织了一下,不过加入了作者的理解,不错的想法。自己也想看看,搜索了一下,总结一下:

(一下资料来源于 CodeProject.com
http://www.codeproject.com/csharp/effectivecspart1.asp

o        Item1 - Prefer the Length property when checking string size. [Performance]

o        Item2 - Prefer StringBuilder over string concatenation. [Performance]

o        Item3 - Avoid Boxing and UnBoxing as much as possible. [Performance]

o        Item4 - Prefer String.Equal method over == operator. [Performance]

o        Item5 - Use Native Image Generator (Ngen.exe) in case of long and heavy initialization. [Performance]

o        Item6 - Prefer 'for' over 'foreach'. [Performance]

o        Item7 - Prefer the ‘as’ operator over direct type casting. [Usage]

o        Item8 - Use the 'checked' keyword to avoid overflow. [Usage]

o        Item9 - Use the 'is' operator before casting. [Usage]

o        Item10 - Use Explicit interface to 'hide' the implementation of an interface. [Usage]

o        Item11 - Use @ to ease the work with literal paths. [Usage]

o        Item12 - Make your API assembly CLS compliant. [Usage]

o        Item13 - Define destructor and implement IDisposable interface for classes that use native resources directly. [Garbage Collection]

o        Item14 - Avoid the use of GC.Collect [Garbage Collection]

o        Item15 - Use StructLayout attribute, for classes and structs, when using COM Interop. [COM Interop]

 由于是E文的,好久没有翻译了,所以兴趣来了就像解释、总结一下:

l          条款1:建议使用Length 属性检查字符串的大小【性能】;

l          条款2:建议使用 StringBuilder 替换 String 进行字符连接【性能】;

l          条款3:尽可能的避免使用 装箱 和 拆箱 操作【性能】;

l          条款4:推荐使用 String.Equals 方法替代 == 操作【性能】;

l          条款5:对于大量资源初始化动作,建议使用本地图片资源生成器( Ngen.exe )进行管理;

l          条款6:建议使用 for 替代 foreach【性能;

l          条款7:推荐使用 as 替换 直接的类型转换【用法】;

l          条款8:使用 Checked 避免溢出【用法】;

l          条款9:在进行类型转换前使用 is 操作【用法】;

l          条款10:使用确切的接口来隐藏接口的实现【用法】;

l          条款11:应用 @ 来简化字符路径【用法】;

l          条款12:令API程序集符合CLS【用法】;

l          条款13:使用析构函数和继承IDisposable 接口来直接管理本地资源【用法】;

l          条款14:避免使用 GC.Collect 【垃圾回收器】;

l          条款15:调用COM时可以使用StructLayout属性来规定类和结构体【COM】;

相关资料:

CSDN 上的《Effective C#中文版:改善C#程序的50种方法

 

时间: 2024-10-23 20:10:26

effective c sharp 印象的相关文章

用户对设计没印象?教你如何创建情感联系

  在某些程度上,你完成的每个设计项目都是和你的用户紧密相连的.你的设计不但能传递信息,还能传递某种情感.作为设计师的你,只有深入挖掘用户的情感,才能使你的设计更上一层楼.你一定要好好理解这篇文章,并且把这种理念在你的设计中加以运用. 我们往往把情感的联系归为四大类--快乐与悲伤,信任和厌恶,恐惧和愤怒,惊讶与期待.了解了这种感情的产生是如何与你设计的视觉图像联系在一起的,这是非常重要的.当你在阅读这篇文章的时候,你可以看一看一些特征其鲜明的网站,思考它的每一个部分都给你带来了什么感觉,以及什么

Effective Java -->(一)创建和销毁对象

创建|对象 Effective Java学习笔记JAVA语言支持四种基本类型:接口(Interface).类(Class).数组(Array).和原语类型(Primitive).前三种类型通常被称为引用类型(reference type),类的实例和数组是对象(object),而原语类型的值不是对象.一个类的成员(member)包括它的域(field),方法(method),成员类(member class)和成员接口(member interface).一个方法的原型(signature)包括

站长老大哥:华军印象

站长 以前网络流传一种华军的说法:好人华军. http://www.baidu.com/s?wd=%BA%C3%C8%CB%BB%AA%BE%FC&cl=3  看过文章只是算着印象.从没有做网站开始,就知道华军软件园.那时只知道使用软件,下载软件,等有一天,我也成为站长的时候,一个巧合,跟朋友谈到华军,知道他也是江苏的,而在附近,当时我在新沂,离华军所在的沭阳20公里不到 ,一直准备约几个站长朋友去拜见一下,学习一下,领一些指点回来.又担心华军那么大的站长,会不会没有时间而拒绝我们.一直没有信心

《Effective C# 精髓》摘选

昨天买了一本<Effective C#>,看了几个Item,虽然没有当初读<Effective C++>时的那般震撼,但是也收获不少.把其中的要点记录于下,有些条款加上了自己的理解,权当作读书笔记吧 :-) Item 1: Always Use Properties Instead of Accessible Data Members 这个是地球人都知道的条款了.你需要记住,属性是类的外部接口部分,而(公共)成员却是内部实现.如果把内部实现暴露给外部,对于以后类的实现变更是非常不利

厦门印象:与知名站长们的扑克交流

一.广告联盟 深夜11点,21世纪经济报道侯继勇找我 询问Google Adsence和百度联盟的联系方式 他说他想写写这两大联盟与个人网站的博弈关系 原因无他,感觉热闹. 很巧,从厦门回来,我也写了几篇个人网站的报道(本周末将见报) 其中一篇<个人站长:后SP时代的网赚传奇>就是讲些广告联盟相关的故事 于是和他胡扯起来, 直到他彻底晕了,自己彻底爽了,才撂了电话 二.厦门赌博故事 于是想起了几天前在厦门站长大会的疯狂经历: 之前,我曾信誓旦旦要说,去厦门不看海,看站长们! 但到了厦门后,我还

厦门印象:第三届中国站长大会侧记

一.前面 第三届中国站长大会刚刚全部结束了,终于回到了久违的房间 时间是2007年4月22日0时29分 紧凑的安排,站长们热情的交流和代理公司.某些网站BD.联盟们近乎疯狂的相互串连交织着,大会结束了 套用一句大家从小就熟悉的话:这是一次成功的大会,一次胜利的大会 坐在台下的我,不时地把这次的站长大会与我们去年3月举行的首届英雄会做着比较,更在琢磨下个月中旬要在重庆举办的第二届英雄会能从中得到哪些启发. 明天开始,关于这次大会的若干情形,我会以图片加文字随笔的形式记录整理下来,与大家分享. 这是

究竟什么是设计?让你的设计给人留下深刻的印象

文章描述:在这里我也不敢写什么太专业的文章,所以把我平时收藏的一些图片和海报拿出来和大家分享,并且从几个因素来讨论通过从版式设计.颜色运用及对比来使你的设计给人留下深刻的印象并且有效地传达信息. 在如今这个泛设计的时代,设计也逐渐从一个艺术门类向生活形态过渡,因此总会遇到很多尴尬局面.比如有品牌爱好者和你谈最新的时尚资讯,比如前几天有个学公关的朋友自己画了个标志草稿让你修改并采用,某个学考古的朋友自己找了个设计网站的模板告诉你他的设计更快更好:让你觉得人家比你还懂设计:看起来我这个"科班出身&q

旺旺之母介绍旺旺印象玩偶诞生全过程

淘宝公仔制作生产全程揭密 传说中的旺旺之母全程为大家介绍旺旺印象玩偶诞生全过程 即新版淘江湖上线以后,为打造出好友互动平台我们特意为广大淘江湖用户专门设计制作了一套旺旺好友印象玩偶全套玩偶共18个公仔,9款男生版9款女生版,每个公仔都代表了一类好友的印象!公仔的头型是延续了旺旺水滴形象来设计的,个个公仔都生动可爱,爱不释手!哈哈,自己收藏或是送给好朋友同事都可以哦! 哈哈,我是不是有点不王婆卖瓜了..话不多说了,赶紧让我来揭开神秘公仔的面纱吧- 好!我接下来要为大家图文并茂的介绍我们是怎么把这些

C# Sharp Experience

C# 语言是一门简单,现代,优雅,面向对象,类型安全,平台独立的一门新型组件编程语言.其语法风格源自C/C++家族,融合了Visual Basic的高效和C/C++强大,是微软为奠定其下一互联网霸主地位而打造的Microsoft.Net平台的主流语言.其一经推出便以其强大的操作能 力,优雅的语法风格,创新的语言特性,第一等的面向组件编程的支持而深受世界各地程序员的好评和喜爱."它就是我多年来梦寐以求的计算机语言!"--很多 资深程序员拿到C#都是这样的惊讶.从C#语言的名字(C Sha