摘要: 在我 模型-视图-提供器 模式 这篇译文中,作者为了说明 MVP 的优点之一,易测性,引入了单元测试和NMock框架。可能有的朋友对这部分不够熟悉,也因为本人翻译水平有限,导致看后感觉不够明朗,所以我就补写了这篇文章,对作者给出的范例程序作了些许简化和整理,让我们一步步地来实现一个符合MVP模式的Web页面。 阅读全文
posted @ 2008-06-15 17:48 Jimmy Zhang 阅读(7091) 评论(22) 推荐(7) 编辑
摘要: 模型-视图-提供器模式(MVP)是模型-视图-控制器(MVC)模式的一个改进,通过使用这个模式,可以将通常写于页面后置代码(CodeBehind)中的逻辑,委托给一个更易于测试的单独的提供器类中。 阅读全文
posted @ 2008-06-15 17:45 Jimmy Zhang 阅读(2134) 评论(1) 推荐(0) 编辑
摘要: 在这篇文章中,Jeremy Miller向我们讲述了软件设计中的开闭原则,以及相关的 单一责任原则、责任链模式、双重分发 以及 Liskov 替换原则。 阅读全文
posted @ 2008-05-30 23:36 Jimmy Zhang 阅读(3327) 评论(4) 推荐(0) 编辑
摘要: String可能是使用最多的类型,ToString()则应该是大家使用得最多的方法了。然而它不应该仅仅是用来输出类型的名称,如果使用得当,它可以方便地输出我们对类型自定义的格式。本文将循序渐进地讨论ToString(),以及相关的IFormattable、IFormatProvider以及ICustomFormatter接口。 阅读全文
posted @ 2008-05-30 00:33 Jimmy Zhang 阅读(3141) 评论(3) 推荐(3) 编辑
摘要: 本文是《Developing Application Frameworks in .NET》的读书笔记。SAF 是书中的一个范例框架,意为 Simple Application Framework(简单应用程序框架),通过这篇文章,我主要想向大家说明 SAF 中缓存服务的实现方式。 阅读全文
posted @ 2008-05-30 00:31 Jimmy Zhang 阅读(1709) 评论(2) 推荐(0) 编辑
摘要: 本文是《Effective C#》一书第七节的读书笔记。通过这篇文章,我主要想向大家说明一个我们平时可能不太会注意到的问题:创建具有常量性和原子性的值类型。 阅读全文
posted @ 2008-05-30 00:28 Jimmy Zhang 阅读(3265) 评论(11) 推荐(6) 编辑
摘要: 在Asp.Net中,我们可以通过模板页master page和主题theme来实现网站的风格切换,但是.Net提供的默认设置不够强大和灵活。本文将向大家介绍如何在.Net提供的方法上进行改进和扩展,以提供更加强大的网站风格切换功能。 阅读全文
posted @ 2008-04-25 00:15 Jimmy Zhang 阅读(9578) 评论(28) 推荐(0) 编辑
摘要: 本文不是讲述.Net Framework中诸多的内置结点如何设置,比如httpHandler、httpModule、membership、roleManager 等。而是讲述.Net中配置的实现方式,以及如何定义、使用我们自定义的结点。 阅读全文
posted @ 2008-04-22 00:11 Jimmy Zhang 阅读(4782) 评论(16) 推荐(12) 编辑
摘要: 大家每天都在看博客,发表评论,实现一个评论系统也是一名Web开发者的基本要求。虽然评论只是一个很普通的功能,但是实现评论的引用,尤其是无限引用,却有一定的困难。身为“网易工程队”的正规军,同时又作为一名程序开发人员,有必要向大家展示一下“盖楼”的方法。 阅读全文
posted @ 2008-03-24 23:08 Jimmy Zhang 阅读(10513) 评论(54) 推荐(7) 编辑
摘要: 本文中,我们先学习了动态创建对象最常见的两种方式,随后分别讨论了使用Type.InvokeMember()和MethodInfo.Invoke()方法来调用类型的实例方法和静态方法。最后,我们使用反射遍历了System.Drawing.Color结构,并输出了颜色值。 阅读全文
posted @ 2008-03-18 03:42 Jimmy Zhang 阅读(14617) 评论(23) 推荐(7) 编辑
摘要: 本文是《基于业务对象的筛选》的姐妹篇,在本文中,我详细讨论了IComparable和IComparer接口,并通过实现这两个接口,实现了列表的默认排序、单一属性排序、多属性组合排序。 阅读全文
posted @ 2008-03-18 03:33 Jimmy Zhang 阅读(2633) 评论(5) 推荐(2) 编辑
摘要: 在这篇文章中我先提出了一些开发人员的思维定势:将操作交给数据库去完成。演示了“传统方式的”使用拼装SQL语句完成筛选,以及如何配合缓存来实现基于业务对象(列表)的筛选。 阅读全文
posted @ 2008-03-18 02:53 Jimmy Zhang 阅读(3319) 评论(12) 推荐(3) 编辑
摘要: 本文不是讲述如何进行数据库分页,而将注意力集中在如何实现可定制地 获取页码、获取路径、显示分页链接,并且通过构建一个用户控件来实现代码重用上。 阅读全文
posted @ 2008-02-24 23:01 Jimmy Zhang 阅读(15699) 评论(43) 推荐(2) 编辑
摘要: 本文涉及了反射的最基础的内容,我们利用反射来自顶向下地查看了程序集、模块、类型、类型成员的信息。 阅读全文
posted @ 2008-02-17 16:42 Jimmy Zhang 阅读(10879) 评论(22) 推荐(16) 编辑
摘要: 本文首先讨论了C#中的两种类型--值类型和引用类型,随后简要回顾了 装箱/拆箱 操作。接着,详细讨论了C#中的对象判等。最后,我们讨论了浅度复制 和深度复制,并比较了它们之间不同。 阅读全文
posted @ 2008-01-31 08:34 Jimmy Zhang 阅读(32256) 评论(84) 推荐(37) 编辑