随笔分类 -  05. 设计与模式

摘要:公司技术分享会的PPT,主要介绍了Kafka的最重要的一些概念,主题Topic、分区Partition、生产者Producer、消费者Consumer、消费者分组等。 阅读全文
posted @ 2018-08-21 09:46 Jimmy Zhang 阅读(4786) 评论(19) 推荐(28) 编辑
摘要:Adapter模式应该是设计模式中一个轻量级的模式,实现起来也比较简单,有时候不经意中,你可能就已经实现了一个Adapter模式,只是自己没有发现而已。本文将通过一个范例介绍 Adapter模式。 阅读全文
posted @ 2008-10-02 15:05 Jimmy Zhang 阅读(5750) 评论(8) 推荐(9) 编辑
摘要:通常在进行数据分页时,我都是在数据库中写成存储过程,但是这样有一个缺陷:没有代码重用,针对不同表或者不同视图都需要去编写存储过程。本文将一步步构建一个进行数据分页的代码模块,来尝试解决这个问题。 阅读全文
posted @ 2008-09-27 17:19 Jimmy Zhang 阅读(8395) 评论(21) 推荐(2) 编辑
摘要:本文是《Object-Oriented Analysis and Design》一书第一章和第五章的读书笔记。我对书中提供的一个范例程序进行了总结和整理,通过逐步优化这个乐器管理的范例程序,分析了进行程序设计时需要注意到的一些问题。 阅读全文
posted @ 2008-07-26 18:43 Jimmy Zhang 阅读(2933) 评论(4) 推荐(2) 编辑
摘要:抽象工厂是很常用的一种创建型模式,它的主要作用在于向程序员屏蔽了创建对象的复杂细节,这篇文章主要向大家说明了SAF中抽象工厂模式的实现方式。 阅读全文
posted @ 2008-07-26 18:41 Jimmy Zhang 阅读(2430) 评论(4) 推荐(0) 编辑
摘要:在 C#中的委托和事件 一文的后半部分,我向大家讲述了Observer(观察者)模式,并使用委托和事件实现了这个模式。实际上,不使用委托和事件,一样可以实现Observer模式。在本文中,我将使用GOF的经典方式,再次实现一遍Observer模式,同时将讲述在 C#中的委托和事件 一文中没有提及的推模式(Push)和拉模式(Pull)。 阅读全文
posted @ 2008-06-18 23:39 Jimmy Zhang 阅读(5867) 评论(22) 推荐(14) 编辑
摘要:在我 模型-视图-提供器 模式 这篇译文中,作者为了说明 MVP 的优点之一,易测性,引入了单元测试和NMock框架。可能有的朋友对这部分不够熟悉,也因为本人翻译水平有限,导致看后感觉不够明朗,所以我就补写了这篇文章,对作者给出的范例程序作了些许简化和整理,让我们一步步地来实现一个符合MVP模式的Web页面。 阅读全文
posted @ 2008-06-15 17:48 Jimmy Zhang 阅读(7093) 评论(22) 推荐(7) 编辑
摘要:模型-视图-提供器模式(MVP)是模型-视图-控制器(MVC)模式的一个改进,通过使用这个模式,可以将通常写于页面后置代码(CodeBehind)中的逻辑,委托给一个更易于测试的单独的提供器类中。 阅读全文
posted @ 2008-06-15 17:45 Jimmy Zhang 阅读(2135) 评论(1) 推荐(0) 编辑
摘要:在这篇文章中,Jeremy Miller向我们讲述了软件设计中的开闭原则,以及相关的 单一责任原则、责任链模式、双重分发 以及 Liskov 替换原则。 阅读全文
posted @ 2008-05-30 23:36 Jimmy Zhang 阅读(3329) 评论(4) 推荐(0) 编辑
摘要:本文是《Developing Application Frameworks in .NET》的读书笔记。SAF 是书中的一个范例框架,意为 Simple Application Framework(简单应用程序框架),通过这篇文章,我主要想向大家说明 SAF 中缓存服务的实现方式。 阅读全文
posted @ 2008-05-30 00:31 Jimmy Zhang 阅读(1710) 评论(2) 推荐(0) 编辑
摘要:大家每天都在看博客,发表评论,实现一个评论系统也是一名Web开发者的基本要求。虽然评论只是一个很普通的功能,但是实现评论的引用,尤其是无限引用,却有一定的困难。身为“网易工程队”的正规军,同时又作为一名程序开发人员,有必要向大家展示一下“盖楼”的方法。 阅读全文
posted @ 2008-03-24 23:08 Jimmy Zhang 阅读(10522) 评论(54) 推荐(7) 编辑
摘要:本文是《基于业务对象的筛选》的姐妹篇,在本文中,我详细讨论了IComparable和IComparer接口,并通过实现这两个接口,实现了列表的默认排序、单一属性排序、多属性组合排序。 阅读全文
posted @ 2008-03-18 03:33 Jimmy Zhang 阅读(2639) 评论(5) 推荐(2) 编辑
摘要:在这篇文章中我先提出了一些开发人员的思维定势:将操作交给数据库去完成。演示了“传统方式的”使用拼装SQL语句完成筛选,以及如何配合缓存来实现基于业务对象(列表)的筛选。 阅读全文
posted @ 2008-03-18 02:53 Jimmy Zhang 阅读(3321) 评论(12) 推荐(3) 编辑
摘要:提起Command模式,我想没有什么比一个遥控器的例子更能说明问题了,本文将对Command模式作以简单介绍,我们通过完成这个范例来一步步实现GOF的Command模式。 阅读全文
posted @ 2007-12-20 08:17 Jimmy Zhang 阅读(4843) 评论(22) 推荐(7) 编辑
摘要:本文中,我们通过一个常见的给武器(对象)添加宝石(获得额外的状态和行为)的例子,讨论了Decorator设计模式的实现过程。 阅读全文
posted @ 2007-12-14 08:26 Jimmy Zhang 阅读(3207) 评论(8) 推荐(3) 编辑
摘要:本文中我们通过一个人物外形构建的范例,一步步学习了Abstract Factory抽象工厂模式的实现。 阅读全文
posted @ 2007-12-11 23:52 Jimmy Zhang 阅读(3040) 评论(7) 推荐(0) 编辑
摘要:在本文中,我们将以一款欧美风格的奇幻角色扮演游戏为背景,通过游戏中角色技能的实现来展示GOF的Strategy设计模式。 阅读全文
posted @ 2007-12-09 17:12 Jimmy Zhang 阅读(3780) 评论(18) 推荐(7) 编辑
摘要:这篇文章摘自 《EXPERT C# 2005 BUSINESS OBJECTS》一书的第一章,作者是 Rockford hotka 。翻译这篇文章的时候,这本书的中文版还没有面世,个人觉得这篇文章写得不错,就将它翻译了,希望能对你有所帮助。 阅读全文
posted @ 2007-08-04 09:31 Jimmy Zhang 阅读(11284) 评论(30) 推荐(2) 编辑