第三方库的管理
android使用Gradle来管理项目依赖的第三方库
iOS上在object-c的项目一般使用cocoapods。
以前做开发的时候或多或少的都会用到cocoapods,因为根据项目需要维护本地的三方代码库,但总觉得将工程文件修改并且修改成workspace,这点有些人是不喜欢的。
Carthage是一个新的第三方库管理工具,它轻耦合,使用很灵活,不会修改项目文件,使用xcodebuild工具来编译第三方库,xcodebuild是什么,不知道的同学请打开终端欣赏一下。
Carthage只支持动态框架库,iOS8以上,对swift的三方库支持最好。
使用起来也比较简单:
1.创建一个Carthage文件,里面按照要求输入你要引入的三方库
2.使用Carthage进行安装或者更新,下载到最新的三方库文件
3.Carthage会将三方库编译成framework,将这些动态库引入你的项目中,就可以随心所欲的使用了
在这谈一下编译成framework的问题,在一般的公司开发中,比较重视代码管理和项目可维护性的,都会将三方库与核心代码封装成framework,提供给不同的业务开发使用,以保证代码稳定性与修改提交的粗粒度,比方说,你维护的核心代码,如果是以不同版本的framework提供出来的,这样代码发生变动,你必须重新生成新版的framework,业务开发在使用的时候,如果发生问题,可追溯版本,也可以回退到稳定版本的framework,这种做法是有好处的。
cocoapods是中心化的三方库管理工具,需要开发者将代码提供到中心服务器,Carthage是去中心化的,使用git托管第三方库,这样的好处在于可以替换三方库的来源。
下面演示一下Carthage的使用,比方说我们要添加swift上比较出名的imageLoader第三库---Kingfisher.
1.首先你需要安装Carthage,我们采用homebrew的方式,假设你安装了homeb,你需要在终端中运行如下代码
$ brew update
$ brew install carthage
2.在你的项目目录下,新建一个文件名字为Cartfile,内容为:
github "onevcat/Kingfisher" ~> 1.8
3.开始使用Carthage
$ carthage update
4.此时目录中会有如下目录
产出目录选取framework
以上就是简单的使用,enjoy it.
网友评论