RФKit 2.5.1

RФKit 2.5.1

测试已测试
语言语言 Obj-CObjective C
许可证 NOASSERTION
发布最后发布2020 年 9 月

BB9z 维护。



RФKit 2.5.1

  • BB9z

RФKit

CocoaPods Build Status Codecov CocoaPods Carthage Compatible

英语 简体中文 🇨🇳

RФKit 是日常 Cocoa 开发的有用工具包。

要求

RФKit 版本 最低 Xcode 版本 最低 iOS 目标 最低 macOS 目标 最低 watchOS 目标 最低 tvOS 目标
2.5+ Xcode 9 iOS 9 macOS 10.9 watchOS 2.0 tvOS 9.0
2.4 Xcode 8 iOS 8 macOS 10.8 watchOS 2.0 tvOS 9.0
2.0-2.3 Xcode 8 iOS 6 macOS 10.8 watchOS 2.0 tvOS 9.0
1.7 Xcode 7 iOS 6 macOS 10.8 watchOS 2.0 tvOS 9.0
1.6 Xcode 8 iOS 6 N/A watchOS 2.0 N/A

安装

CocoaPods

要使用 CocoaPods 进行安装,请将以下内容添加到您的项目 Podfile 中:

pod 'RFKit'

指定开发分支以安装最新版本

pod 'RFKit', :git => 'https://github.com/BB9z/RFKit.git', :branch => 'develop'

一个更复杂的示例

pod 'RFKit',
    :git => 'https://github.com/BB9z/RFKit.git',
    :subspecs => ['Default', 'Category/NSDateFormatter']

Carthage

尽管我推荐使用CocoaPods,但Carthage仍然得到支持。

在Cartfile中指定RFKit

github "BB9z/RFKit"

手动

您可以通过将源代码添加到项目中始终导入RFKit。只需复制您需要的任何文件。

dout

dout 包含一组方便的日志工具,专门为调试设计。

特性

  • 输出格式优于NSLog(),且更快。

  • 自动在结果前面添加表达式。

    例如。

    int a = 10;
    dout_int(101+a)  // Output: 101+a = 111
  • 针对多线程调试进行了优化,您可以轻松找到输出来自哪个线程。

  • 支持在日志输出中添加位置信息,以帮助跟踪日志语句的位置。将 DOUT_FLAG_TRACE 设置为 1 以启用。

  • 针对警告和错误的特殊日志方法。可以更改它们的行为以引发异常或断言失败。

  • 通过开关可以高度自定义行为。

  • 作为宏,通常没有性能损失。

详细信息:dout 文档(中文)

RFRuntime

处理构建或运行时差异。为上层组件提供统一的简单接口。包含:调试开关定义、默认头文件、RFARC和语言扩展。

调试开关

RFDEBUG,RFKit 调试模式开关。设置为 1 以启用。如果未定义,则当 DEBUG 为真且未定义 NDEBUG 时,将定义为 1

RFDebugLevel,用于控制调试行为。如果未定义,当 RFDEBUG 为真时会将其定义为 2,否则为 1

默认头部文件

UIKit 和 Foundation 头文件默认已包含在 RFRuntime 中。

RFFeatureSupport

定义了一些伪造的协议来声明一个类是否支持某些功能。

RFDispatch

一些辅助函数,用于 GCD。

语言扩展

包含从 libextobjc 的某些组件。

  • metamacros.h,宏定义用于元编程。
  • EXTKeyPathCoding,允许在编译时验证键路径。
  • EXTScope,与作用域相关的几个工具。

@keypathClassInstance@keypath 类似,但接受一个类作为参数而不是实例变量。

UIKit & Foundation 分类

RFKit 的一个重要部分。包含许多有用方法。

RFKitDefaultCategories.h 保护默认引入的扩展。

查看每个头文件以了解具体功能。

RFGeometry

为几何结构添加了新的方法和常量:CGPointCGSizeCGRect。添加了一个新的CGAngle角度结构。

RFResizeAnchorRFAlignmentAnchor提供调整大小和参考对齐。

RFPerformance & doutkit

性能工具包。

其他

一些外部组件放置在external文件夹中。

变更日志