跑步配速 (RunningPace)

这个包增加了两个新的 UnitSpeed 类型,跑步者经常用它们来表示配速:.minutesPerMile.minutesPerKilometer。它还为基本的“速度 * 时间 = 距离”公式添加了乘法和除法运算符。最后,它添加了类型别名,使测量更容易使用,并添加了扩展,使从 Double 值创建测量值更具可读性。

用法

// Basic usage
let pace = Measurement<UnitSpeed>(value: 10, unit: .minutesPerMile)
print(pace) // "10.0 min/mile"

// Usage with type aliases
let kmPace = Speed(value: 6, unit: .minutesPerKilometer)
let duration = Duration(value: 30, unit: .minutes)
let distance = Distance(value: 1600, unit: .meters)

// Usage with Double extensions
let milePace = 10.minutesPerMile
let duration = 30.5.minutes
let distance = 5.miles

// Operators
let duration = 10.miles * 6.25.minutesPerMile
let distance = 51.minutes * 5.minutesPerKilometer
let speed = (17.minutes / 5.kilometers).converted(to: .minutesPerMile)

安装

Swift Package Manager

此组件旨在与 Swift Package Manager 一起使用。将以下内容添加到你的 Package.swift 文件的 dependencies 中:

.package(url: "https://github.com/brantonb/RunningPace.git", from: "0.1.0")

然后在需要的地方添加 import RunningPace

贡献

欢迎提交 Pull Request。在提交之前,请确保所有测试都通过并且 SwiftLint 是干净的。

SwiftLint

此项目使用 SwiftLint,通过 Mint 包管理器。安装 Mint 后,通过执行以下命令运行 SwiftLint:

$ mint run swiftlint

在 Linux 上使用 Docker 进行测试

安装 Docker,然后运行 ./testLinuxOnDocker.sh。它将从 Docker Hub 获取最新的 swift 镜像,将当前目录挂载到 /src,然后在容器内运行测试。