dark mode light mode Search Menu
Search

Swift

It’s rare to be able to learn and use a new software programming language with an instant audience of tens of thousands of developers creating apps used by millions of people. Google did create and launch the Go language in 2009 which has increasing adoption rates. However, Apple’s recent launch of Swift has a built in audience of app developers interested in a simpler more powerful language than what they currently use, Objective-C, Cocoa, and Cocoa Touch.

Swift is the perfect language to investigate today then watch as it evolves. Chances are very good Swift will influence other languages and be influenced by changes in other languages. In that sense, Swift is an opportunity to experience a programming language as a living entity.

What Makes Swift Special?

Apple’s new language, announced in June 2014, does what you would expect: it improves on the current software tools developers use to build applications for phones, tablets, and computers that run iOS, Apple’s operating system.

However, the Swift programming language is far more ambitious than a simple replacement tool. Swift uses technology called LLVM (Low Level Virtual Machine) to run Swift programs on almost any computer and operating system. Like the Java language, Swift aims to be “write once, use anywhere.” Unlike Java, Swift benefits from the latest thinking about how to make this happen at the lowest levels of any computer, as close as possible to where the software instructions of a programming language are converted to ones and zeros.

Swift also introduces a mostly new paradigm called Playgrounds which makes it easier for developers to create applications. It’s mostly new because Playgrounds is inspired partly by Light Table, an integrated development environment and now open source project designed to make programming much easier and more intuitive. As with Light Table, Playgrounds lets you type in new code then immediately see your changes on the right side of your screen, no compiling needed until you’re finished and ready to ship.

But there are other equally important and interesting inspirations the Swift language incorporates and evolves. Definitely check out the Vimeo links to talks by designer Bret Victor for additional inspirations for Swift. There has been a lot of thought, over decades, about how to make programming more simple and human friendly. Many of those ideas are in Swift or inspired features included in the new language.

How is Swift Used?

The primary use for Swift is in building software applications for Apple phones, tablets, and computers, any device that runs iOS. Anyone interested in serious programming of applications for these platforms should find Swift interesting and useful. In theory, the language is simpler then Objective-C and use of LLVM makes the language faster. Tools like Playground also should encourage people who normally would not be interested to use traditional tools for programming.

Learn More

Swift

https://developer.apple.com/swift/
https://developer.apple.com/library/ios/documentation/swift/conceptual/Swift_Programming_Language/GuidedTour.html
https://developer.apple.com/swift/resources/
http://en.wikipedia.org/wiki/Swift_%28programming_language%29

Swift Inspirations

http://www.nondot.org/sabre/
http://lighttable.com/2014/06/10/light-table-and-apples-swift/
http://lighttable.com/2012/06/24/its-playtime/
http://vimeo.com/36579366 (Bret Victor)
http://vimeo.com/66085662 (Bret Victor)

Why Apple's Swift Language Will Instantly Remake Computer Programming

http://www.wired.com/2014/07/apple-swift/

Why Coders Are Going Nuts Over Apple's New Programming Language

http://www.wired.com/2014/06/apple-swift-language/

The One Last Thread Holding Apple and Google Together

Describes how Google and Apple both use LLVM to run apps on their operating systems.
http://www.wired.com/2013/07/apple-google-llvm/all/

Building Your First Swift App

https://developer.apple.com/swift/blog/?id=16

Introduction to the Swift Programming Language

http://www.sitepoint.com/introduction-swift-programming-language/

Swift Tutorial: A Quick Start

http://www.raywenderlich.com/74438/swift-tutorial-a-quick-start
http://www.raywenderlich.com/74904/swift-tutorial-part-2-simple-ios-app

6 Best Free Swift Tutorials for Apple's New Programming Language

http://www.skilledup.com/learn/programming/6-best-free-swift-tutorials-programming-new-language/

Objective-C

http://en.wikipedia.org/wiki/Objective-C
https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html

Cocoa

http://en.wikipedia.org/wiki/Cocoa_%28API%29
http://developer.apple.com/library/mac/navigation/#section=Frameworks&topic=Cocoa%20Layer
http://www.cocoadevcentral.com/

Cocoa Touch

http://en.wikipedia.org/wiki/Cocoa_Touch
http://developer.apple.com/technologies/ios/cocoa-touch.html
http://developer.apple.com/library/ios/#documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/iPhoneOSTechnologies/iPhoneOSTechnologies.html%23//apple_ref/doc/uid/TP40007898-CH3-SW1

50 Tools and Resources for Swift Programming

http://www.computersciencezone.org/swift-programming-language-tools/

Related Posts