这份指南汇集了Swift语言主流学习资源,并以开发者的视角整理编排。
GitHub: ipader/SwiftGuide |欢迎开发者一起维护,或反馈/投稿。
苹果针对Swift开发者官方文档入口。其中包括: Swift概括, Swift Programming Language, Using Swift with Cocoa and Objective-C
-
苹果官方文档: 在线版(英文)
-
爱好者翻译版: 在线版(中文) (By @Swift中文翻译组) | PDF版 (By @CocoaChina) | 百度阅读版 (By 小岂子)
- 苹果官方文档:在线版(英文)
- 爱好者翻译版:在线版(中文) (By @CocoaChina)|PDF版 (By @CocoaChina)
- Swift Cheat Sheet(PDF): 形式以代码先行,极简、有效地Swift语言快速学习指南
- An Absolute Beginner’s Guide to Swift: 相对于Swift Cheat Sheet带了不少说明,但整个文档不显啰嗦,可读性强
- Swift Reference Playground,Swift Operators Playground: "Swift Reference is a handy playground file that can be used when you are starting to learn swift.It covers the basic syntax definitions and different ways to use" 初学Swift语言的同学一定先玩玩这个,可以让您更快感性的了解Swift语言语法、操作符及语言新特点(代码涵盖地比较完整)。
- 马上着手开发 iOS 应用程序 (Start Developing iOS Apps Today): 苹果官方文档
- Swift Language FAQ: Raywenderlich的Swift语言FAQ说清楚了很多问题。这份FAQ确实浅显易读,初学者不可或缺好文章!
- WWDC14 Session 402 学习笔记 By @糖炒小虾_txx
- Swift与Objective-C混编高级教程之混编框架的创建和调用
- Objective-C开发者对Swift亮点的点评: 这篇译文确实不错,含括了常见的亮点。尽管对于Swift相较于Objective C的亮点描述还不够全面,对初学者很受用。原文在此
- 与其它语言对比表: C vs. Go vs. Swift, C# vs. Swift, Scala vs. Swift, Go vs. Swift
- WWDC 2014
- WWDC 2014发布会(带中文字幕): 有关Swift语言演讲部分从103:54开始,首先苹果iOS/OS X及公共平台负责人克雷格·费德里吉(Craig Federighi)针对Xcode及Objective C的简要回顾,克里斯·拉特纳(Chris Lattner)上台做Swift语言演示从107:15开始。
- WWDC 2014 Videos: 需要苹果开发者帐号才能观看。
- WWDC 2014 PDFs: 107个PDF压缩包 By @清醒疯子
- Chris Lattner (译文:Swift 编程语言首席架构师): "Chris Lattner(1978年出生)是 LLVM 项目的主要发起人与作者之一,Clang 编译器的作者。他现在是苹果公司『开发者工具』部门的主管,领导 Xcode、Instruments 和 编译器团队,从 2010 年 7 月开始主导" By 伯乐在线
- 关于Swift,开发者最需要了解的7个方面 (英文原文): 简明扼要的阐述了Swift语言的几个重要特点
- 程序员眼中的苹果Swift语言:简单 易学 高效
- 行走于 Swift 的世界中: 总结了一下近一周以来的一些觉得这个语言里有意思的地方
- Swift の 函数式编程: "Swift 相比原先的 Objective-C 最重要的优点之一,就是对函数式编程提供了更好的支持。 Swift 提供了更多的语法糖和一些新特性来增强函数式编程的能力,本文就在这方面进行一些讨论。" By @diumoo
- 知乎《如何评价 Swift 语言?》
- VM10装Mac OS X 10.9.3及更新到Mac OS X 10.10: "嗯,我写的。屌丝学生党买不起Mac,只能在黑苹果和虚拟机上先折腾会了。" By @Vong_HUST
- 苹果官方
- VirtualGS教程 (By @林泰前): 几十年的老程序员,资深的iOS开发工程师,把自己儿子培养成苹果应用商店最年少的应用开发者,哪里能找到这样优质的编程老师?
- Developing iOS 8 Apps Using Swift (I) – Animations, Audio, and Custom Table View Cells: "这个教程大概7篇blog,一步步讲解了一个『itunes music search app』的制作对于async http, api delegate, 异步图片,动画,代码分层,interface builder都做了清晰的介绍。" By gaohailang
- Replicating Twitter’s bird zoom startup animation (in Swift!) (源代码): 这是一个有关用Swift开发简单动画效果的编程示例,示例开发灵感来源于近期的Twitter iOS版小鸟启动动画。
- WWDC2014 详解OSX/iOS8/Swift语言: "极客学院全国首发课程,详解OSX/iOS8新特性/崭新编程语言Swift!极客学院团队通宵录制、上传,只为在这一刻把最新最实战的课程呈现给开发者"
- Swift中下划线的妙用: "在Swift中,下划线有很多妙用,这里将已经看到的妙用进行总结,希望可以帮助更多学习Swift的朋友。..." By @twlkyao
- SwiftSingleton: 三种方法介绍了Swift中Singleton的写法
- LTBouncyPlaceholder代码解读: "我希望你已经下载了 LTBouncyPlaceholder 的 Demo ,用 Xcode 6 打开并编译、运行,然后在界面中显示的几个 UITextField 里输入一些文字来体验这个扩展。看到 Placeholder 的动画了吗?" By nixzhu
- 从零开始学Swift计时器App开发(源代码): "通过完成此教程,我对Swift语言的理解也更进了一步。Swift是一门全新的语言,作为开发者,我们需要不断加深对这门语言的理解,并灵活使用语言提供的特性来编程。..." by @李洁信
- 使用 Swift 和 AVOSCloud 构建 iOS 应用:"使用 AVOSCloud SDK 和 Swift 构建 iOS 应用 | AVOS Cloud Blog" By @AVOS江宏 | 这就是业界的速度,先机才是致胜法宝。
- VirtualGS教程示例: 以下示例程序来源于林泰前老师微博或博客发布,为方便大家学习Swift编程,有幸获得林老师的准许在这里发布。
- Easy-Cal-Swift: "实在忍不了Swift的数字计算时候的好麻烦的强制转换了,重载了一下加减乘除之类的操作符,这样就不用显式地转换类型了...(对于像我这样现在连补全都没有的孩子来说,能省好多时间啊- -)" By @onevcat
- An app to list the available fonts on iOS: 用Swift语言调用UIKit,列出设备内所有字体名称的小程序。
- Swift版的知乎日报: 学习一门新语言,光看是没有用的,想要快速的掌握它,就得投入到真实项目的开发中,仿照@YANGReal 的糗事百科,做了一个Swift版的知乎日报
- Swift RSS Sample: 用Swift语言开发的RSS阅读器
- Swift版PM2.5的例子: 一个很好的Swift与Objective C协同工作GitHub开源项目。用到的开源类库有TFHpple: 以XPath方式解析HTML,SCLAlertView: 使用Swift写的AlertView SVProgressHUD 进度条 By @荧星诉语
- FlappySwift: 用Swift语言实现的 FlappyBird
- Dollar: 尤其在Array和Dictionary的支持上(实现类库仅一个Dollar.swift文件)。用过Javascript版的Lo-Dash或underscore就知道其实用程度。它是一套函数化编程的工具库。另一个类似的更完整的版本是ExSwift,它的实现基于对象化扩展的。
- ExSwift: 实用类扩展库。另一个Lo-Dash或underscore的Swift版本实现,相对于Dollar.swift,此版本有更完整的API实现。包括了对Array, Int, String, Float, Range, Dictionary, NSArray的扩展及其它实用方法。完全遵循面向对象的扩展原则。
- Minimalistic Swift HTTP request agent for iOS and OS X: 一个简单、小巧、实用的HTTP请求Swift语言实现类(仅一个Agent.swift类)
- 天气预报iOS项目: 新界面还不错,简单,还带点卡通的味道。
- A Twitter framework for iOS & OS X written in Swift: 一套很完整的Twitter访问框架类库,支持iOS/OS X
- SwiftWeiboKit: "封装了整个OAuth2.0的授权流程,并提供了几个简便易用的请求方法" By lingoer
- RSBarcodes_Swift: "RSBarcodes allows you to read 1D and 2D barcodes using metadata scanning capabilities introduced with iOS 7 and generate the same set of barcode images for displaying and sharing." By @yeahdongcn Swift语言版二维码识别及生成类库。
- SQLiteDB in Swift: "This is a basic SQLite wrapper for Swift. It is very simple at the moment and does not provide any advanced functionality. Additionally, it's not pure Swift at the moment due to some difficulties in making all of the necessary sqlite C API calls from Swift."
- raywenderlich.com: "This blog is focused on developing high quality programming tutorials. Our goal is to take the coolest and most challenging topics and make them easy for everyone to learn – so we can all make amazing apps." 这个站专注于开发高质量编程指南(近期优质Swift文章及视频教程不断)。还第一时间出了三本Swift新书(开始接受预订)。官方网站有简体中文,可惜译文更新比较慢。P.S. 国内资深技术同行也经常转载此站文章。
- jamesonquave.com: 移动开发者,优秀个人博客(近期文章同样关注于Swift语言,写得很优质)。同时他将于8/30发布一本新书《Developing iOS 8 Apps in Swift》 (Learn To Make Real World iOS 8 Apps)及视频教程。
以下是其它开发者社区或Swift爱好者整理的有关Swift语言学习的资源列表,供参考:
- 码农周刊《Swift 特刊》
- CocoaChina《Swift新手入门汇集帖》
- CSDN_CODE《Swift编程语言资料大合集》
- InfoQ《学习苹果Swift语言的一些在线资源(英文)》
- 刘兰涛《Swift学习资源》 By @懒桃儿吃桃儿
- InfoQ《苹果发布Swift编程语言-iOS移动开发周报》: By @唐巧_boy
开放平台相对于Swift语言更具战略意义,这是开发者不得不面对的挑战。也是苹果新一代创新应用的催化剂。通过Extension达成应用之间的协同及通讯,这是对生态内应用开放的基础。让我更期待的是,Extension在Safari Action上实现及支持,这是实现平台开放及跨平台应用最简单直接的方案。 __
- 谈谈 iOS 8 和 OS X 10.10 的 Extension: "我个人认为这是 iOS 和 OS X 发展至今非常具有里程碑意义的一处改进,甚至比 UI 上的改变重要的多。我想简单地谈一下为何 Extensions 这么重要。" By @图拉鼎
- ViewSource(Swift+Objective-C): 通过iOS 8 Extension实现让Web工程师喜欢的"显示网页源代码"。
- WWDC 2014给开发者带来了什么?: "苹果向第三方开发者开放了大量的可调用特性和4000个新API——指纹识别、云存储、智能家居平台、相机控制、健康数据平台、3D图形API、对iOS 8可扩展程序的调用,以及新的编程语言Swift。PingWest制作了一种信息图带你一览这些新特性"
- 编程语言进化链的顶端:为什么说Swift正在颠覆整个互联网生态?(36Kr): "Swift 代表的程序猿先进生产力的发展要求(提高编程效率),代表了计算机先进文化的发展方向(语法简洁,现代),代表了广大人民的根本利益(写起来爽,学起来快)。"
- 苹果编程语言Swift解析:将推动应用开发巨变(CNET): "如果编程语言更加易学易用,那么应用开发的门槛将会降低,导致更多新手开发者参与这一行业。"
- 外媒评论:苹果公司Swift语言将改变一切: 美国财经网站Motley Fool针对Swift比较中性的一篇评论文章,因此目标读者是非技术人员,可读性还不错。
- 苹果新贵 Swift 之前世今生(池建强): 这篇文章故事性很强,不过,的确把前世今生、来龙去脉交待了一遍,适合刚开始了解swift语言的程序员。
- WWDC 2014: 给第三方开发者的情书(Qdaily 李如一): "iOS 和 Mac 上的御用语言 Objective-C 可以追溯至 NeXT 时代,换言之,它已经有超过二十年的历史。Swift 作为苹果发明的编程语言,也继承了苹果产品的传统"
- Swift中文翻译组: 近30人9天协作完成翻译近670页的英文文档
- 协同写作的力量——中国开发者9天完成《Swift语言》中文版: "详细介绍了GitHub上开源翻译《Swift语言》这个开完项目,发起者是一个90后的大学生,整个翻译团队在9天内完成了近670页的Swift语言文档翻译工作。" By 36Kr
- 翻译暂时告一段落 写点感想吧 : "现在翻译已经告一段落,感觉这段时间的效率真是高的可怕,也许是因为一种成就感,或许带了那么一点功利心(我想每个人或多或少的都会有一点吧)。" By @CoverXiT
- Apple的Swift语言: "哥也无意中在Github上看到这个翻译项目,并有幸参与了翻译,算是亲身体验了一把多人协作的开源项目,感觉很赞也很有成就感……" By @TimothyYe
- 雨燕Swift: "...我做翻译这件事的目的其实挺自私的,没想改变世界,没想着跟世界同步,没想干什么轰轰烈烈的大事。... 我是Aminby,和大多数程序员一样默默无闻地用国内外先进的技术或解决方案为工作忙活着的普通人。" By @老白经aminby