https://github.com/ipader/SwiftGuide
这份指南汇集了 Swift 语言主流学习资源,并以开发者的视角整理编排。
GitHub:ipader/SwiftGuide | 网站:http://dev.swiftguide.cn | 欢迎开发者一起维护,或反馈/投稿
想了解关于该指南及 Swift 更多信息的同学,可以阅读短文《致 Swift 开发者》。 想快速找到优秀开源项目的开发者,可以访问我们额外整理的《Swift 项目精选》。希望快速找到其中精选文章,可以访问《Swift 文章精选》。
@SwiftLanguage 更新于 2015-6-22,更新内容详见《Issue 32》
苹果针对 Swift 开发者官方文档入口。其中包括: Swift 概括,Swift Programming Language,Using Swift with Cocoa and Objective-C
苹果官方文档: 在线版(英文) | iBooks 版(英文)
爱好者翻译版: 在线版(中文) By @Swift 中文翻译组| PDF 版(提取码:vmcb) By @老码团队| 百度阅读版(By 小岂子)
相关文档
应用扩展要点(App Extension Essentials)
译文 | 译者 | 原文 |
---|---|---|
应用扩展如何工作 | @DevTalking | Understand How an Extension Works |
开发应用扩展 | - | Creating an App Extension |
APP 扩展提高你的应用影响力 | - | App Extensions Increase Your Impact |
常见问题的处理方案 | - | Handling Common Scenarios |
应用扩展类型(App Extension Types)
译文 | 译者 / 校对 | 原文 |
---|---|---|
Today | @CocoaChina / 唧唧歪歪 | Today |
Share | @CocoaChina / 张国鹏 | Share |
Action | @CocoaChina | Action |
照片编辑 | - | Photo Editing |
Finder 同步 | @星夜暮晨 | Finder Sync |
文档提供 | - | Document Provider |
第三方输入法 | - | Custom Keyboard |
"值得一提的是,Swift 博客是苹果官方网站的第一个 Blog,这也代表了苹果对开发者和消费者的态度正变得越来越开放。"
译文 | 译者 | 原文 |
---|---|---|
- | N/A | New Playgrounds Part 2 - Sources |
Swift Nullability and Objective-C | Bannings | Nullability and Objective-C |
- | N/A | New Playgrounds |
- | N/A | The as! Operator |
Swift 1.2 和 Xcode 6.3 beta | @老码团队 | Swift 1.2 and Xcode 6.3 beta |
- | N/A | New Swift Development Courses Available on iTunes U |
Swift REPL:一切皆可重定义 | @MichealGeng | Redefining Everything with the Swift REPL |
Swift 中的 NSMethodSignature 怎么了? | @pockry | What Happened to NSMethodSignature? |
Swift REPL 入门介绍 | - | Introduction to the Swift REPL |
可失败构造器 | @DevTalking | Failable Initializers |
- | N/A | Building Your First Swift App Video |
通过 Playground 展示一些编码模式 | @DevTalking | Patterns Playground |
Swift 中 Optional 类型的使用案例分析:valuesForKeys | - | Optionals Case Study:valuesForKeys |
Swift 中的访问控制与 protected | - | Access Control and protected |
Swift 中的值类型和参照类型 | - | Value and Reference Types |
WWDC 2014大会中的 Playground 大炮气球示例 | - | Balloons |
在 Swift 中构建布尔类型 | - | Boolean |
Swift 中的文件和初始化 | - | Files and Initialization |
在 Swift 中使用 C 语言的指针 | - | Interacting with C Pointers |
*Swift 新特性 - 访问控制(文档版) | - | Access Control |
非官方中译版
译文 | 译者 | 原文 |
---|---|---|
UI 设计基础 | @腾讯ISUX | Designing for iOS |
设计策略 | - | Design Principles |
iOS 7 人机交互指南(旧版):中译汇总
中译精选
译文 | 译者 | 原文 | 来源 |
---|---|---|---|
Swift 自适应布局(Adaptive Layout)教程(一) | @DevTalking | Beginning Adaptive Layout Tutorial | raywenderlich |
如何使用 iOS 8 的虚化效果 | @CocoaChina | iOS 8 Visual Effects Tutorial | raywenderlich |
Web 工程师和设计师必须要知道的 iOS 8 的十个变化 | @罗罗磊磊 | iOS 8 and iPhone 6 for web developers and designers: next evolution for Safari and native webapps | mobilexweb |
如何在 Swift 中创建 Action 扩展 | @DevTalking | Action Extension in Swift | nsnerd.co |
iOS8 Day-by-Day :: Day2 :: 分享应用扩展 | @DevTalking | iOS8 Day-by-Day :: Day 2 :: Sharing Extension | shinobicontrols |
Swift 的强大之处 | 李子轩 | The Power of Swift | objc.io |
结构体和值类型 | @Onetaway | A Warm Welcome to Structs and Value Types | objc.io |
Swift 方法的多面性 | @唯木念 | The Many Faces of Swift Functions | objc.io |
Swift 的函数式 API | @请叫我汪二 | Functional APIs with Swift | objc.io |
Playground 快速原型制 | Programmer.Du | Rapid Prototyping in Swift Playgrounds | objc.io |
在 Swift 中自定义下标 | @DevTalking | Custom Subscripts in Swift | codingexplorer |
如何用 Swift 语言构建一个自定控件 | @BeyondVincent | How To Make a Custom Control in Swift | raywenderlich |
UIKit 重力学(一, 二) | @DevTalking | UIKit Dynamics Tutorial in Swift | raywenderlich |
Swift 中的延迟加载 | @Swiftist | Lazy Initialization with Swift | mikebuss |
The Swift Programming Language - 实验项目相关解决方案 | @CocoaChina | The Swift Programming Language: Solutions to Experiments | swiftcast.tv |
S008 - iOS 应用基础: 教程对于最基础的 UI 编程讲得特别细,时有反复强调 Swift 基础特性。个人感觉这个适合无 iOS UI 编程经验的同学,甚至也适合无 Swift 基础的同学。By @赵哲A
考虑到本文档内项目收录部分或许过于杂碎,因此,站在个人的角度,额外整理了一份《Swift 开源项目精选》,做已收录项目做了一个甄别、筛选。当然,由于个人能力及涉足范围所限,还远远不够,其中肯定有偏颇及不足,还望同学们多多见谅。更希望能得到你的帮助和补充,共同参与。
以下实用类库做为快速参考,更多实用类库需求,也可以去这里(Swift toolbox is a community-supported catalog of iOS and OSX libraries) (By Adam Leonard from swiftcast.tv), 这个网站收藏了 GitHub 开源社区中优质 Swift 资源库,并提供了分类及查询服务。
Mattt Thompson :著名开源作者,开发了知名的AFNetworking网络库。也是知名开发博客NSHipster网站主。
类库 | 相关文章 | 备注 |
---|---|---|
Alamofire/Alamofire | Alamofire | 为其著名的 AFNetworking 用 Swift 重写的网络基础库 |
mattt/Euler | Swift Operators | 这样写是否很数学、很逻辑?∛27÷3±5, ∑[3,1,2], ~0⊻1 |
mattt/Surge | 基于苹果 Accelerate 高性能计算框架库,计算效率提升惊人 | |
mattt/Literally | Swift Literal Convertibles | 常用数据类型的使用及转换工具库 |
工具类
图片
存储
远程访问
社交网络
框架
UI组件
测试相关
devtalking.com:高产的中译博客。翻译了官方博客 Swift Blog - Apple Developer,《App Extension Programming Guide》。参与翻译了《Swift Programming Language》等。
资源合集:以下是其它开发者社区或 Swift 爱好者整理的有关 Swift 语言学习的资源列表。
开放平台相对于 Swift 语言更具战略意义,这是开发者不得不面对的挑战。也是苹果新一代创新应用的催化剂。通过 Extension 达成应用之间的协同及通讯,这是对生态内应用开放的基础。让我更期待的是,Extension 在 Safari Action 上实现及支持,这是实现平台开放及跨平台应用最简单直接的方案。
WatchKit 确定了开发者在第一代 Apple Watch 能做什么,显然,这只是一个保守的开始。
WatchKit Programming Guide(中译在线版 By @CocoaChina)
译文 | 译者 | 原文 |
---|---|---|
概览 - 开始为 Apple Watch 进行开发 | @星夜暮晨 | Overview - Developing for Apple Watch |
概览 - 配置 Xcode 项目 | - | Overview - Configuring Your Xcode Project |
概览 - Watch 应用的体系结构 | - | Overview - Watch App Architecture |
概览 - 使用 iOS 技术 | - | Leveraging iOS Technologies |
WatchKit Apps - 概要 | @sherlockdan | WatchKit Apps - App Essentials |
WatchKit Apps - 界面导航 | @CocoaChina | WatchKit Apps - Interface Navigation |
WatchKit Apps - 界面对象 | - | WatchKit Apps - Interface Objects |
WatchKit Apps - 文本和标签、图片 | @sherlockdan | WatchKit Apps - Text and Labels, Images |
WatchKit Apps - 表格 | @CocoaChina | WatchKit Apps - Tables |
WatchKit Apps - 情景菜单 | - | WatchKit Apps - Context Menu |
Glances - Glance开发基础 | - | Glances - Glance Essentials |
Glances - 管理你的 Glance 界面 | - | Glances - Managing Your Glance Interface |
通知 - 有关通知的一些要点 | @星夜暮晨 | Notifications - Notification Essentials |
通知 - 自定义通知界面 | - | Notifications - Custom Notification Interfaces |
Apple Watch Human Interface Guidelines
中译在线版 By @CocoaChina
译文 | 译者 | 原文 |
---|---|---|
UI 设计基础 - 为 Apple Watch 而设计 | @CocoaChina | UI Design Basics - Designing for Apple Watch |
UI 设计基础 - App 剖析 | - | UI Design Basics - App Anatomy |
UI 设计基础 - Glances | - | UI Design Basics - Glances |
UI 设计基础 - 通知 | - | UI Design Basics - Notifications |
UI 设计基础 - 模态页面、布局 | - | UI Design Basics - Modal Sheets, Layout |
UI 设计基础 - 动画、品牌化 | - | UI Design Basics - Animations, Branding |
UI 设计基础 - 颜色和字体 | - | UI Design Basics - Color and Typography |
UI 元素 - 标签、图像、Groups | - | UI Elements - Labels, Images, Groups |
UI 元素 - 列表、按钮、开关、滑杆 | - | UI Elements - Tables, Buttons, Switches, Sliders |
UI 元素 - 地图、日期和计时器、菜单 | - | UI Elements--Maps, Dates and Timers, Menus |
图标与图片尺寸 | - | Icon and Image Sizes |
中译在线版 By @优秀网页设计
译文 | 译者 | 原文 |
---|---|---|
UI 设计基础 - Part 1, Part 2 | @陈子木 | UI Design Basics |
UI 元素设计 | @阿布 | UI Elements |
图标与图片设计 | @阿布 | Icon and Image Design |
WatchKit Development Tips
快速入门
教程精选