A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

英文原文:Things I wish I had known before starting iOS development-----CocoaChina原创翻译

网络

要想让应用更有趣,你免不了要接入一些API。虽然iOS在对网络的支持方面表现良好,譬如它拥有NSURLSession、NSURLConnection和NSJSONSerialization,但我还是推荐你使用下面的库。

AFNetworking


AFNetworking:AFNetworking - 令人拍案叫绝的iOS和OS X网络框架。

我认为这是有史以来最好的iOS库之一,它的功能何止炫酷二字。但这些功能中最重要的或许是开发者社区,他们每天都在使用这个库,并为AFNetworking做出贡献。一些iPhone、iPad和Mac上最火的应用都是由AFNetworking提供的支持。

Restkit

RestKit/RestKit:RestKit是在iOS和OS X上使用和构建RESTful web资源的框架。

Restkit具有精心设计的API,访问和构建RESTful资源的过程如沐春风。如果你用core data进行数据存储、用rest service进行数据读取,那你的最佳选择就是它——与Core Data完美集成的Restkit。

Alamofire


Alamofire/Alamofire:Alamofire - Swift下精致的HTTP Networking。

哟哟切克闹,Swift粉们不要闹,煎饼果子来一套。下面就是为你们准备的东西了。Alamofire是一个精致的网络库,它具有一些Swift专享的强大功能。

你也可以在这里找到很多其他的库。

vsouza/awesome-ios

awesome-ios——精选的优质iOS生态系统,包括Objective-C和Swift项目。

依赖管理

我在前面的文章中提到过依赖管理,但重要的问题要说两遍!在这里我还要给它细细讲一发。在项目中,你主要有三种管理依赖的方式。

CocoaPods

CocoaPods.org:iOS和Mac项目的依赖管理器。

CocoaPods是Swift和Objective-C Cocoa项目的依赖管理器。它拥有将近一万个库,可以帮助你轻松扩大项目规模。要想管理Ruby Gems这种依赖,实践中最有效的方法就是它了。

谷歌开发者做了一个YouTube视频,解释了为什么要在你的项目中使用CocoaPods。小心笑尿。

点此观看视频:Route 85: An Introduction to CocoaPods

Github Submodules

你还可以使用git submodules,在项目中以sub repos形式管理依赖。子模块相对于Cocoapods的优势在于子模块也是sub-repos——这不仅是指git和git GUIs逐渐认可并更加支持它们,也意味着你的依赖可以将git repos和广阔的世界连接起来,而CocoaPods却不能。

但git submodules也有自己的问题:项目中没有那些你所依赖的代码的来源。它只是指向了子模块库。而大多数时间你根本不会去管这个库。

Carthage


Carthage/Carthage:Carthage - 简单、去中心化的Cocoa依赖管理器。

Carthage旨在为Cocoa应用提供最简单的框架添加方式。Carthage使用xcodebuild建立framework binaries,把整合工作留给了用户。CocoaPods的方法更简单易用,而Carthage的方法更灵活温和。

不幸的是,Carthage也有一个巨大缺陷——仅支持iOS 8及以上版本

测试

大多数人一提到应用测试就会呵欠连连。但如果没有测试的话,说不巧哪天你的应用就突然崩溃了。发布应用时,你一定得先进行深度测试,保证用户得到最佳体验。

这里有很多测试框架,它们可以简化测试工作。

XCTest

XCTest是一个单元测试框架,包含在Xcode中。它支持把单元测试作为项目编译过程的一部分。XCTest与XCode高度整合,因此提供了持续整合支持和覆盖率测试这样的功能。

KIF


kif-framework/KIF:KIF - Keep It Functional - iOS功能测试框架

KIF是Keep It Functional的缩写。它由Square开源,是一款iOS一体化测试框架。它利用其可访问性——即系统让访问不能显示的应用成为可能,轻松实现了iOS应用的自动化。

Kiwi


kiwi-bdd/Kiwi:Kiwi - BDD for iOS

Kiwi是iOS开发的Behavior Driven Development库。其目标是提供一个安装和使用都非常简单的BDD库。

Quick


Quick/Quick:Quick - Swift (以及Objective-C)的测试框架。

Quick是Swift和Objective-C的一款行为驱动的开发框架。它由RSpecSpectaGinkgo开发。与Quick并肩战斗的是Nimble——一款为测试服务的匹配框架。


30 个回复

倒序浏览
以后工作中应该会用到这些吧?
回复 使用道具 举报
小小羊 发表于 2015-6-26 13:24
以后工作中应该会用到这些吧?

当然啦 都是精华啊  我看了些  相当不错
回复 使用道具 举报
感觉是一些高大上的东西!
回复 使用道具 举报
等我打好基础打好,再来看看,  收藏了
回复 使用道具 举报 1 0
受教了,谢谢分享
回复 使用道具 举报
虽然一个都没听过,但是以后肯定用的上,谢谢楼主指点
回复 使用道具 举报
heyuze 中级黑马 2015-6-27 16:30:46
8#
可以的。。。虽然现在还看不懂
回复 使用道具 举报
LEON27 中级黑马 2015-6-27 18:58:17
9#
HunterTim 发表于 2015-6-27 14:43
虽然一个都没听过,但是以后肯定用的上,谢谢楼主指点

没事  大家一起努力
回复 使用道具 举报
暂时还顾及不到
回复 使用道具 举报

mark 一下啊  以后必用
回复 使用道具 举报
先打好基础,不要心太大
回复 使用道具 举报
好东西,学习中。。。。
回复 使用道具 举报
看不懂啊,话说1、2、3呢?
回复 使用道具 举报
bsx881220 发表于 2015-6-30 22:51
好东西,学习中。。。。

加油  duang
回复 使用道具 举报
mark一下 好资源
回复 使用道具 举报
强大的助攻……
回复 使用道具 举报
我可以说我看不懂吗?
回复 使用道具 举报
学习学习!
回复 使用道具 举报
先看看,留着以后用~
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马