@swiftLanguage updated on June 6, 2016. Please refer to Issue 55 for updates. Review of previous updates see “Collected Weekly”

This guide is a compilation of major Swift language learning resources, organized from a developer’s perspective. For selected projects and articles, you can directly visit Swift Selected Projects and Swift Selected Articles. There’s also developer, Project, Best Practices, which developers maintain themselves. Don’t miss the active and excellent Developer profile pages, either.

directory


Getting started

Apple’s official documentation entry for Swift developers, including overview, blog (Chinese mirror) and development resources. The following documents (Swift 2.1) are required for entry (iBooks edition) :

  • Swift Programming Language (Chinese version | PDF version By SwiftGG)

  • Start Developing iOS Apps

  • Using Swift with Cocoa and Objective-C (英 文版 by@cocoachina)

    Apple also maintains the corresponding Beta (Swift 2.2) documentation:Swift Programming Language.Start Developing iOS Apps.Using Swift with Cocoa and Objective-C.

From a hands-on perspective, Swift Standard Library.playground is a great learning companion.

Stanford University: Developing iOS 8 Apps with Swift

In addition to the entry-level documentation mentioned above, the iOS Developer Library also provides developers with support for a larger, systematic development documentation.

The following lists several third-party Chinese translation documents:

  • API Design Guidelines (Translated By @swiftgg)
  • App Extension Programming Guide
  • IOS Human Interface Guidelines (英 文版)
  • HomeKit Developer Guide By @Cocoachina

Also to be appreciated: Apple added simplified Chinese subtitles to Apple TV Tech Talks and WWDC 2015 videos to make it easier for Chinese developers to watch authoritative technology sharing from the authorities.

For Swift open source and cross-platform development, visit swift.org

Tutorial article

The open source project

Recommendation site


The development tools

1. Programming tools

  • Xcode download: Apple Application Integration Development Environment. Support C/C++, Objective C, Swift, etc. No need to buy a developer plan, just download it.
  • Textmate: A highly customizable editor for Mac OS X, especially when I want to make a quick change but don’t want to wait for Xcode to load. The tool is now open source
  • Mou: A Markdown editor for OS X. Great for readme files, change logs, and more. Author: Luo Chen
  • Sublime Text ($) : Another popular lightweight, highly customizable editor for Mac OS X.
  • RunSwift: Students who are hesitant to get their hands on a MAC and start their Swift programming journey, or who just want to experiment with a simple Swift code but can’t be bothered to open Xcode, can try RunSwift, the Web-based Swift compilation environment.
  • Infinitapps-bezel: “Xcode 6’s Watch simulator isn’t intuitive enough? Bezel is a visual preview of WatchKit’s programs if you have xScope (Mac) or xScope mirror (iPhone) installed. By @Watchkit”
  • Markdown -> Playground: This open source project automatically converts Markdown with Swift code into Xcode Playgrounds files. Those of you who like to edit with Markdown are excited. The P.S. tool was written in NodeJS for reasons the author has explained.
  • IOS /Mac Autolayout Constraints: This is a nice tool that is intuitive and saves a lot of work on layout. Recommended by: @yingxing
  • Creating screenshots for AppStore reviews online: a handy productivity tool. Free, easy to operate, can be customized.
  • IBM Swift Sandbox: IBM’s online Swift site, needs to climb the wall.
  • SwiftStub: Another Swift online practice site.

3. The Xcode plug-in

  • CocoaPods: Third-party library management tool that allows you to easily integrate third-party libraries into your applications. Personally, I use CocoaPods for almost every project.
  • The CocoaPods Xcode Plugin is an Xcode Plugin that allows you to manage CocoaPod dependencies directly from Xcode.
  • Onevcat /VVDocumenter-Xcode: Shortcut notes Xcode plug-in. By @onevcat
  • ColorSense: a plug-in that displays color values and automatically generates color codes directly from the system’s ColorPicker
  • Xcode excellent plugin collation: Keep the Xcode plugin collation updated By @ddapps
  • CodeEagle/SwiftCodeSnippets: download the specified Xcode Snippet source of Xcode Plugin. The default source of the Snippet of code burczyk project/XcodeSwiftSnippets.
  • Realm /SwiftLint: Realm uses a checking tool written by Swift based on GitHub’s Swift Style Guide rules. In addition to the command line runtime, it also provides a way to integrate Xcode. For new teams, such tools can automatically constrain everyone to follow programming specifications.
  • How and how to fix plug-in failure after XCode upgrade: An analysis article triggered by a command. @_TongJZ
  • Fektur /CoPilot: Xcode can be co-programmed (as WebSocket communication) through this plug-in. Such a powerful “black tool”, do not love it can go. Demo video
  • Carthage: A new decentralized dependency manager that aims to manage Cocoa third-party frameworks in the simplest way possible. The advantages are obvious, but there are also disadvantages. Let’s see what happens next.

5. Debug tools

  • Mattt/fuckingclangwarnings.com: warning and semantic table. Don’t bother with Xcode warnings anymore! By @foogry

Media reports

Open platform

Apple Watch guide