Fork me on GitHub

2013年12月25日

摘要: .net平台下深拷贝和浅拷贝 在.net类库中,对象克隆广泛存在于各种类型的实现中,凡是实现了ICloneable接口的类型都具备克隆其对象实例的能力。所以本文讲述的深拷贝和浅拷贝也是在实现ICloneable接口的基础上进行的。 基本概念:浅拷贝:指对象的字段被拷贝,而字段引用的对象不会被拷贝,拷贝对象和原对象仅仅是引用名称有所不同,但是它们共用一份实体。对任何一个对象的改变,都会影响到另外一个对象。大部分的引用类型,实现的都是浅拷贝,引用类型对象之间的赋值,就是复制一个对象引用地址的副本,而指向的对象实例仍然是同一个。深拷贝:指对象的子段被拷贝,同时字段引用的对象也进行了拷贝。深拷贝创.. 阅读全文
posted @ 2013-12-25 23:05 HackerVirus 阅读(218) 评论(0) 推荐(0)
摘要: Visual Studio 必备神器 会使用工具是人类文明的一大进步,今天敏捷大行其道,好的工具可以大大的提高生产力,这里说的工具都是VS平台上的扩展工具,一些机械的部分可以交给工具去处理,自己多关注其他部分。下面分享下我觉得不错的工具,很多也是同事推荐给我的。一、NuGet :组件管理神器用了VS,NuGet都没装,你可以去面壁去了。它为我们提供了丰富的组件库,下载,安装,引用,瞬间完成。如果你还是先下下来,安装,再浏览式的引用到工程,那太慢了。而且下次要找都不知道丢哪儿了。NuGet 将组件安装到具体工程:引用之后,会有一个package.config的文件,记录你在当前工程下,你用Nu. 阅读全文
posted @ 2013-12-25 23:00 HackerVirus 阅读(307) 评论(0) 推荐(0)
摘要: 玩转Windows服务系列——服务运行、停止流程浅析通过研究Windows服务注册卸载的原理,感觉它并没有什么特别复杂的东西,Windows服务正在一步步退去它那神秘的面纱,至于是不是美女,大家可要睁大眼睛看清楚了。接下来研究一下Windows服务的启动和停止的流程。启动流程启动时自然是从程序的入口点开始extern "C" int WINAPI _tWinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPTSTR /*lpCmdLine*/, int nSh... 阅读全文
posted @ 2013-12-25 22:57 HackerVirus 阅读(365) 评论(0) 推荐(0)
摘要: 给大家介绍款在线压缩JS的工具首先说下该工具的域名:http://javascriptcompressor.com/进入后界面如下:具体要讲下它的功能点:在线压缩 Javascript 源码可以分不同的压缩级别;比如,一般情况下,即缺省情况,它只是把空格、换行、多余的注释等等清理掉,如果选择了“Base62 encode”选项,则会对文件进行编码,使它更小;尤其当选中 Shrink variables 选项时,该在线工具会把长的变量名缩减成单个字母的变量名,压缩比通常能达到50%甚至更小。比如,我压缩20k大的一个jquery lightbox插件,普通情况可压缩到9.25k,使用“Base6 阅读全文
posted @ 2013-12-25 22:42 HackerVirus 阅读(834) 评论(0) 推荐(0)
摘要: 通用流程设计 写在前面:本人文采不好,零星写过几篇随笔,但都不尽人意,本着共同学习共同进步的原则,还是打算把近期开发的一个通用流程的软件拿出来与大家分享。本流程软件能满足鄙人接触到了解到的一般的流程实现(由于接触到的流程有限,以及对流程理解的不够透彻,流程引擎中不免有设计不足或考虑不周,也希望大神们能多多指点),如果读者在阅读或使用过程中遇到什么问题或有什么想法,希望能拿出来与大家分享,我们共同去学习去完善这套流程引擎。本随笔打算只涉及流程引擎部分,可视化流程设计随后做单独的随笔推出。写作水平有限,望读者多多体谅...(如有问题可随时联系笔者。邮箱:455274752@qq.com) 一、.. 阅读全文
posted @ 2013-12-25 22:33 HackerVirus 阅读(508) 评论(0) 推荐(0)
摘要: .Net 并行计算 ----并行Linq(一)本文是.Net 并行计算 的第三篇 欢迎大家拍砖,阅读本文需要有LINQ基础,因为并行LINQ (PLinq) 其实是LINQ To Object 的并行实现什么是并行LINQ PLinq 其实就是Linq to Object 的并行实现,PLINQ 会尝试充分利用系统的处理。将数据源分片之后,而后在多个处理上进行处理,这就意味着在大部分情况下运行速度会显著提高,PLINQ 通常只需向数据源添加 AsParallel()查询操作,这个还是很简单的吧 下面的例子为大家展示了这点 List TestDemo = Enumerable... 阅读全文
posted @ 2013-12-25 22:05 HackerVirus 阅读(297) 评论(0) 推荐(0)
摘要: SQL基础知识总结(一)1.union 和union all 操作符1)union内部的select语句必须拥有相同的列,列也必须有相似的数字类型。同时,每条select语句中列的顺序相同。union语法(结果集无重复)select x from table1union select y from table2union all语法(结果集有重复)select x from table1union allselect y from table22.CTE(Common Table Expression)公共表表达式,可以认为是在单个 SELECT、INSERT、UPDATE、DELETE 或 阅读全文
posted @ 2013-12-25 10:44 HackerVirus 阅读(207) 评论(0) 推荐(0)
摘要: Easyui入门视频教程 第03集---Easyui布局Easyui入门视频教程 第03集---Easyui布局目录-----------------------Easyui入门视频教程 第06集---Layout初始化和属性方法使用Easyui入门视频教程 第05集---Easyui复杂布局Easyui入门视频教程 第04集---Easyui布局Easyui入门视频教程 第03集---Easyui布局Easyui入门视频教程 第02集--- ASP.NET MVC下 搭建 EasyUI环境Easyui入门视频教程 第01集---认识Easyui-----------------------回 阅读全文
posted @ 2013-12-25 10:41 HackerVirus 阅读(354) 评论(0) 推荐(0)
摘要: 基于ASP.NET MVC 4/5 Razor的模块化/插件式架构实现概述 在日常开发中, 我们经常谈起模块化/插件化架构,这样可既可以提高开效率,又可以实现良好的扩展性,尤其对于产品化的系统有更好的实用性。架构 我们采用的是MVC5(本文中介绍的方法对于MVC4也是适用的),如下图,解决方案中有四个项目,其中 WeDiscuss 为前端,WeDiscuss.Plugin.Framework 为插件公共类库 WeDiscuss.Plugin.Album 为插件(相册) WeDiscuss.Plugin.News 为插件(新闻),本文只是讲解决插件的实现方式,就不多做其它如果业务逻辑、数据访.. 阅读全文
posted @ 2013-12-25 00:34 HackerVirus 阅读(1551) 评论(0) 推荐(1)
摘要: .Net 并行计算 ----数据并行从第一台计算机问世到现在计算机硬件技术已经有了很大的发展。不管是现在个人使用的PC还是公司使用的服务器。双核,四核,八核的CPU已经非常常见。这样我们可以将我们程序分摊到多个计算机CPU中去计算,在过去并行化需要线程的低级操作,难度很大,在.net4.0中的增强了对并行化的支持,使得这一切变得非常简单 。本次我从以下几个方面大家讲以下.NET 并行 数据并行 任务并行 并行Linq 任务工厂 注意事项 本次主要给大家讲一下数据并行 废话不说,下面开始了 数据并行其实就是指对原集合或者数组中的数据进行划区之后分摊到多个CPU或者多个线程执行相同的操作 在 .n 阅读全文
posted @ 2013-12-25 00:24 HackerVirus 阅读(664) 评论(0) 推荐(0)