gpt4 book ai didi

ios - 在许多使用 VIPER 的 Controller 上使用的功能的更好位置在哪里?

转载 作者:行者123 更新时间:2023-12-05 07:14:31 26 4
gpt4 key购买 nike

我在我的 Swift 应用程序中使用 VIPER 模式。我需要一个在很多 Controller 中执行的函数来打开 cardViewStyle。我不知道在哪里添加这个功能比较好......

可以是用例吗?一个交互器?,很常见……我无法想象 VIPER 和干净的架构将如何处理这样的功能。

因为只调用了一次,所以现在该函数进入 View Controller 、展示器和线框。

函数如下:

//Presenter
func showLikeCard(controller: UIViewController){
wireframe.showLikeCard(controller: controller)
}

//Wireframe
func showLikeCard(controller: UIViewController){
controller.present()
}

谢谢!

最佳答案

https://theswiftdev.com/the-ultimate-viper-architecture-tutorial 中所述,

  • View 区适用于 UI 的所有内容。因为从多个 UIViewController View Controller 中提取出来的共性是 UI 相关的,所以它应该被隔离在 View 区域中。尽管有您的//Presenter 评论,但这似乎与在 VIPER 的演示区执行业务规则无关。 (如果是这样,则应重新设计区域间接口(interface),使其引用纯粹的应用程序域实体,而不引用以 UI 为中心的构造,如 UIViewController,因为 UIViewController 本身与业务规则执行无关。)令人担忧的是 VIPER 如何消除整个 Massive View Controller 架构的过度混合问题,这是由于隔离不足和关注点之间的隔离不够充分。
  • 它不会在交互区内,除非它从数据库、网络或传感器获取数据。

关于ios - 在许多使用 VIPER 的 Controller 上使用的功能的更好位置在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59886276/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com