Fork me on GitHub

2013年6月13日

摘要: .NET:也谈谈.NET中的引用类型和值类型背景引用类型和值类型的区别好像是一个经典的面试问题,也是一个非常基础的问题,今天试着写一下,一则为了以后新入职的毕业生学习,二则希望高手批评。几个事实值类型的局部变量始终分配在栈中,局部变量中存储的是值。引用类型的局部变量始终分配在栈中,局部变量中存储的是值地址(引用),地址指向的值(对象)分配在堆中。值类型的成员变量始终内敛存储在对象中(堆中),内敛存储的是值。引用类型的成员变量始终内敛存储在对象中(堆中),内敛存储的是值地址(引用),地址指向的值(对象)分配在堆中的另外一个区域。一个线程拥有一个栈(对于理解多线程编程非常有用)。线程之间共享一个堆 阅读全文
posted @ 2013-06-13 10:08 HackerVirus 阅读(163) 评论(0) 推荐(0)
摘要: 浅谈C# 多态的魅力(虚方法,抽象,接口实现)前言:我们都知道面向对象的三大特性:封装,继承,多态。封装和继承对于初学者而言比较好理解,但要理解多态,尤其是深入理解,初学者往往存在有很多困惑,为什么这样就可以?有时候感觉很不可思议,由此,面向对象的魅力体现了出来,那就是多态,多态用的好,可以提高程序的扩展性。常用的设计模式,比如简单工厂设计模式,核心就是多态。其实多态就是:允许将子类类型的指针赋值给父类类型的指针。也就是同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法。如果这边不理解可以先放一放,先看下面的事例,看完之后 阅读全文
posted @ 2013-06-13 09:38 HackerVirus 阅读(133) 评论(0) 推荐(0)
摘要: Ping命令“Ping” 命令是我们在判断网络故障常用的命令,熟练的掌握Ping命令的各种技巧可以帮助你解决很多网络故障。它是(Packet Internet Groper)的缩写,中文意思就是:”分组因特网探测器“ping不仅仅是windows下的命令,在unix和linux下也有这个命令,ping只是一个通信协议,是ip协议的一部分,tcp/ip 协议的一部分,Ping 在Windows系下是自带的一个可执行命令。利用它可以检查网络是否能够连通,用好它可以很好地帮助我们分析判定网络故障,应用格式:ping IP地址目标:用来检测网络通不通,也叫延时,其值越大,速度越慢。原理:利用电脑IP的 阅读全文
posted @ 2013-06-13 09:37 HackerVirus 阅读(7255) 评论(0) 推荐(1)
摘要: C# 调用PowerShell方法PowerShell应为编写和运行都很方便,所以为了重复利用,经常写了一些小方法或者PS代码片段。使用的时候可能会很难找到自己想要的那个方法,如果要是有一个界面把这些代码管理起来并且调用,那就很爽了1.创建一个powershell的方法,供C#调用,方法很简单,两个数的加法运算function Sum{param([int]$first, [int]$second)$result = $first + $secondreturn $result}2. 在C#的控制台程序中创建一个私有方法,调用powershell首先定义一个powershell存放路径的全局变 阅读全文
posted @ 2013-06-13 09:33 HackerVirus 阅读(340) 评论(0) 推荐(0)
摘要: Scott Hanselman's 推荐的的实用工具集合(2011版)Scott Hanselman活跃于.NET社区,这篇文章来自于它的工具列表,地址是http://www.hanselman.com/tools.NET开发人员应该收藏的工具LINQPad快速理解和构建Linq查询,也可用于生成Linq表达式的实用工具Microsoft Web Platform Installer如果你需要获取.NET平台开发需要的一些常用运行库或开发工具,可以借助此工具,获取一系列的工具。比如SQL Server Express,Visual Studio Express等等。JetBrains 阅读全文
posted @ 2013-06-13 09:28 HackerVirus 阅读(148) 评论(0) 推荐(0)
摘要: 更有效率的使用Visual Studio(一)工欲善其事,必先利其器。虽然说Vim和Emacs是神器,但是对于使用Visual Studio的程序员来说,我们也可以通过一些快捷键和潜在的一些功能实现脱离鼠标写代码,提高工作效率,像使用Vim一样使用Visual Studio。当然,如果想真正像使用Vim一样使用Visual Studio可以安装这个插件:VsVim,只支持VS2010+。下面我会总结一些我觉得大家平时可能不怎么知道的但是又很好用的一些VS的快捷键和使用技巧。如果您是大牛那不需要看了,哈哈。个人知识有限如果大家还有什么比较实用的快捷键,欢迎分享。因为不像Vim有Normal,In 阅读全文
posted @ 2013-06-13 09:27 HackerVirus 阅读(261) 评论(0) 推荐(0)

