NET系统的项目架构设计思想 第1章 架构设计入门 1.1 架构初体验

来源:互联网 发布:余潇潇淘宝店铺叫什么 编辑:程序博客网 时间:2024/05/18 02:28

第1章 架构设计入门

1.1 架构初体验
 
 架构设计是一个很广义的东西,大到项目的架构设计,小到函数的架构设计。在这里,我们会看看架构设计到底给我们带来

的什么,再看看OO设计原则,并通过重构来了解架构设计是如何运作。
 
 先从简单的方法架构设计做起

 

1.1.1

    1.1.2

如上图,我们针对两个类的调用有N总解决方案。

例如:

 

这样编写确实可以实现我们的需求,但是按OO原则,过多的使用了new 并不是好的现象。

我们先要简化NEW使用的次数,单独去实例化类,在去调用示例化的类函数,感觉会更好一些。

 

我们可以看到,上面对野鸭与红头丫的调用业务逻辑完全相同,都是display、quack、swim的顺序。这个执行顺序是固定的。是否可以将这个逻辑提取出来?当然可以,借助超类Duck我们去完成每种鸭子的“业务逻辑”。

架构设计方案1:接口模式

1.1.3

如上图,建立一个鸭子接口。MallardDuck与RedheadDuck都去继承这个接口。现在看看我们如何去调用接口

 

架构设计方案2:抽象类模式

1.1.41.1.4

如上图,创建一个鸭子的抽象类,MallardDuck与RedheadDuck都去继承Duck,由Duck去完成BusinessLogic的工作

我们可以看到Main多鸭子的调用非常的灵活。架构设计也是多样化。

架构设计方案3:封装实例

利用接口类也好,抽象类也好,都要构造子类的实例。我们是否可以让这个构造过程再次封装,将NEW减少到最低点?

 

 

架构设计方案4:类的自我静态实例

 

方案3中Instance看上去有点不论不累,让类自己去构造自己不是更好?

例如:

 

 

看看我们如何调用这个类的静态实例吧

 

 

在架构设计中,架构不是唯一的,不是一沉不变的,有更多的疑问,更过的方案供我们参考研究。

原创粉丝点击