ReactiveCocoa - swift 学习笔记(一)利用Carthage为项目添加ReactiveCocoa依赖

不忘初心,方得始终

作为简书的新成员,怀着惴惴不安的心情写下第一篇。

ReactiveCocoa在OC年代,我表示没有接触过,最近由于面试的关系,急需入手ReactiveCocoa技能包。

在正式开始之前,对于查阅资料,有点点想说的:
  • 不要盲目使用baidu,google才是码农的正途。
  • 首先首先首先(说三遍)入手的应该还是官网。
Step One:敲开官网的大门

https://github.com/ReactiveCocoa/ReactiveCocoa

Step Two:闲话不多说,找到Getting started

看ReactiveCocoa官方的意思是推荐使用Carthage来管理并添加ReactiveCocoa,对于熟悉CocoaPods的同学可以直接出门右拐去获取CocoaPods的ReactiveCocoa配置了。
注意:Carthage仅支持动态库,并且仅在iOS8以上可用,而且似乎仅仅支持git仓库?

Step Three:搞掂Carthage配置,使用CocoaPods的可以略过

Carthage是个什么东东,和CocoaPods有何不同,可以去Carthage官网自行学习,想看中文版的请参考Carthage使用说明

1.首先安装Carthage:

  • 第一种安装方法:
  • 第二种安装方法,cli安装:
    • brew update
    • brew install carthage

2.安装完成创建Carthage文件:
新建一个iOS项目,在项目的根目录下创建名为Cartfile的文件,写入如下内容:

# Require version 4.2.2 or later
github "ReactiveCocoa/ReactiveCocoa" >= 4.2.2

>=和=的区别:=代表从从指定版本到倒数第二位版本号升1为止,本示例中则表示 4.2.2 <= 版本 < 4.3.0。

3.项目根目录下运行:

carthage update

由于网络原因,我试了3次最终才更新成功,大概更新了5分钟左右,项目根目录下生成了Cartifile.resolved文件和Carthage文件夹

Carthage目录机构

Carthage/Checkouts/目录下放的就是下载好的动态库文件了。

4.利用xcode打开项目

添加依赖库

5.在打开的Embedded Binaries窗口添加ReactiveCocoa动态库

打开添加依赖库对话框
选择依赖项

6.新建Build Phases

新建Build Phases
添加shell脚本
Step Four:项目中利用ReactiveCocoa编写代码
import ReactiveCocoa

...
let textField = UITextField()
        let textString = textField.rac_textSignal()
            .toSignalProducer()
            .map { text in text as! String }
...

折腾的满头大汗,终于写完入门第一篇了,希望是一个不错的开始。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Carthage v0.26.2(原文链接) Carthage的目标是用最简单的方式来管理Cocoa第三方框架。 ...
    iOSLee阅读 3,718评论 0 7
  • 文档地址https://github.com/Carthage/Carthage release v0.20.0...
    指尖弹灰阅读 4,646评论 2 4
  • 1.为何要使用管理工具管理项目的依赖关系 我们在开发过程中会用到(依赖于)其他第三方库,这些库或框架还有可能依赖于...
    coder小鹏阅读 5,803评论 12 22
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,296评论 4 61
  • 发现一种特别舒服的关系,并不总是你一言我一语的秒回,有时候愿意把我现在看到的所有东西一股脑儿的发给你,不用组织好精...
    萱萱_萱阅读 310评论 0 3