Boomerang 6.7.0

Boomerang 6.7.0

测试已测试
Lang语言 SwiftSwift
许可证 MIT
发布最新发布2022年6月
SPM支持 SPM

Stefano Mondino 维护。



Boomerang 6.7.0

  • Stefano Mondino

Boomerang

Boomerang 是一个用于 Swift 应用程序的 MVVM 库

由于 UIKit 中缺少 ViewModel 概念,Boomerang 通过协议定义了一系列场景,并共享一套通用、可重用的方法来构建应用中的屏幕。

在此基础上,它提供了一组扩展,用于常见的组件,如 UICollectionViewUITableViewUIViewController,以便它们可以与 ViewModel 兼容。

使用 RxSwift(以及 RxDataSources)绑定(不是必需的,但强烈建议),Boomerang 可以真正提高项目工作效率,并帮助保持简单和轻盈。

关键特性 / TLDR

  • 为您的整个应用提供 ViewModel 概念。
  • ListViewModel 用于处理 ViewModel 的列表。列表中的每个项目代表视图的内容(表视图/集合视图中的一个 "cell")
  • NavigationViewModel 用于处理通过应用导航的业务逻辑
  • Route 协议用于设计和封装场景如何导航到另一个场景。为您的应用编写一次性的 pushViewController :)
  • 不再需要为您的集合/表格视图编写数据源和代理!
  • 自动调整表格视图和集合视图的大小。轻而易举。
  • TDD 就绪:使用 RxBoomerangTest 与您的测试目标一起快速编写与代码周围的测试。

安装

Boomerang可通过CocoaPods获取。

将以下内容添加到您的Podfile中

pod 'Boomerang'

要使用RxSwift集成,请使用

pod 'RxBoomerang`

我们曾使用pod Boomerang/RxSwift将Rx扩展与Boomerang集成。此方法目前仍然可用,但在您的项目文件中集成Rx扩展的方式有所不同:在此旧场景中,由于Pod的导入处理,每个包含Boomerang扩展的文件不需要import RxBoomerang,但我们认为包管理器应当尽可能互相替换;因此,我们建议使用新的独立pod,因为这样更“面向未来”。

贡献

要集成新特性到库中,您可以打开Package.swift文件并编辑源文件夹。

示例

您可以在Examples文件夹中找到一些集成示例。

我们使用XcodeGen以轻松维护xcodeproj文件。

要安装XcodeGen,运行brew install xcodegen

要配置每个示例项目,请在每个文件夹中运行xcodegen

目录(工作进行中)