-
2016-07-19
1.开发流程 程序的Bug与瑕疵往往出现于开发流程当中。只要对工具善加利用,就有助于在你发布程序之前便将问题发现,或避开这些问题。 标准化代码书写 标准化代码书写可以使代码...
-
2016-06-27
摘要 委托是C#编程一个非常重要的概念,也是一个难点。本文将系统详细讲解委托。 1. 委托是什么? 其实,我一直思考如何讲解委托,才能把委托说得更透彻。说实话,每个人都委托...
-
2016-05-22
早在 C# 1.0 时,C#中就引入了委托(delegate)类型的概念。通过使用这个类型,我们可以将函数作为参数进行传递。在某种意义上,委托可理解为一种托管的强类型的函数指针。 通常情况...
-
2015-12-27
自动属性初始化 (Initializers for auto-properties) 以前我们是这么写的 为一个默认值加一个后台字段是不是很不爽,现在我们可以这样写 只读属性的初始化(Getter-only auto-properties) 像用户ID这种...
-
2015-12-27
在C# 2.0中,通过方法组转换和匿名方法,使委托的实现得到了极大的简化。但是,匿名方法仍然有些臃肿,而且当代码中充满了匿名方法的时候,可读性可能就会受到影响。C# 3.0中出现...
-
2015-12-27
动态创建函数 大多数同学,都或多或少的使用过。回顾下c#中动态创建函数的进化: C# 1.0中: public delegate string DynamicFunction(string name); public static DynamicFunction GetDynamicFunction() { return Ge...
-
2015-12-27
泛型内部机制 泛型拥有类型参数,通过类型参数可以提供参数化的类型,事实上,泛型类型的类型参数变成了泛型类型的元数据,运行时在需要的时候会利用他们构造恰当的类型,通过...
-
2015-11-26
如果你是一个C# 程序员 ,那么本文介绍的10个C#常用代码片段一定会给你带来帮助,从底层的资源操作,到上层的UI应用,这些代码也许能给你的开发节省不少时间。以下是原文: 1 读取...
-
2015-11-26
C#和.NET非常受全球开发人员的追捧和热爱。书籍是人类进步的阶梯。想要学习C# ?这里有10本学习C#编程的最好书籍在等着你哦。 1.《C# 5.0 in a Nutshell》:权威的参考书 学习C#的最佳书籍之...
-
2015-11-26
简介 本文用C#实现了一个最简单的HTTP服务器类,你可以将它嵌入到自己的项目中,或者也可以阅读代码来学习关于HTTP协议的知识。 背景 高性能的WEB应用一般都架设在强大的WEB服务器上...
-
2015-11-26
提起函数式编程,大家一定想到的是语法高度灵活和动态的LISP,Haskell这样古老的函数式语言,往近了说ruby,javascript,F#也是函数式编程的流行语言。然而.net自从支持了lambda表达式,C#虽...
-
2015-11-05
如果你是一个C#程序员,那么本文介绍的10个C#常用代码片段一定会给你带来帮助,从底层的资源操作,到上层的UI应用,这些代码也许能给你的开发节省不少时间。以下是原文: 1 读取...
-
2015-11-05
C# 是专门为 .net 程序框架而创造的语言。 .net 框架有 ms 的 .netFramework,Mono 的 .NetFramework ( 也是符合 .net IL 语言, CTS 规范, CLS 规范 , CLR 运行时库 ) , mono 程序可以运行在各种操作系统和...
-
2014-12-16
...
-
2014-12-16
线程 被定义为程序的执行路径。每个线程都定义了一个独特的控制流。如果您的应用程序涉及到复杂的和耗时的操作,那么设置不同的线程执行路径往往是有益的,每个线程执行特定的...
-
2014-12-16
当一个代码块使用 unsafe 修饰符标记时,C# 允许在函数中使用指针变量。 不安全代码 或非托管代码是指使用了 指针 变量的代码块。 指针变量 指针 是值为另一个变量的地址的变量,即...
-
2014-12-16
我们已经提到过,委托是用于引用与其具有相同标签的方法。换句话说,您可以使用委托对象调用可由委托引用的方法。 匿名方法(Anonymous methods) 提供了一种传递代码块作为委托参数...
-
2014-12-16
泛型(Generic) 允许您延迟编写类或方法中的编程元素的数据类型的规范,直到实际在程序中使用它的时候。换句话说,泛型允许您编写一个可以与任何数据类型一起工作的类或方法。...
-
2014-12-15
集合(Collection)类是专门用于数据存储和检索的类。这些类提供了对栈(stack)、队列(queue)、列表(list)和哈希表(hash table)的支持。大多数集合类实现了相同的接口。 集合(C...
-
2014-12-15
BitArray 类管理一个紧凑型的位值数组,它使用布尔值来表示,其中 true 表示位是开启的(1),false 表示位是关闭的(0)。 当您需要存储位,但是事先不知道位数时,则使用点阵列。您...
-
2014-12-15
队列(Queue)代表了一个 先进先出 的对象集合。当您需要对各项进行先进先出的访问时,则使用队列。当您在列表中添加一项,称为 入队 ,当您从列表中移除一项时,称为 出队 。...
-
2014-12-15
堆栈(Stack)代表了一个 后进先出 的对象集合。当您需要对各项进行后进先出的访问时,则使用堆栈。当您在列表中添加一项,称为 推入 元素,当您从列表中移除一项时,称为 弹出...
-
2014-12-15
SortedList 类代表了一系列按照键来排序的 键/值 对,这些键值对可以通过键和索引来访问。 排序列表是数组和哈希表的组合。它包含一个可使用键或索引访问各项的列表。如果您使用索...
-
2014-12-15
Hashtable 类代表了一系列基于键的哈希代码组织起来的 键/值 对。它使用 键 来访问集合中的元素。 当您使用 键 访问元素时,则使用哈希表,而且您可以识别一个有用的键值。哈希表中...
-
2014-12-15
动态数组(ArrayList)代表了可被单独索引的对象的有序集合。它基本上可以替代一个数组。但是,与数组不同的是,您可以使用 索引 在指定的位置添加和移除项目,动态数组会自动重...