Hi,SwiftGG 翻译组启用了新的域名:swiftgg.team今后翻译组的各项活动将会在新域名下开展,不要错过哦!

作者:Tomasz Szulc,原文链接,原文日期:2015-08-06
译者:mmoaay;校对:numbbbbb;定稿:shanks

Xcode 7 beta 5 中的 Swift 2 拥有另外一个特性:当使用一对多关系时我们可以用 @NSManaged 来声明自动生成方法。

这个技巧非常有用。假设你有一个 Library 和多个 Book 实体对象。且 Librarybooks 是一对多的关系。那么使用最新的 Xcode 和 @NSManaged 就可以在 Library 实体对象内(手动)声明自动生成方法。

阅读全文

作者:Tomasz Szulc,原文链接,原文日期:2015-08-06
译者:mmoaay;校对:numbbbbb;定稿:shanks

Xcode 7 beta 5 中的 Swift 2 拥有另外一个特性:当使用一对多关系时我们可以用 @NSManaged 来声明自动生成方法。

这个技巧非常有用。假设你有一个 Library 和多个 Book 实体对象。且 Librarybooks 是一对多的关系。那么使用最新的 Xcode 和 @NSManaged 就可以在 Library 实体对象内(手动)声明自动生成方法。

阅读全文

作者:AppCoda,原文链接,原文日期:2015-08-27
译者:saitjr;校对:numbbbbb;定稿:shanks

很多应用都需要搜索功能并把结果展示在UITableView中。毋庸置疑,很多开发者都遇到过这种开发需求。通常的做法都是直接使用 iOS SDK 中自带的控件。iOS 8 以前,苹果提供了一个用于具有搜索功能的控制器UISearchDisplayController。使用这个控制器,结合UISearchBar,能更方便的在应用中添加搜索特性。然而,这些都已成为历史。

iOS 8 到来以后,这种实现方式发生了改变。首先,UISearchDisplayController被弃用,即使他可以在 IB(Interface Builder) 界面中使用。而现在,出现了一个新的控制器UISearchController,但它却没有在 IB(Interface Builder) 中显示。相反,需要编码来进行初始化并配置,其实这很简单,接下来的文章中将会介绍到。

阅读全文

作者:AppCoda,原文链接,原文日期:2015-08-27
译者:saitjr;校对:numbbbbb;定稿:shanks

很多应用都需要搜索功能并把结果展示在UITableView中。毋庸置疑,很多开发者都遇到过这种开发需求。通常的做法都是直接使用 iOS SDK 中自带的控件。iOS 8 以前,苹果提供了一个用于具有搜索功能的控制器UISearchDisplayController。使用这个控制器,结合UISearchBar,能更方便的在应用中添加搜索特性。然而,这些都已成为历史。

iOS 8 到来以后,这种实现方式发生了改变。首先,UISearchDisplayController被弃用,即使他可以在 IB(Interface Builder) 界面中使用。而现在,出现了一个新的控制器UISearchController,但它却没有在 IB(Interface Builder) 中显示。相反,需要编码来进行初始化并配置,其实这很简单,接下来的文章中将会介绍到。

阅读全文

作者:Benedikt Terhechte,原文链接,原文日期:2015-08-25
译者:lfb_CD;校对:小锅;定稿:shanks

Swift 2.0 beta 6 新增了一个关键字 try?,这为我们处理异常又增加一个新的途径。这篇简短的文章阐述了这个关键字的基础知识,同时说明为何这个新关键字很酷。

在 Swift 1.x 中,我们只能通过可选数据类型和 NSError 来处理异常。我们可以在其他编程语言中看到 Either/Result这样的形式,于是很多人将这种形式移植到 Swift 当中:

阅读全文

作者:Benedikt Terhechte,原文链接,原文日期:2015-08-25
译者:lfb_CD;校对:小锅;定稿:shanks

Swift 2.0 beta 6 新增了一个关键字 try?,这为我们处理异常又增加一个新的途径。这篇简短的文章阐述了这个关键字的基础知识,同时说明为何这个新关键字很酷。

在 Swift 1.x 中,我们只能通过可选数据类型和 NSError 来处理异常。我们可以在其他编程语言中看到 Either/Result这样的形式,于是很多人将这种形式移植到 Swift 当中:

阅读全文

作者:Olivier Halligon,原文链接,原文日期:2015-08-28
译者:小锅;校对:numbbbbb;定稿:shanks

今天我们要研究 Swift 函数中一些好玩的特性,比如返回函数的函数,柯里化以及运算符函数。

函数的基础

在这篇文章中,我们将使用一个返回 Bool 类型的函数来判断它的参数是否匹配某个条件,这个函数接收一个 Int 类型的参数。像这类功能可以使用filter方法对整型数组进行过滤。

阅读全文

作者:Raj Kandathi,原文链接,原文日期:2015-08-15
译者:pmst;校对:numbbbbb;定稿:shanks

注:作者连续写了两篇文章,我们将译文合并到了一起

上篇

我们习惯于使用for-in语句来遍历集合,比如数组/字典。

举例来说:

let library = ["The Swift Programming Language", "The Pragmatic Programmer", "Clean Code", "Refactoring"]
for book in library {
  println(book)
}

我们把图书馆内容封装到一个数组当中;接着,视图层(UI layer)将从数据层(data layer)中获取一个图书馆对象。正如上面代码所示,图书馆对象是一个集合(这里为数组),支持用for-in语句遍历整个馆内藏书。

阅读全文

作者:Natasha,原文链接,原文日期:2015-08-17
译者:小铁匠Linus;校对:Channe;定稿:小锅

自从令人兴奋的Swift 面向协议编程 WWDC 讲座发布,我就在思考协议的用法。但是现实中,我并没有使用过它们。我仍在消化面向协议编程的含义,之后就可以在代码中用面向协议编程模式替换面向过程编程模式了。

一个庞大的案例涌上心头:MVVM ! 我之前用过 MVVM,如果你想要具体了解,可以看我之前发表的关于 MVVM 的博客。不过面向协议的内容都在本篇文章。

阅读全文

作者:Natasha,原文链接,原文日期:2015-07-29
译者:Channe;校对:numbbbbb;定稿:小锅

早上我看到@jesse_squires发了个好推:

#Swift小贴士: 在IBOutletsdidSet中设置视图,而不是将代码塞满viewDidLoad。这样更清晰,同样只被调用一次.

– Jesse Squires (@jesse_squires) 2015 年 7 月 29 日。

设置 App 界面元素的颜色、字体和辅助功能总是很痛苦。理想情况下,storyboard 能搞定,但是 storyboard 中的颜色管理相当糟糕(可以用Xcode调色板缓解这种痛苦)。更糟糕的是,比之更高级的辅助功能选项并不能在 storyboard 中设置。

阅读全文

作者:Raj Kandathi,原文链接,原文日期:2015-08-15
译者:pmst;校对:numbbbbb;定稿:shanks

注:作者连续写了两篇文章,我们将译文合并到了一起

上篇

我们习惯于使用for-in语句来遍历集合,比如数组/字典。

举例来说:

let library = ["The Swift Programming Language", "The Pragmatic Programmer", "Clean Code", "Refactoring"]
for book in library {
  println(book)
}

我们把图书馆内容封装到一个数组当中;接着,视图层(UI layer)将从数据层(data layer)中获取一个图书馆对象。正如上面代码所示,图书馆对象是一个集合(这里为数组),支持用for-in语句遍历整个馆内藏书。

阅读全文