一、MVC
1、MVC(Model-View-Controller) MVC是苹果官方推荐的架构模式。它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。
- 模型(Model):负责处理应用程序的数据逻辑,包括数据的获取、处理和存储。
- 视图 (View):负责展示数据给用户,并接收用户的输入。
- 控制器(Controller):作为模型和视图之间的中介,负责处理用户的输入、更新模型数据,并将更新后的数据展示在视图上。
- MVC的优点是能够将应用程序的逻辑和界面分离,使代码更加清晰和易于维护。然而,随着业务逻辑的增加,控制器可能会变得臃肿,导致维护成本增加。
2、MVVM的出现主要是为了解决在开发过程中Controller越来越庞大的问题,变得难以维护,所以MVVM把数据加工的任务从Controller中解放了出来,使得Controller只需要专注于具体业务的工作,ViewModel则去负责数据加工并通过各种通知机制让View响应ViewModel的改变。
二、MVVM
- 1、MVVM通过引入ViewModel层,将业务逻辑从控制器(Controller)中抽离出来,使得业务逻辑更加清晰,结构更加合理。
- 2、MVVM支持双向数据绑定,这意味着当模型(Model)中的数据发生变化时,视图(View)会自动更新;反之亦然。这种自动同步减少了开发者需要手动更新视图的需要,提高了开发效率和用户体验。
- 3、MVVM更适合复杂的应用程序,尤其是那些需要频繁更新UI的应用
- 4、MVC架构相对较简单,由模型、视图和控制器三个基本部分组成,适用于简单的应用程序开发。
三、单例模式
- 1、单例模式可以保证系统中一个类只有一个实例,常用于共享资源的场景。在iOS中,常见的单例对象包括UlApplication、NSNotificationCenter、NSFileManager、NSUserDefaults等[1]。
四代理模式
- 1、代理模式为某个对象提供一个代理,并由代理对象控制对原对象的访问。在i0S中,常见的代理模式应用包括UITableViewDelegate、UlTextFieldDelegate等[1]。