Design Patterns and Expriences.
摘要:软件工程中的大多数思想都是集中在管理复杂度上面的--结构化编程尝试通过粗粒度的代码与设计划分来降低复杂度;面向对象编程尝试通过建立结合状态与行为的抽象体来降低复杂度;基于组件的软件尝试通过基于抽象接口和协议划分应用程序模块来降低复杂度。基于组件的软件的梦想是构造一个世界,让水平一般的程序员就能使用高级语言和工具将组件组装起来。这当然假设这个世界里面的问题域能被分解成相互之间通过简单的方法调用进行交...
阅读全文
摘要:一些 面向对象的设计 法则 Bob Tarr 著 outmyth 译 mahope 校 n 法则#1:将类和成员的可访问性最小化 [Minimize The Accessibility of Classes and Members] 抽象的含义 n Tony Hoare: “抽象起源于对真实世界中的对象、事态、过程之间的相似性的认识...
阅读全文
摘要:最近在读 Marting Fowler 所著的 Refactoring Improving the Desgin of Existing Code 一书。身体力行地完成了" a First Exmaple"--从一个现有代码的重构过程。 我是用VS.NET 2005 beta2 来做的。虽然这个版本已经实现了不少重构的工具,诸如 Rename、Encapsulate field、E...
阅读全文
摘要:这两天学习设计模式,弄了一个算24的程序。 程序是这样的:任意给出4个1-10的数,加上+ - * / 四个运算符中选择三个进行排列组合。 按照逆波兰表达式 用 Interpreter 模式解析这个字符串序列,并且计算结果,如果等于24就打印出表达式。 其中排列组合采用了微软网站上的代码,其他部分都是原创。 这里提供c#项目源代码供大家参考 上下文类: public...
阅读全文