`
lizhuang
  • 浏览: 893699 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

mvc模式

阅读更多
模型类

一个好的模型类应该使用独立于表现层的方式封装数据,模型类应该只引用其他模型类,不应该收用视图或控制器。模型类可能有一个委托恰好是一个控制器,但应该使用协议实现,这样它便不必引用特定的控制器。

在模型类中请尽量使用不可变的对象,不可变对象可以通过调用retain实现copy。因为对象无法改变,你不必创建一个真正的副本。

模型类是系统中最容易测试和重用的类,设计好它们是提高代码整体水平的最好方法。

视图类

视图类负责与用户交互,它们提供信息接受用户事件。可有一个恰好是控制器的委托。

硬件优化的轻量级视图类一般叫“layer”。

视图负责从用户接受事件,但不处理它们。当用户触碰视图,该视图可能提醒一个委托说明它已被触碰,但它不能执行逻辑或者修改其他视图,这些事务由控制器处理。

控制器类

模型和视图由控制器联系,控制器实现大部分应用程序逻辑。控制器往往是程序中最不可能重用的部分,因此关键的一点就是不允许视图和模型类直接引用它们。控制器也应该避免直接引用其他控制器。所谓“直接引用”,指的是引用特定类,引用通过控制器实现的协议是可行的。

一个常见的错误是允许许多对象直接引用应用程序委托。
//不要这样做,是错的
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
Something *something = [appDelegate something];


访问全局对象更好的方式是单例模式。

模型-视图-控制器模式对于提高代码可重用性非常有效。正确的应用MVC有助于程序与Cocoa框架的融合并简化开发过程。
分享到:
评论

相关推荐

    mvc模式mvc模式

    mvc模式mvc模式mvc模式mvc模式mvc模式mvc模式mvc模式mvc模式mvc模式

    网上购买图书案例MVC模式

    【网上购买图书案例MVC模式】是一个典型的软件开发实践,主要使用了Model-View-Controller(MVC)架构模式来构建一个在线图书销售系统。在这样的系统中,MVC模式帮助我们有效地分离业务逻辑、数据处理和用户界面,...

    MVC模式实现书城购物车系统

    本项目是一个基于JavaEE技术栈的MVC模式实现的网上书城购物车系统。这个系统的设计目的是为了帮助初学者深入理解MVC(Model-View-Controller)设计模式,以及如何在实际开发中应用这一模式来构建一个功能完善的电子...

    MVC模式(求三角形面积、计算).pptx

    MVC 模式详解 MVC 模式是软件设计中一种非常重要的模式,它将软件或组件分为三个部分:模型(Model)、视图(View)和控制器(Controller)。这种模式已经 menjadi 必备的开发模式之一,广泛应用于 Web 开发、移动...

    运用MVC模式及观察者模式的java小程序

    在这个名为“运用MVC模式及观察者模式的java小程序”的项目中,我们重点探讨了两种经典的设计模式:Model-View-Controller(MVC)模式和Observer(观察者)模式。这两种模式在JavaWeb开发中扮演着至关重要的角色。 ...

    mvc模式jsp计算器

    **MVC模式与JSP计算器应用** 在Web开发领域,MVC(Model-View-Controller)模式是一种常用的设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。MVC模式的主要目标是...

    基于jspMVC模式的成绩管理系统

    **基于jspMVC模式的成绩管理系统详解** 在信息技术领域,开发Web应用程序时,Model-View-Controller(MVC)模式是一种广泛采用的设计模式。本项目"基于jspMVC模式的成绩管理系统"是一个采用JavaServer Pages(JSP)...

    经典mvc模式开发好

    **经典MVC模式详解** **一、MVC模式概述** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于Web应用开发中,它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。...

    C++的MVC模式简单示例

    **C++中的MVC模式详解** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于构建用户界面,特别是在Web开发和图形用户界面(GUI)应用中。C++作为一个强大的面向对象编程语言,同样可以利用MVC模式来...

    基于mvc模式下的登录注册

    总的来说,"基于MVC模式下的登录注册"项目展示了如何在Web开发中利用MVC模式来分离关注点,提高代码的可维护性和可扩展性。通过合理划分模型、视图和控制器的职责,我们可以更有效地组织和管理代码,同时提供更直观...

    MVC模式网上书店系统

    **MVC模式网上书店系统详解** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于构建Web应用程序,特别是在Java EE、.NET等框架中。它将应用程序的业务逻辑、用户界面和数据访问层分离,使得各部分...

    MVC模式jsp网上书店系统

    **MVC模式** MVC(Model-View-Controller)模式是一种广泛应用在Web开发中的软件设计模式,它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。这种分离使得代码结构清晰,易于...

    MVC模式的Java编写学生管理系统源码

    **MVC模式详解** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于构建Web应用程序,尤其是在Java开发中。它将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller),以...

    基于MVC模式图书管理系统论文

    "基于MVC模式图书管理系统论文" 本文主要介绍了基于MVC模式的图书管理系统的设计与实现。该系统使用了MVC设计模式和Struts框架,旨在提高图书管理的效率和准确性。 知识点1:MVC模式的优点 MVC模式是一种软件设计...

    PHP__单入口MVC模式实例

    单入口MVC模式则是这种模式的一个变体,它强制所有请求都通过一个单一的入口点进入,从而更好地控制和管理应用程序流程。 首先,让我们详细了解一下“单入口”概念。在单入口MVC模式下,所有的HTTP请求都会通过一个...

    jsp中的 mvc模式开发 实例

    本实例主要探讨如何在JSP中应用MVC模式进行开发,特别适合初学者学习。 **一、MVC模式介绍** MVC模式是一种软件设计模式,将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种...

    as3写的拼图游戏,mvc模式开发,xml配置。

    这对于初学者理解MVC模式以及AS3在游戏开发中的应用极具价值。 首先,让我们了解AS3。ActionScript 3是Adobe Flash Platform的主要编程语言,用于创建交互式内容、应用程序和网络服务。它具有高性能、面向对象的...

    一个典型的MVC模式Test

    **MVC模式详解** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于Web应用开发中,尤其在Java、.NET等框架中应用广泛。它将应用程序的业务逻辑、用户界面和数据访问分离开来,提高了代码的可维护性...

    ExtJS的MVC模式

    ExtJS的MVC模式是其框架的核心特性之一,主要用于组织和管理复杂的用户界面代码,确保应用的可维护性和可扩展性。在深入讲解MVC模式之前,先了解一下ExtJS本身。ExtJS是一款基于JavaScript的开源UI库,它提供了一套...

    MVC模式和Struts框架

    MVC模式和Struts框架

Global site tag (gtag.js) - Google Analytics