Tag: VIP

IOS中的VIP(干净的Swift架构)

VIP还鼓励使用模板“促进”其实施。您可以在Clean Swift IOS体系结构上找到模板,以及有关VIP生命周期的更多详细信息。 使用这些模板,您无需担心项目中VIP架构的实现。 模板有助于轻松编写测试用例。 VIP单向方式 VIPER双向方法 在上图中,我们可以看到VIP架构采用的是单向方法,与VIPER有所不同,后者遵循的是双向方法。这两种架构均基于Single Responsibility Principle(单一责任原则),可带来整洁的架构和更好的可测试性。 如何在项目中使用VIP模板 首先从干净的Swift架构下载模板 将干净的swift文件夹复制到/ Users / / Library / Developer / Xcode / Templates / File \ Templates 启动Xcode并创建一个新文件(文件>新建>文件或⌘N) 搜索Clean Swift部分,然后在可用模板之间进行选择 这样,您就可以轻松地在项目中实施VIP架构。 同样,VIP模板具有用于单元测试实施的模板。 众所周知,VIP完全支持TDD(测试驱动开发)。您不必担心为项目编写单元测试类。 VIP演示项目 如果您对它在现实生活项目中的实施更加困惑,我在Github项目中对VIP架构做了简单的演示。 关于项目中的实施以及单元测试的实施,以便您可以开始遵循项目中的TDD(测试驱动开发)。 VIP架构实施 VIP不仅由三部分组成,尽管其名称仅是VIP,但它不仅具有ViewControllers,Interactors和Presenters等更多的组件,例如数据模型,路由器和Workers,而且可以将Viewcontrollers划分为Configurator。变得庞大。 ViewController 在ViewController的viewDidLoad() ,我们需要运行一些业务逻辑,因此我们将其称为fetchPosts() 。 在fetchPosts() ,我们在输出(交互器)上调用fetchPosts(request) )。 而已。 我们要求输出执行我们的业务逻辑。 视图控制器不需要也不应该关心谁以及如何完成。但是,如果有必要,可以将ViewController划分为Configurator。 互动者 交互器包含您应用程序的业务逻辑。 用户在您的UI中点击并滑动即可与您的应用进行交互。 视图控制器从UI收集用户输入,并将其传递给交互器。 然后,它检索一些模型,并要求一些工人进行这项工作。 工人 帖子视图可能需要从Core […]

Belajar iOS体系结构设计:VIP — Clean Swift

Dan Hari ini saya belajar建筑设计iOS应用程序。 Desain Asitektur yang biasa digunakan oleh pengembang pemula dalam pengembangan aplikasi iOS adalah MVC(模型-视图-控制器)。 MVC memang bagus dan mudah diterapkan secara cepat namun bukan yang terbaik untuk desain arsitektur pengembangan aplikasi。 Salah satu alasannya adalah MVC tidak menyediakan ketahanan yang saat terjadi bug。 Pengembang bisa saja terus menerus berputar di […]