锁定老帖子 主题:java设计模式全解[2]-抽象工厂模式
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-06-10
抽象工厂模式(Abstract Factory)<o:p></o:p>本文参考Terrylee的博客 另外可参考lintomny的www.iteye.com/article/70952 的抽象工厂[他的代码相对我的更详细] 概述 虚拟案例<o:p></o:p> 中国企业需要一项简单的财务计算:每月月底,财务人员要计算员工的工资。<o:p></o:p> 员工的工资 = (基本工资 + 奖金 - 个人所得税)。这是一个放之四海皆准的运算法则。<o:p></o:p> 为了简化系统,我们假设员工基本工资总是4000美金。<o:p></o:p> 中国企业奖金和个人所得税的计算规则是:<o:p></o:p> 奖金 = 基本工资(4000) * 10%<o:p></o:p> 个人所得税 = (基本工资 + 奖金) * 40%<o:p></o:p> 我们现在要为此构建一个软件系统(代号叫Softo),满足中国企业的需求。<o:p></o:p> 案例分析<o:p></o:p> 奖金(Bonus)、个人所得税(Tax)的计算是Softo系统的业务规则(Service)。<o:p></o:p> 工资的计算(Calculator)则调用业务规则(Service)来计算员工的实际工资。<o:p></o:p> 工资的计算作为业务规则的前端(或者客户端Client)将提供给最终使用该系统的用户(财务人员)使用。 现在又要将程序拿到美国使用 针对美国企业为系统建模<o:p></o:p> 为了拓展国际市场,我们要把该系统移植给美国公司使用。<o:p></o:p> 美国企业的工资计算同样是: 员工的工资 = 基本工资 + 奖金 - 个人所得税。<o:p></o:p> 但是他们的奖金和个人所得税的计算规则不同于中国企业:<o:p></o:p> 美国企业奖金和个人所得税的计算规则是:<o:p></o:p> 奖金 = 基本工资 * 15 %<o:p></o:p> 个人所得税 = (基本工资 * 5% + 奖金 * 25%) <o:p></o:p> 根据前面为中国企业建模经验,我们仅仅将ChineseTax、ChineseBonus修改为AmericanTax、AmericanBonus。 [不是太稳定提交保存下] 好现在给出代码:代码比较断就写在一个文件里面了 java 代码
java 代码
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-06-11
呵呵 这一篇就简单的讲讲 如果要深入了解 可以参见社区里面别的帖子 ,在这里给出这篇文章只是想人帖子看起来更系列一点
|
|
返回顶楼 | |
发表时间:2007-06-12
哦,多么优雅的代码
|
|
返回顶楼 | |
发表时间:2007-07-18
跑题了吧兄弟
|
|
返回顶楼 | |
发表时间:2007-07-18
这是抽象工厂模式吗
|
|
返回顶楼 | |
浏览 5625 次