代码改变世界

推荐排行榜

数十行F#打造简易Comet聊天服务

2009-12-11 12:00 by Jeffrey Zhao, 11885 阅读, 收藏,
摘要: 普通的Web应用程序,都是靠大量HTTP短连接维持的。如实现一个聊天服务时,客户端会不断轮询服务器端索要新消息。这种做法的优势在于简单有效,因此广为目前的聊天服务所采用。不过Comet技术与之不同,简单地说,Comet便是指服务器推(Server-Push)技术。它的实现方式是(这里只讨论基于浏览器的Web平台)在浏览器与服务器之间建立一个长连接,待获得消息之后立即返回。否则持续等待,直至超时。客户端得到消息或超时之后,又会立即建立另一个长连接。Comet技术的最大优势,自然就是很高的即使性。而F#实现一个Comet原型,只要几十行代码。 阅读全文

重谈字符串连接性能(中):细节实现

2009-12-03 10:10 by Jeffrey Zhao, 10560 阅读, 收藏,
摘要: 根据上次的评测结果,我们了解了几种字符串拼接方式的性能高低。从中可以看出,广受追捧的StringBuilder性能似乎并不是最好的,String.Concat方法有时候有时候更适合使用。那么为什么String.Concat方法性能那么高,StringBuilder又为什么落败,而我们又有没有什么可以改进的做法呢?为此,我们不妨动用.NET Reflector这一利器,看一下两者是怎么实现的。 阅读全文

一系列技术视频:MIT 6.00,Channel 9 E2E,FP Foundamentals

2009-11-25 10:12 by Jeffrey Zhao, 8490 阅读, 收藏,
摘要: 最近看一些技术视频上瘾,每天都要看一两个才满足,有时还会整理整理总结总结。视频的来源主要是Channel 9等外国网站,它们往往必须下载到本地才能观看,代价太高。在线看的也不是没有,不过要么就在Youtube等国内无法访问的站点上,或者就因为国内没有CDN导致播放不畅。因此,我正在把一些视频上传到号称国内第一视频站的优酷上,这样便可以比较方便的播放,甚至可以拖拖看看。目前我准备了三个系列,并且还在不断地进行搬运和整理工作。 阅读全文

对Action方法的参数进行双向转化

2009-10-23 09:47 by Jeffrey Zhao, 19230 阅读, 收藏,
摘要: 昨天有朋友忽然告诉我,在G点中国上搜索URL Routing时,我的《请别埋没了URL Routing》一文排在首位。这不禁让我汗颜,这是因为从现在的角度看起来,这篇文章的内容虽不能算错,但的确也不算是一种非常合适的做法。那篇文章的目的是展示如何利用URL Routing的扩展能力,将URL和Route Values通过Formatter进行双向的转化。这样便可以在Action方法中使用复杂参数的同时,也可以使用复杂参数得到正确的URL。这个目标是好的,可惜当时的思路有些偏差。现在我总结出了更合适的做法,并已经在项目中大量使用,效果不错。 阅读全文

我对NHibernate的感受(4):令人欣喜的Interceptor机制

2009-10-13 13:45 by Jeffrey Zhao, 22881 阅读, 收藏,
摘要: 之前谈了NHibernate的几个方面,似乎抱怨的居多,不过这次我想谈一下我对Interceptor的感受,则基本上都是好话了。这并不一定是说Interceptor设计的又多么好(事实上它使用起来还是挺麻烦的),但是这的确也是我认为NHibernate超越LINQ to SQL,尤其是Entity Framework的又一个重要方面——因为Entity Framework本身也已经不差了。更重要的是,Interceptor机制让我得以实现我“理想中的”数据访问功能。当然现在只是浅尝辄止一番,我打算以后再慢慢地,详细地谈谈我所满意的“数据访问层”设计。 阅读全文
上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 67 下一页