devise模式和架构模式有什么区别?
当我们阅读互联网上的devise模式时,我们注意到有三类:
- 创力
- 结构
- 行为的
但是当我们创build一个软件的体系结构时,我们会考虑MVP,MVC或MVVM。
例如,在创build模式中,我find了单例模式 ,但是我也在我的MPV中使用了单例模式 。
所以我的问题是:devise模式是一个产品的所有结构?
-
如果是的话,那么singleton如何成为devise模式呢? 因为我可以在应用程序的任何地方使用它。 基本上,它仅限于在内存中一次创build一个实例,但是这个概念不定义软件是如何devise的?
-
如果不是,那么MVP,MVC和MVVM在三类模式中哪里是? 软件的devise和体系结构有什么区别?
这需要一个详细的解释,但我会尝试勾画差异,以我所知。
模式是在程序中find的提炼的通用性。 它使我们能够解构一个庞大复杂的结构,并使用简单的零件来构build。 它为一类问题提供了一个通用的解决scheme。
一个庞大复杂的软件经历了一系列不同层次的解构。 在很大程度上,build筑模式是工具。 在较小的层面上,devise模式是工具,在实现层面,编程模式是工具。
模式可以发生在非常不同的级别。 见分形 。 快速sorting,合并sorting都是按顺序组织一组元素的algorithm模式。
对于一个最简单的观点:
Programming paradigms Specific to programming language ...................... Design patterns Solves reoccurring problems in software construction ...................... Architectural patterns Fundamental structural organization for software systems ......................
习语是特定于范例的和特定于语言的编程技术,填补了低级细节。
devise模式通常与代码级共同性相关联。 它提供了各种精炼和build造较小子系统的scheme。 它通常受编程语言的影响。 由于语言范式,一些模式变得微不足道。 devise模式是中等规模的策略,充实了一些实体及其关系的结构和行为。
尽pipe架构模式在devise模式上被看作是更高层次的共性。 架构模式是涉及大规模组件,系统的全局属性和机制的高层次策略。
如何获得模式? 通过:
- 再利用,
- 分类
- 最后抽象提炼共性。
如果你遵循上面的想法。 你会看到Singleton是一个“devise模式”,而MVC是处理关注点分离的“架构”模式之一。
尝试阅读:
devise模式是众所周知的,以多次certificate自己的方式解决技术问题的模式。 devise模式是用于创build可重用的面向对象软件的常见devise结构和实践。 devise模式的例子是工厂模式,单例模式,外观模式,状态模式等等。devise模式可以用来解决整个应用程序中较小的问题,而且比整体架构更容易注入,更改和添加
架构模式是解决软件应用程序架构问题的众所周知的模式。 软件应用程序体系结构是定义满足所有技术和操作要求的结构化解决scheme的过程。 应用程序的架构是代码的整体“组织”。 不同体系结构的例子可能是MVC,MVVM,MVP,n层(即UI-BLL-DAL)等。架构通常需要事先做出决定,而且一旦构build应用程序,往往难以改变。
那么,主要部分是语言问题。 根据我的经验,devise和build筑之间的界限,就软件而言,是一条由水位引起的宽阔的河stream,而河水的宽度又主要受到销售季节的影响。 一般而言,术语“devise”与软件产品行为的最终用户所认可的强烈方面一起使用,而“体系结构”代表软件的技术结构,即组件,库,协议和任何它需要满足的devise。 “devise模式”有两个作用:第一,它们被认为是解决(或多或less)标准问题类别的最佳实践,而不是产品; 第二,他们帮助开发人员沟通。 继续以单例为例,它使我们能够通过使用单词而不是每次都解释我们通过使用指定的数据空间(variables或其他)来创build单个实例,从而知道机制是什么。一个受控制的方式,并保证是唯一的,因为我们保护了类的构造函数等所以恕我直言你的问题的简短答案是:这取决于谁在说话。 这是否有道理?