码迷,mamicode.com
首页 > 其他好文 > 详细

三、类模型-应用设计原则和设计模式

时间:2018-02-19 10:24:43      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:gpo   目的   定义   项目开发   应用设计   pos   可扩展   blog   迭代   

精雕细琢,设计良好的类与类关系

【设计原则】

无论项目开发流程用哪种模式,瀑布、迭代、螺旋、敏捷等。只要是面向对象设计,都应该应用设计原则以提高设计质量

设计SOLID原则:

技术分享图片

1.设计原则有什么用?

    设计原则就像一把尺子,是衡量类设计的尺子。通过分析来判断设计的类是否符合设计原则的这5个标准,进而调整类的设计,达到设计良好的目的。

2.为什么要用设计原则来衡量类设计的好坏?

    因为设计原则是为了保证类的可扩展性的,这也是面向对象设计的核心目的。

POS机的例子:

    我们经过分析后,发现交易类直接依赖了“会员卡”、“购物卡”、“信用卡”、“现金”这四个子类,这样不符合DIP原则,如果要增加新的交易方式,那么“交易”类也要跟着修改。所以,我们增加了一个“支付”类作为这四个子类的父类,“交易”类依赖于支付类(多态的形式)。

技术分享图片

 

【设计模式】

设计模式归根到底也是为了保证类的可扩展性的。

设计模式和设计原则相互之间是互补的关系。

设计原则用于指导“类的定义”的设计,设计模式用于指导“类的动作”的设计。也就是说,设计原则是类的静态设计原则,设计模式是类的动态设计原则。

一般采用“先设计原则,后设计模式”的方式来操作。

还是POS机的例子:

    通过分析我们发现“信用卡”这个类存在优化空间。“信用卡”有多个品牌,每个品牌的接入方式、协议、认证等都是不同的。为了封装这种差异,我们应用设计模式的Bridge模式,提取出“信用卡处理”类,这个类主要的职责是处理“连接”、“认证”、“扣款”这些职责。所有品牌的信用卡都继承"信用卡处理"类。

技术分享图片

 

三、类模型-应用设计原则和设计模式

标签:gpo   目的   定义   项目开发   应用设计   pos   可扩展   blog   迭代   

原文地址:https://www.cnblogs.com/mysic/p/8452363.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!