随笔分类 -  [01]C#基础

C#基础
摘要:【目录】 发现自己已经有很长一段时间写代码没什么进步了,随便读读FCL的源码,看看之前一直用的方法是如何实现的,也顺便提高下自己。FCL很是庞大,很难下口,于是用最笨的办法,先看常见的命名空间,逐个展开。战五渣的水平,必定有很多理解上的错误,欢迎斧正,不胜感激。 System.Collections 命名空间中的集合包含(如列表、队列、位数组、哈希表和字典)的集合。本篇目录:IEnumerable,ICollection,IList,IDictionaryArrayListQueueStackSortedList集合的接口在刚开始写程序的时候的时候经常会写一些接口,哪怕这个接口只被用到了一次. 阅读全文
posted @ 2014-03-30 16:41 BangQ 阅读(1490) 评论(0) 推荐(4)
摘要:准备深入的学习下 FCL,太过于庞大,有些无从下口。用最笨的方法,先从常用的几个命名空间入手。 微软发布了.NET 的源码,学习起来更加方便了。集合 导航:FCL研究-集合- System.Collections 接口和对象集合FCL研究-集合- System.Collections.Generi... 阅读全文
posted @ 2014-03-26 16:55 BangQ 阅读(392) 评论(0) 推荐(0)
摘要:早上看了一篇文章无废话MVC入门教程九[实战一:用户注册与登陆],被无废话、实战 这些强有力的字眼所吸引,拜读之。本文目标:一、独立开发用户注册与登陆!读完发现很欠妥当,于是评论了一下,被博主强烈反驳。本人才浅,也许言语很欠妥当罢,在此给那位博主道个歉。 注册和登录几乎是每个web必备的模块,通常面试的时候也会简单和面试者讨论下。个人感觉做注册和登录需要考虑以下两点:用户密码的存储,园子里面有很多相关的博客登录状态的保持,cookies安全用户密码的存储 很显然,现在没人会用明文存储了,这样会显得我们做程序的很二。园子里面有很多这方面的文章,可以搜索下。可以选择MD5加密,加上自己的盐... 阅读全文
posted @ 2013-03-26 16:10 BangQ 阅读(1061) 评论(3) 推荐(0)
摘要:最近研究表达式目录树,大名鼎鼎的 expression tree visualizer 不管怎么折腾都没办法在vs2010下使用,也去掉了引用vs2008的Microsoft.VisualStudio.DebuggerVisualizers.dll ,换成了2010的了,无奈还是不行。(有知道的朋友请指点一下)经过google,找到另一神器: http://www.manuelabadia.com/blog/PermaLink,guid,9160035f-490f-46bd-ab55-516b5c7545af.aspx上图:可以调整图的大小,感觉很爽吧另附dll下载:Update 13/01/ 阅读全文
posted @ 2012-03-02 17:31 BangQ 阅读(2723) 评论(9) 推荐(4)
摘要:在前面总结过:一个类类型的成员分为下列几种类别:· 常量,表示与该类相关联的常量值· 字段,即该类的变量· 方法,用于实现可由该类执行的计算和操作· 属性,用于定义一些命名特性以及与读取和写入这些特性相关的操作· 事件,用于定义可由该类生成的通知· 索引器,使该类的实例可按与数组相同的(语法)方式进行索引· 运算符,用于定义表达式运算符,通过它对该类的实例进行运算· 实例构造函数,用于实现初始化该类的实例所需的操作· 析构函数,用于实现在永久地放弃该类的一个实例之前要执行的操作· 静态构造函数, 阅读全文
posted @ 2012-02-16 10:38 BangQ 阅读(213) 评论(0) 推荐(0)
摘要:Introduction 很多人通过各种途径各种编程背景了解了Singleton(单例)模式。但是呢,每次使用单例都要写很多相同的代码,着实蛋疼。自从有了泛型之后,就可以不这么蛋疼了。这篇文章介绍使用泛型创建单例的Provider Background 有许多关于(Singleton)单例模式的文章. 这有个可能是最全面的了: "Implementing the Singleton Pattern in C#". 也有很多人使用泛型编写单例,例如codeproject上的这一篇:"Generics in C# 2.0" by Ansil. 阅读全文
posted @ 2012-01-15 10:32 BangQ 阅读(453) 评论(0) 推荐(0)
摘要:上篇谈了CLR支持的两种类型:reference-type和value-type,这篇来详细谈谈类(class)。 http://www.vsmvp.com/Post.aspx?id=13类(class)是最基础的C#类型。类是一个数据结构,将状态(字段)和操作(方法和其他函数成员)组合在一个单元中。类为动态创建的类实例(instance)提供了定义,实例也称为对象(object)。类支持继承(inheritance)和多态性(polymorphism),这是派生类(derived class)可用来扩展和专用化基类(base class)的机制。类的实例使用new运算符创建,该运算符为新的实 阅读全文
posted @ 2011-11-07 22:54 BangQ 阅读(1064) 评论(7) 推荐(1)
摘要:先上图:常见的五种简介:BSD开源协议BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BS 阅读全文
posted @ 2011-07-19 17:49 BangQ 阅读(20778) 评论(4) 推荐(4)
摘要:名称说明Add将两个值相加并将结果推送到计算堆栈上。Add_Ovf将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上。Add_Ovf_Un将两个无符号整数值相加,执行溢出检查,并且将结果推送到计算堆栈上。And计算两个值的按位“与”并将结果推送到计算堆栈上。Arglist返回指向当前方法的参数列表的非托管指针。Beq如果两个值相等,则将控制转移到目标指令。Beq_S如果两个值相等,则将控制转移到目标指令(短格式)。Bge如果第一个值大于或等于第二个值,则将控制转移到目标指令。Bge_S如果第一个值大于或等于第二个值,则将控制转移到目标指令(短格式)。Bge_Un当比较无符号整数值或不可排 阅读全文
posted @ 2011-07-19 10:44 BangQ 阅读(1178) 评论(1) 推荐(0)
摘要:.NET小结之内存模型为什么要解.NET的内存模型在.NET下的内存管理、垃圾回收其实大部分不需要我们操心,因为大部分.NET已经帮我们做了,通常情况下也不需要考虑这些。但是如果想要了解一些.NET一些稍微“底层”的原理,如:“装箱、拆箱、对象生命周期等等”还是需要一点这方面的知识的。内存模型初探堆&&栈园子中讨论堆和栈的文章很多,讲的都很不错,这里简单总结一下。首先列出一些博文以供参考:lhttp://www.cnblogs.com/seanps/archive/2009/01/22/1379807.htmllhttp://www.cnblogs.com/lxinxuan/a 阅读全文
posted @ 2011-07-17 17:37 BangQ 阅读(1281) 评论(0) 推荐(0)
摘要:Long long ago,每个数据库的提供商都有自己的API去操作数据库,这样程序和数据库被绑定到了一起,想换数据库基本没门,除非重写程序。 程序员表示强烈抗议,于是一些制定标准的机构(X/OPEN、ISO/IEC)和牛X的公司探讨并提出了CLI(Call-Level Interface)使每个不同的数据库提供的驱动基本相同,这样程序更换数据库方便了很多,但是程序还需要重新编译,后来微软提出了ODBC(Open Database Connectivity),ODBC定义了访问数据库的API一个规范,这些API独立于不同厂商的DBMS,也独立于具体的编程语。ODBC可以动态封装CLI,终于程序 阅读全文
posted @ 2011-03-03 14:48 BangQ 阅读(2379) 评论(9) 推荐(11)