摘要:
由于排版和篇幅关系,本文仅提供PDF版本:http://www.tracefact.net/document/Regular-Expression-Tutorial.pdf 这里列出本文的目录: 引言 什么是正则表达式? 准备工作 匹配单个字符 匹配固定单个字符 匹配任意单个字符 匹配“”元字符 匹 阅读全文
摘要:
.Net中的加密解密 引言 在一些比较重要的应用场景中,通过网络传递数据需要进行加密以保证安全。本文将简单地介绍了加密解密的一些概念,以及相关的数字签名、证书,最后介绍了如何在.NET中对数据进行对称加密和解密。 加密和解密 说到加密,可能大家最熟悉的就是MD5了,记得几年前我刚开始接触Web编程的 阅读全文
摘要:
.NET框架 三年前写的《.NET之美》的第六章,现在书名改为了《.NET专题解析》。 本书是一本讲解.NET技术的书籍,目标读者群也是在.NET框架(.NET Framework)下进行开发的程序员,因此我们无法回避的问题就是:什么是.NET框架?它包含了哪些内容?为开发程序提供了哪些支持?很多朋 阅读全文
摘要:
很明显,CLS是CTS的一个子集,而且是最小的子集。 - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotNet-Framework.aspx (非常经典的一篇文章) 精通C# (第六版) CLR via C 阅读全文
摘要:
3 程序集 面试出现频率:虽然很重要但不怎么出现,可能会考你定义,以及程序集包括什么,然后自然的话题就跑到反射上去了。 重要程度:8/10,很重要 需要理解的程度:知道程序集包括IL和元数据。知道元数据的作用以及反射的概念。知道GAC是什么。关于反射在后面另有独立章节。对于程序集的强命名,个人认为过 阅读全文
摘要:
1 类型基础 面试出现频率:基本上肯定出现 重要程度:10/10,身家性命般重要。通常这也是各种招聘工作的第一个要求,即“熟悉C#”的一部分。连这部分都不清楚的人,可以说根本不知道自己每天都在干什么。就如同你在一个投行面试别人,问他的职业目标是什么,他说,我的职业目标就是进入投行。但你问他投行是做什 阅读全文
摘要:
面试出现频率:经常出现,但通常不会问的十分深入。通常来说,看完我这篇文章就足够应付面试了。面试时主要考察垃圾回收的基本概念,标记-压缩算法,以及对于微软的垃圾回收模板的理解。知道什么时候需要继承IDisposible接口,解构函数是做什么用的,什么时候需要自己写一个解构函数。 重要程度:10/10 阅读全文
摘要:
2 类型转换 面试出现频率:主要考察装箱和拆箱。对于有笔试题的场合也可能会考一些基本的类型转换是否合法。 重要程度:10/10 CLR最重要的特性之一就是类型安全性。在运行时,CLR总是知道一个对象是什么类型。对于基元类型之间的相互转换,可以显式或者隐式执行,例如将一个int转换为long。但如果将 阅读全文
摘要:
反射 - 定义,实例与优化 在面试中,通常会考察反射的定义(操作元数据),可以用反射做什么(获得程序集及其各个部件),反射有什么使用场景(ORM,序列化,反序列化,值类型比较等)。如果答得好,还可能会问一下如何优化反射(Emit法,委托法)。 反射的性能远远低于直接调用,但对于必须要使用的场景,它的 阅读全文
摘要:
委托和事件 委托在C#中具有无比重要的地位。 C#中的委托可以说俯拾即是,从LINQ中的lambda表达式到(包括但不限于)winform,wpf中的各种事件都有着委托的身影。C#中如果没有了事件,那绝对是一场灾难,令开发者寸步难行。而委托又是事件的基础,可以说是C#的精髓,个人认为,其地位如同指针 阅读全文
摘要:
泛型 泛型相比反射,委托等较为抽象的概念要更接地气得多,而且在平常工作时,我们几乎时刻都和泛型有接触。大部分人对泛型都是比较熟悉的。 泛型集合是类型安全的集合。相对于泛型System.Collections.Generic,我们有类型不安全的集合System.Collections,其中的成员均为O 阅读全文