标签:设计思想 框架 -- 大量 blog 对象 oob 封装 软件
一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
总结:MVC就是类似三层的一种架构,主要还是采用封装(分层)的思想,来降低耦合度,从而使我们的系统更加的灵活,扩展性更好。
? ? ??Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
? ? ? View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
? ? ? Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据
? ? ? ??小编点睛:
? ? ? ? ??
? ? ? ?(1)首先,最重要的一点是多个视图能共享一个模型。同一个模型可以被不同的视图重用,大大提高了代码的可重用性。
? ? ? ?(2)由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松耦合的构件。
? ? ? ?(3)此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。
? ? ? ?(1)增加了系统结构和实现的复杂性。
? ? ? ? ? 对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
(2)视图与控制器间的过于紧密的连接。
? ? ? ? ? ?视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。
(3)视图对模型数据的低效率访问。
? ? ? ? ? ? ?依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。
(4) 目前,一般高级的界面工具或构造器不支持MVC架构。
? ? ? ? ? ? ? 改造这些工具以适应MVC需要和建立分离的部件的代价是很高的,从而造成使用MVC的困难
? ? ? ??小编点睛:根据MVC的优缺点,我们知道,每个东西都有自己适用的范围。
? ? ? ?对于开发存在大量用户界面,并且业务逻辑复杂的大型应用程序,MVC将会使你的软件在健壮性、代码重用和结构方面上一个新的台阶。尽管在最初构建MVC框架时会花费一定的工作量,但从长远角度看,它会大大提高后期软件开发的效率。
? ? ? ? 所以我们在具体适用时,要综合考虑其适用范围,
标签:设计思想 框架 -- 大量 blog 对象 oob 封装 软件
原文地址:https://www.cnblogs.com/anliux/p/11429057.html