2013年6月12日

摘要: optparse模块浅谈optparse模块 最近遇到一个问题,是指定参数来运行某个特定的进程,这很类似Linux中一些命令的参数了,比如ls -a,为什么加上-a选项会响应。optparse模块实现的也是类似的功能,它是为脚本传递命令参数。 使用此模块前,首先需要导入模块中的类OptionParser,然后创建它的一个实例(对象):from optparse import OptionParserparser = OptionParser() #这里也可以定义类的参数,后续有 接着就可以添加选项了,基本语法:parser.add_option(opt_str, ..., ... 阅读全文
posted @ 2013-06-12 10:42 HackerVirus 阅读(231) 评论(0) 推荐(0)
摘要: SQL Server存储过程及高级应用今天主要探讨下SQL Server存储过程的应用及优化方案。 存储过程:由于本人之前的一篇文章对存储过程简单的做了概述,http://www.cnblogs.com/weilengdeyu/archive/2012/12/26/2834625.html这里就不再赘述了。今天来看下存储过程的高级应用。首先来看下存储过程能够包含哪些内容: 从图中可以看出,存储过程不仅包含单个select语句,还可以包含select语句块,例如Case When,同样还可以包含逻辑控制语句,如if—else等。注意:存储过程中也可以包含insert,update和delet.. 阅读全文
posted @ 2013-06-12 10:40 HackerVirus 阅读(247) 评论(0) 推荐(0)
摘要: vim操作全面讲解目录第一讲移动光标VIM的进入和退出文本编辑之删除文本编辑之插入小结第二讲删除类命令其他删除类命令关于命令和对象对象命令的特殊情况撤消类命令小结第三讲置入类命令替换类命令更改类命令使用c指令的其他更改类命令小结第四讲定位及文件状态搜索类命令配对括号的查找修正错误的方法之一小结第五讲VIM 内执行外部命令的方法关于保存文件的更多信息一个具有选择性的保存命令提取和合并文件小结第六讲打开类命令光标后插入类命令另外一个置换类命令的版本设置类命令的选项小结第七讲在线帮助命令第八讲创建一个启动脚本vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中就不详细介绍了。本教 阅读全文
posted @ 2013-06-12 10:39 HackerVirus 阅读(156) 评论(0) 推荐(0)
摘要: ASP.NET Web API对OData的支持在SOA的世界中,最重要的一个概念就是契约(contract)。在云计算的世界中,有关通信的最重要的概念也是契约。XML具有强大对数据的描述能力,Atom格式和AtomPub都建立在XML之上,在Google和微软的推动下,也已经成为标准。但是,Atom/AtomPub和ODBC/OLEDB这样的真正数据交互协议相比较,还有着根本上的欠缺:缺乏数据类型的具体描述,降低了交互性能。缺乏对数据查询的控制能力,比如返回特定的数据集合的区间,或者说分页能力等等。微软基于EDM模型释出了:OData,这里也可以看出Entity Framework对于NHi 阅读全文
posted @ 2013-06-12 10:38 HackerVirus 阅读(260) 评论(0) 推荐(0)