Fork me on GitHub

2013年7月29日

摘要: 软件的模块化开发什么是模块化模块化这个词最早出现在研究工程设计中的《Design Rules》,这本探路性质的书中。其后模块化原则还只是作为计算机科学的理论,尚不是工程实践。此时硬件的模块化一直是工程技术的基石之一。如标准螺纹、汽车组件、计算机硬件组件等。软件模块化的原则也是随着软件的复杂性诞生的。从开始的机器码、子程序划分、库、框架、再到分布在成千上万公里的互联网上主机上的程序库。模块化是解决软件复杂性的重要方法之一。模块化以分治法为依据,但是否意味着我们把软件无限制的细分下去。事实上当分割过细,模块总数增多,每个模块的成本确实减少了,但模块接口所需代价随之增加。要确保模块的合理分割则须了解 阅读全文
posted @ 2013-07-29 09:43 HackerVirus 阅读(349) 评论(0) 推荐(0)
摘要: 在C#中模拟Javascript的setTimeout方法背景每种语言都有自己的定时器(Timer),很多人熟悉Javascript中的setInterval和setTimeout,在Javascript中为了实现平滑的动画一般采用setTimeout模拟setInterval,这是因为:setTimeout可以保证两次定时任务之间的时间间隔,而setInterval不行(小于设置的间隔时间)。C#中如何模拟setTimeout呢?System.Timers.Timer模拟setInterval代码 1 using System; 2 using System.Collections.Gene 阅读全文
posted @ 2013-07-29 09:41 HackerVirus 阅读(353) 评论(0) 推荐(0)
摘要: IP:网际协议1.概述 IP是TCP/IP协议族中最为核心的协议。所有的TCP,UDP,ICMP,IGMP数据都以IP数据报格式传输。 IP提供不可靠,无连接的数据报传送服务。不可靠:它不能保证IP数据报能成功的到达目的地。无连接:IP并不维护关于后续数据报的状态信息。每个数据报的处理都是相互独立的。2.IP数据报 IP数据报的格式如图所示,普通的IP数据报首部为20个字节,除非含有选项字段。版本号:目前的版本号为4,即IPv4首部长度:指的是首部占32bit字的数目,包括选项长度服务类型(TOS):(现在大多数的TCP/IP实现不支持TOS特性)4bit的TOS分别代表:最小延迟,最大... 阅读全文
posted @ 2013-07-29 09:40 HackerVirus 阅读(250) 评论(0) 推荐(0)
摘要: 强悍的跨平台开源多媒体中心XBMC介绍最近都在了解Android下的音视频,因为最近需要做一个多媒体中心的APP,其中了解了一个开源项目XMBC,一个十分强大的开源多媒体中心,而且可以应用在多个平台上,今天我们来了解一下这个强悍的开源项目。(PS:新建的QQ群,有兴趣可以加入一起讨论:Android群:322599434)1、简介 下面摘录一段官网翻译的介绍,让大家先有个大概的了解: 是一个优秀的自由和开源的(GPL)媒体中心软件。XBMC最初为Xbox而开发,可以运行在Linux、OSX、Windows、Android4.0系统。 2003年,一些兴趣相投的程序员创建了这个项目。XBMC.. 阅读全文
posted @ 2013-07-29 09:31 HackerVirus 阅读(1471) 评论(0) 推荐(0)
摘要: 基于Redis缓存的Session共享(附源码)在上一篇文章中我们研究了Redis的安装及一些基本的缓存操作,今天我们就利用Redis缓存实现一个Session共享,基于.NET平台的Seesion共享用的最多的应该是SQLServer数据库实现,我之前参与的一个项目么么亲子社区就是用的SQLSERVER实现不同子域名之间的Session共享。先打个广告嘿嘿,么么亲子网:enmuo.com,i.enmuo.com就是通过SQLSERVER实现Session共享 欢迎大家访问。该片文章主要介绍主域名跟不同子域名之间的Session信息共享。纠正上一篇文章中关于RredisHelper类中的一个错 阅读全文
posted @ 2013-07-29 00:20 HackerVirus 阅读(2516) 评论(0) 推荐(0)
摘要: .NET JSON对象序列化和反序列化昨晚和几个哥们打字牌,打了个通宵,早上睡了2个多小时,发现精神还很抖擞(要是写代码有这么给力...哎。碉堡了)。闲来无事,打开VS,coding总结了下.NET序列化:序列化定义:序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。下面要介绍的是.net提供的序列化对象DataContractJsonSerializer,他主要是用于将对象转化为JSON格式数据以及将JSON反序列化为对象。直接上代码吧,可以直接在控制台打印出结果: 1 class Program .. 阅读全文
posted @ 2013-07-29 00:17 HackerVirus 阅读(174) 评论(0) 推荐(0)
摘要: 使用MiniProfiler给Asp.net MVC和Entity Framework号脉(附源码)在学习python开发框架pylons/pyramid的过程中,里面有个非常棒的页面性能监控功能,这样在开发过程中,你能清楚的知道当前页面的性能以及其它参数。这里介绍一下如何给Asp.net MVC和Entity Framework也添加上性能监控,让你在开发过程中随时掌握当前程序运行的信息。这里是在Autofac+MVC+EF篇的源码基础上,一步一步的介绍添加Profiler的过程。如果有兴趣了解Autofac的应用,可以看这里IoC容器Autofac(4) - Autofact + Asp. 阅读全文
posted @ 2013-07-29 00:15 HackerVirus 阅读(229) 评论(0) 推荐(0)
摘要: MVVM 开发的几种模式讨论(WPF)在WPF系(包括SL,WP或者Win8)应用开发中,MVVM是个老生常谈的问题。初学者可能不会有感觉,但当你写一个核心逻辑能在各种平台上无缝移植,而只需改改UI的时候,那种快感是无法用语言来形容的。 笔者当初接触时,对MVVM并不以为然,编了很多代码以后,反过来看MVVM for WPF的经典文章以后,才若有顿悟。标准的MVVM把程序分成了Model, ViewModel和 View三个部分,但方法是死的,人是活的。我一般的做法是逻辑写一个,View写一个,没有那么严格。为了方便讨论,我们把ViewModel和Model合称Model, View还是Vie 阅读全文
posted @ 2013-07-29 00:12 HackerVirus 阅读(307) 评论(0) 推荐(0)
摘要: 解决SQLSERVER在还原数据时出现的“FILESTREAM功能被禁用”问题解决SQLSERVER在还原数据时出现的“FILESTREAM功能被禁用”问题 今天由于测试需要,在网上下载了Adventureworks2008实例数据库的BAK文件,进行还原时出现了这样的错误“FILESTREAM功能被禁用”,如下图所示: 遇到上面的问题,我们通常的做法是通过SQLSERVER配置管理器,对SQLSERVER实例服务做如下设置再重启SQLSERVER实例服务即可成功,如下图所示: 一般情况通过上面的设置,即可成功还原,但在还原Adventureworks2008数据库时,通过上面的设置后,... 阅读全文
posted @ 2013-07-29 00:08 HackerVirus 阅读(346) 评论(0) 推荐(0)
摘要: 用.NET MVC实现长轮询,与jQuery.AJAX即时双向通信两周前用长轮询做了一个Chat,并移植到了Azure,还写了篇博客http://www.cnblogs.com/indream/p/3187540.html,让大家帮忙测试。首先感谢300位注册用户,让我有充足的数据进行重构和优化。所以这两周都在进行大重构。其中最大的一个问题就是数据流量过大,原先已有更新,还会有Web传统“刷新”的形式把数据重新拿一次,然后再替换掉本地数据。但这一拿问题就来了,在10个Chat*300个用户的情况下,这一拿产生了一次8M多的流量,这是十分严重的事情,特别是其中绝大部分数据都是浪费掉了的。那么解决 阅读全文
posted @ 2013-07-29 00:04 HackerVirus 阅读(2010) 评论(0) 推荐(0)