York 0.4.0

York 0.4.0

测试已测试
Lang语言 SwiftSwift
许可证 MIT
发布最新版本2016年11月
SwiftSwift 版本3.0
SPM支持 SPM

Inácio Ferrarini 维护。



 
依赖
JLRoutes= 1.6
VMaskTextField= 1.0.8
 

York 0.4.0

  • 作者
  • Inácio Ferrarini

York

什么是 York?

York 是一套类,可以被一起使用,也可以不使用。每个类只有一个职责,完全遵循 S.O.L.I.D. 原则。

目标

  • 消除 Singleton 使用(您不需要它)
  • 大幅度减少 ViewControllers 的大小。
  • 提供对常见情况的基于块的方法。
  • 提供容易的项目启动方式,并减少项目启动时间。
  • 通过使用精心设计的基类,提供将项目标准化到尽可能的标准。

结构

为了使每个类的角色更容易理解,它们被分组在了一起

  • 上下文:本质上是一种避免使用 Singleton 的方法,通过注入 App 的上下文。
  • DataSyncRules:一个用于优雅且无烦恼处理数据同步的基本时间规则引擎。
  • DeepLinkingNavigation:基于方案导航的 JLRoutes 使用的抽象。
  • Extensions:UIKit 和其他类的常用扩展。
  • Logging:CocoaLumberJack 使用的日志的抽象。
  • Persistence:包含 CoreDataStack,用于处理 CoreData 的样板代码,以及一个基于 CoreData 和 NSFetchedResultsController 的 UITableViewDataSource,它避免了将 NSFetchedResultsController 的样板代码放在 TableViewController 中。
  • Presenter:用于处理 TableViewCells 将如何展示的类。
  • TableViewDelegate:TableViewDelegate 的替代实现,使用块来处理使用的交互事件。
  • ViewController:View Controllers 的实现,支持开箱即用的国际化和数据同步,以及 Table View 实现。
    • BaseViewController:最简单的 UIViewController,支持开箱即用的国际化。
    • BaseDataBasedViewController:向 BaseViewController 添加数据同步功能。
    • BaseTableViewController:向 BaseDataBasedViewController 添加 TableViewController 功能。允许 ViewController 本身成为 TableView 的 Delegate 或/和 DataSource,或者使用适当的方法返回要使用的 Delegate 或/和 DataSource。

  • ViewController:基于 Xib 的视图组件的基本类。

要求

  • iOS 8.0+

向后兼容性

  • Swift 3.0 的 York 版本 0.4.0
  • York 版本 0.3.6,适用于 Swift 2.2

最新版本(0.4.0)发行说明

  • 迁移到 Swift 3。

所有发行说明都汇总在这里:(https://github.com/inacioferrarini/York/blob/master/ReleaseNotes.md

安装

York 可通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中

pod "York"

作者

Inácio Ferrarini,[email protected]

许可协议

MIT 许可证 (MIT)

版权 © 2016 Inácio Ferrarini

在此特此授予任何获得本软件及其相关文档副本(“软件”)的人(本“许可协议”)无限制地使用本软件的权利,包括但不限于以下权利:使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本,以及允许向本软件提供的人为本 Purpose 进行此类操作,前提是遵守以下条件

上述版权声明和本许可协议应包括在所有副本或实质性部分中。

本软件按“现状”提供,不提供任何形式的保证,无论是明示的还是暗示的,包括但不限于适销性、针对特定目的的适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任承担任何责任,无论是在合同、侵权或任何其他法律理论下产生的。