网站设计关于MVC框架的4+1视图方案详解,网站设计公司提醒一个软件架构有多个关注点,每个关注点都有自己的系统分解方法。在设计架构时,架构师必须从这些关注点出发来描述架构,并把架构的设计通过文档传递给系统设计人员。尝试从多个关注点来描述架构是十分困难的事情,为此一些研究者提出了很多的设计方法。其中,Philippe Kruchten在IEEE Software上发表的论文The 4+1 View Model of Architecture中首次提出的4+1视图完美地解决了这个问题。"4+1视图”从5个从不同的侧面来描述架构,其中包括4个主视图和一个冗余的场景视图。网站建设设计公司真能给你出如下4个主视图分别如下:
·逻辑视图(Logical View) :对象模型(使用面向对象的设计方法)。·进程视图(Process View):捕捉设计的并发和同步特征。
·物理视图(Physical View) :定义软件到硬件的映射,反映架构的分布式特性。
·开发视图(Development View) :定义在开发环境中软件的静态组织结构。在进行设计架构时,可以说架构的各个关注点都归结于以上4个视图,使用一个场景视图对它们进行解释和说明,就形成了第5个视图,如图3.4所示。
在设计架构时,会基于每个视图对系统进行独立分解,每种分解都是基于这个视图的关注点而进行的。基于每个视图的分解都会使用相同的方法和步骤,把系统分解成组件并维持组件间交互的关系。但是每个视图构成的组件类型各不相同,这些组件的类型源自视图分解的需求。同时,在进行系统分解时可以为每个视图选择不同的架构风格,允许系统中不同风格的并存。
网站设计的逻辑视图描述了对用户提供的功能支持。这意味着逻辑视图的分解依赖于需要解决的问题。在使用面向对象解决问题时,构成逻辑视图的组件是对象,架构师根据需要解决的问题定义抽象类,再定义对象之间类的继承、组合和关联等关系。进程视图描述的是系统的非功能性需求,即系统在运行时的分布性和并发性,以及逻辑视图中的主要对象如何运行在不同的进程中的问题。进程视图的组件是程序中的进程,而描述它们关系的是消息、事件发布和远程调用等。
开发视图关注的是架构如何指导开发流程,在这个视图中,软件系统会被分解成小的子程序或软件包(类库),并为每个子程序或软件包定义接口。系统设计人员会根据这些分解的子程序和软件包分配工作内容。
物理视图关注的是支撑软件功能的硬件性能,也是非功能性需求,主要体现在吞吐量、可靠性和可用性上。物理视图主要考虑如何把软件映射到硬件节点上,并解决网络的拓扑关系以及硬件的安装、连接和通信等问题。
软件产品是用来满足用户需求的。同样,软件的架构是用于满足软件开发需求的。也就是说,架构的最终目的也是为了满足用户的需求。用例和场景都用于描述用户的需求方式,用例是通过用户使用的场景来获取需求,一个用例有很多场景,在架构设计中更强调场景的作用,“4+1视图”是场景驱动设计的。通过增加场景视图,可以与其他视图原生无缝地结合起来共同描述系统架构。
架构师在设计架构时,其实是先在大脑中把整个系统搭建起来,再使用场景去验证这个架构是否能满足需求。当然,架构师不可能永远把对软件产品的设想装在大脑中,他需要把这个蓝图展现出来,用以指导设计人员的开发。“4+1视图”就是展现这个蓝图的解决方案。本节只是简单介绍了架构和“4+1视图”的概念和定义,网站设计公司后面章节中会结合项目示例详细介绍运用“4+1视图”设计架构的方法。好了,
深圳网站设计公司本文“网站设计关于MVC框架的4+1视图方案详解”的建站经验就分享到这里,谢谢关注,博纳网络编辑整理。