我们使用MVC
作为我们的架构模式,并希望在项目的某些部分使用MVP
或VIPER
模式。 是否可以在同一项目中拥有多个体系结构模式。 这是一个好的做法吗?
我的回答有点轶事,但我认为还可以。随着新架构的出现,尤其是那些优于旧约定的架构,只有继续/尝试它们才有意义。现在的问题是,你是否应该无限期地保持这种状态,我会说不。当你有时间/愿意时,你绝对应该把它重构到新的架构中。这只是我的两分钱。
非常好的问题@Marlon。首先,我想告诉你,这完全是关于VIPER组件(如视图,控制器,交互器,演示者,路由(之间的责任分离。
它更多的是关于在开发过程中随时间变化的口味。有许多架构模式,如MVC,MVVP,MVVM等。随着时间的推移,当我们的口味发生变化时,我们会从MVC变成VIPER。有人从MVVP变成了毒蛇。
通过保持班级人数较少的线路来使用您的声音视觉。您可以将数据源方法保留在 ViewController 本身中,也可以创建符合 UITableViewDatasoruce 协议的自定义对象。
我的目标是保持视图控制器的苗条,每个方法和类都遵循单一责任原则。
Viper有助于创建高度凝聚力和低耦合的软件。
在使用这种开发模型之前,应该对阶级之间的责任分配有充分的了解。
一旦你对iOS中的Oops和协议有了基本的了解。您会发现此模型与MVC一样简单。
没问题,您可以开始为新模块使用新模式或为现有模块重构。人们必须从某个地方开始。
所有这些都属于 随着时间的流逝和应用程序的发展,推迟架构侵蚀。