Coaty Swift
CoatySwift 是用 Swift 5 编写的 Coaty 实现。CoatySwift 包提供针对 iOS、iPadOS和 macOS 原生应用的跨平台实现。
CoatySwift 包含完整的 API 文档、开发者指南、教程和最佳实践示例。
什么是 Coaty
使用 Coaty [koʊti] 框架作为中间件,您可以使用称为 Coaty 代理 的松散耦合的分布式应用程序组件构建应用程序,这些代理可以相互进行(软)实时通信。主要关注点是物联网企业级场景,其中智能代理以自主、协作和即兴的方式行动。Coaty 代理可以运行在 IoT 设备、移动设备、微服务、云或后端服务上。
Coaty 为构建易于使用、强大且高效的协作物联网应用程序提供了一个就绪的应用程序和通信层基础。CoatySwift 框架的关键特性包括
- 轻量级且模块化的面向对象软件架构,首选资源导向和声明式编程风格,
- 基于开放的发布-订阅消息协议(目前为 MQTT)的标准事件驱动通信模式,
- 以及一个平台无关的可扩展对象模型,用于发现、分发、共享、查询和持久化分层类型数据。
学习如何使用
如果您是 CoatySwift 的初学者并想了解更多信息,我们建议查看以下资源
- 教程 - 展示如何设置最小化 CoatySwift 应用。
- 开发者指南 - 解释如何开发 CoatySwift 应用。
- API 文档 - CoatySwift 框架的公共类型和成员的源代码文档。
- 设计原理 - 如果想了解为什么 CoatySwift 实现中以特定方式实现了某些功能。
入门
要使用 CoatySwift 技术栈构建和运行 Coaty 代理,您需要 XCode 10.2 或更高版本。CoatySwift 可通过 CocoaPods 获得。请确保您已经安装了至少版本 1.8.4
的 CocoaPods,即运行 pod --version
应返回 1.8.4
或更高。
您可以将 CoatySwift pod 添加到应用的控制台文件 (Podfile) 中,如下所示
target 'MyApp' do
pod 'CoatySwift', '~> 2.2.0'
end
然后运行 pod install
。
CoatySwift 支持以下部署目标
部署目标 | 兼容性 |
---|---|
iOS | 9.0+ |
macOS | 10.14+ |
示例
如果您想快速了解 CoatySwift,请查看 CoatySwift 教程,该教程提供了如何设置基本 CoatySwift 应用的分步指南。该教程的源代码可以在 CoatySwift 仓库的 CoatySwiftExample Xcode 目标中找到。只需克隆仓库,在根目录下执行 pod install
,然后在 Xcode 中打开新的 xcworkspace
。
您可以在 GitHub 上 coaty-examples 仓库的 swift
部分找到更多示例。那里您将找到以下 Xcode 项目:Hello World
和 远程操作
。它们与相应的 Coaty JS 示例互操作,并计划与它们一起使用。这些项目可以作为设计 CoatySwift 应用程序的蓝图。
测试
如果您想在CoatySwift上运行单元测试,请查看CoatySwift仓库中的Xcode目标(https://github.com/coatyio/coaty-swift/tree/master/CoatySwiftTests)。只需克隆该仓库,在根目录下运行pod install
,然后在Xcode中打开新的xcworkspace
。然后在导航视图中选择测试导航器,启用所需测试并运行它们。
贡献
如果您喜欢CoatySwift,请考虑在github上为项目星标。对CoatySwift框架的贡献受到欢迎和赞赏。
请遵循在CONTRIBUTING.md中描述的推荐做法。该文档还包含了有关如何构建、测试和发布框架的详细信息。
许可协议
代码和文档版权所有2019西门子AG。
代码采用MIT许可证。
文档采用Creative Commons Attribution-ShareAlike 4.0国际许可证。
以下列出了CoatySwift所依赖的第三方软件的所有相关许可证
致谢
最后但同样重要的是,向为CoatySwift设计、实施和做出贡献的人们表示衷心的感谢!
- Sandra Grujovic @melloskitten
- Johannes Rohwer @johannesrohwer
- Łukasz Zalewski @lukasz-zet