Fork me on GitHub

2013年7月19日

摘要: 为什么不能在子类或外部发布C#事件背景一个朋友问了一个问题:“为什么不能在子类或外部发布C#事件?”,我说我不知道,要看看生产的IL代码,下面我们看看。测试代码 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace EventStudy 8 { 9 class Program10 {11 static void Main(string[]... 阅读全文
posted @ 2013-07-19 11:08 HackerVirus 阅读(337) 评论(0) 推荐(0)

2013年7月18日

摘要: HTML5 拖放及排序的简单实现之前写过个类似的例子,看这里.但想再深入一步,希望能通过拖放,来交换二个元素的位置.最好有应用到手机平台上.作了个简单的例子,在手机上测试的时候不成功..查了好多资料.暂时未能解决.效果如下图:相关代码如下:html5 drag and drop :在线演示查看源码HTML:123456789101112131415161718 html5 drag and droponetwothreefourfiveJavaScript:12345678910111213141516171819202122232425262728var origin;$(".co 阅读全文
posted @ 2013-07-18 23:16 HackerVirus 阅读(3314) 评论(0) 推荐(0)
摘要: 动态链接4动态链接4.1概述在静态链接阶段,链接器为PE文件生成了导入表,导出表,符号表,并调整了Call指令后面的操作数,在程序调用的时候,能够直接地或者间接地定位到IAT中的某个位置,在PE文件中,该位置包含符号的名称,当PE文件加载到内存以后,该位置应该修正为符号的地址。这些已有的信息和已经完成的工作是后续动态链接的基础。动态链接的任务是:在程序的加载或者运行阶段,执行各个模块的基址重定位工作,并将IAT中的符号名称修正为动态链接库中被调用的符号的地址。动态链接分为隐式动态链接和显式动态链接,无论是隐式动态链接还是显式动态链接,都会涉及到对WindowsAPI函数:LoadLibrary 阅读全文
posted @ 2013-07-18 23:14 HackerVirus 阅读(340) 评论(0) 推荐(0)
摘要: Meteor+AngularJS:超快速Web开发为了更好地描述Meteor和AngularJS为什么值得一谈,我先从个人角度来回顾一下这三年来WEB开发的变化:三年前,我已经开始尝试前后端分离,后端使用php的轻量业务逻辑框架。但当时前端还没有成熟且广泛流行的业务逻辑框架。所以在做产品开发时我仍然选用drupal等整体开发框架。开发时常常需要在javascript和php间切换,同时还要自己搞定数据库。此时的开发模型图是这样(红色箭头和红色块都表示工作重灾区):随着对用户体验的追求,我开始把业务逻辑往前端推移,于是马上遇到了前端数据与页面展示绑定的问题,业务逻辑简单时还能用jquery搞定。 阅读全文
posted @ 2013-07-18 23:13 HackerVirus 阅读(637) 评论(0) 推荐(0)
摘要: 订单系统开发(仿淘宝和美团网) 之 项目总结(一)基于公司战略的调整和开发框架的升级换代,也伴随着SOP(面向服务编程)和SOA(面向服务架构)的软件开发思想在公司开发团队中的慢慢深入,最终讨论决定在将现有(旧)的支撑公司业务的项目模块(如:产品,商家和订单...)在进行底层架构升级的同时,要让这个模块在一定程度上可以达到复用性——即它应该可以满足新的栏目('同城网购')的相关需求且适当的考虑未来的需求扩展,它不能跟其它的模块耦合在一起,只负责属于这个模块领域内的数据服务(如:产品模块只用考虑产品相关数据的读写),可以独立公开作为一个服务,且可以满足分布式部署的需求(这个由新的 阅读全文
posted @ 2013-07-18 23:12 HackerVirus 阅读(639) 评论(1) 推荐(1)
摘要: 我的TDD实践---UnitTest单元测试“我的TDD实践”系列之UnitTest单元测试写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则是关注工具的使用及环境的搭建,做到简单实践先行,后理论专精的目的。TDD实践系列文章: 1.TDD概念篇 2.CI持续集成 3.SVN架设篇 4.UnitTest单元测试 简介 1. 单元测试 1.1 定义:“单元测试”就是针对一个“工作单元”的测试,一般意义上来讲是针对一个基础类进行输入/输出测试。与之相关的是集成测试,验收测试等。这里指单纯意义上的“单元测试”。 1.2 ... 阅读全文
posted @ 2013-07-18 23:10 HackerVirus 阅读(325) 评论(0) 推荐(0)
摘要: 使用SignalR构建一个最基本的web聊天室What is SignalRASP.NET SignalR is a new library for ASP.NET developers that simplifies the process of adding real-time web functionality to your applications. Real-time web functionality is the ability to have server-side code push content to connected clients instantly as it 阅读全文
posted @ 2013-07-18 23:09 HackerVirus 阅读(386) 评论(0) 推荐(0)
摘要: Async和Await异步编程的原理1. 简介从4.0版本开始.NET引入并行编程库,用户能够通过这个库快捷的开发并行计算和并行任务处理的程序。在4.5版本中.NET又引入了Async和Await两个新的关键字,在语言层面对并行编程给予进一步的支持,使得用户能以一种简洁直观的方式实现并行编程。因为在很多文档里针对Async和Await这两个关键字的使用都被称为异步编程,为了更符合大众的阅读习惯,我们使用异步编程这个叫法,意思上和并行编程完全一样。关于Async和Await异步编程的功能说明和使用介绍,MSDN上有详细文档,链接如下:http://msdn.microsoft.com/en-us 阅读全文
posted @ 2013-07-18 23:07 HackerVirus 阅读(1100) 评论(0) 推荐(1)
摘要: 框架设计之ADO.NET Command的ExecuteScalar误用情景及底层解说最近下载了点资料,学了学Android,发现Android入门还算简单,从.NET过渡到Android,也就三七十一天的事。大伙有空也可以学学。。。好了,言归正文,那日,有网友发了一个他们公司的数据层框架的DLL,让我审视(Reflector查看如下):炸一看框架,支持的数据库种类繁多,看来写框架的人涉及面还挺广的。往里一看,比较悲催,有广度而无深度,另外数据库种类的dll需要提前引用,那是相当浩大的数据库工程:框架具体就不过多点评了,在不经意思间,本人看到有一个闪光点,觉的可以和大伙分享分享:1:检测某列是 阅读全文
posted @ 2013-07-18 23:06 HackerVirus 阅读(171) 评论(0) 推荐(0)
摘要: HBase Java简单示例Hbase采用Java实现,原生客户端也是Java实现,其他语言需要通过thritf接口服务间接访问Hbase的数据。Hbase作为大数据存储数据库,其写能力非常强,加上Hbase本身就脱胎于Hadoop故和Hadoop的兼容性极好,非常适合于存储半规则数据(灵活、可扩展性强、大数据存储)。基于Hadoop的mapreduce + Hbase存储,非常适合处理大数据。Hbase基本使用示例:import java.io.IOException; import java.util.ArrayList; import java.util.List; import or. 阅读全文
posted @ 2013-07-18 23:05 HackerVirus 阅读(302) 评论(0) 推荐(0)