如果你对游戏开发比较了解,就会知道viper是什么。它是一种iOS架构,另外一些与iOS应用开发有关的开发人员也将其用作MVC之外的架构选择。
简单来说,viper需要您将您的视图(View,iOS开发中的视图是构成UI的基础)从控制器(Controller)中解耦出来,并由一个单独的viper模块(viper是软件工程中的一种设计模式)来管理。
这个模式包含视图、交互器、呈现器、实体和路由器五个部分。视图(View)的作用,很简单理解就是用户看到的界面(UI),那么交互器(interactor)是什么呢?顾名思义,它是处理相关视图(view)的业务逻辑,数据网络请求和数据处理等职责的中间人。
呈现器(Presenter)的职责是根据数据来展示视图,并与交互器交互。最后,实体(Entity)是一个保存应用程序状态和数据的容器,而路由器(Router)则是用于管理应用程序导航和流程。
到底是什么让viper如此有用呢?主要是因为它实现了MVC(模型-视图-控制器)架构中最重要的一点:解耦,让你的代码更容易测试和维护,同时也提供更好的可读性和可维护性。
viper模式是一个非常强大的iOS架构样式,以其模块化、可测试和解耦的方式来帮助iOS开发人员构建可扩展的应用程序。