Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

MacRumors

macrumors bot
Original poster
Apr 12, 2001
63,443
30,650



Apple devoted the last third of its keynote address at the Worldwide Developer Conference today to improvements for its Software Development Kit (SDK), launching a new programming language called Swift, and development kits for health, home automation, iCloud and inter-app operability.

ios8sdk.png
The announcement that got the biggest reaction from developers was Swift, a new programming language for Cocoa and Cocoa Touch that Apple calls modern, fast and powerful and designed for safety.
Swift is the result of the latest research on programming languages, combined with decades of experience building Apple platforms. Named parameters brought forward from Objective-C are expressed in a clean syntax that makes APIs in Swift even easier to read and maintain. Inferred types make code cleaner and less prone to mistakes, while modules eliminate headers and provide namespaces. Memory is managed automatically, and you don't even need to type semi-colons.
Swift also includes "Playgrounds", which allows developers to see the results of their code in a side panel in real time. The developer community appears extremely excited about Swift, with Realmac's Nik Fletcher saying he had "no words". Notable Apple pundit and developer John Gruber said that Swift is "huge, huge news" and the "future of all Apple development".

iCloud has also been partly opened up for developers with a powerful new framework for developers called CloudKit. It allows developers to avoid costly and time-consuming coding the server-side of applications, with Apple providing huge amounts of cloud storage and computing power for free, albeit with extremely high limits to encourage tight coding.
Leverage the full power of iCloud and build apps with the new CloudKit framework. Now you can easily and securely store and efficiently retrieve your app data like structured data in a database or assets right from iCloud. CloudKit also enables your users to anonymously sign in to your apps with their iCloud Apple IDs without sharing their personal information.
Additionally, Apple announced lots of new APIs for developers to take further advantage of iOS. Extensibility allows apps from the App Store, which are usually isolated in sandboxes, to communicate with each other. For instance, the Pinterest app could be updated to provide a sharing option in Safari, or Bing could be updated to provide translations within Safari. Another example includes the Photos app, which can use filters from third-party apps like VSCO.

Apps from the App Store can send widgets to the Today pane in the Notification Center. For instance, ESPN's SportsCenter could add a widget within the Today pane that allows users to easily check the latest sports scores without having to open the app. Widgets are also interactive, allowing users to, for example, bid for an item on eBay from within the Notification Center.

Other parts of iOS have been opened up to developers as well, including the ability for users to swap out the default iOS keyboard for third-party options like Swype. Touch ID has also been opened up to developers, allowing apps like Mint to use fingerprint scans instead of passwords.

Apple also announced its rumored home automation platform, called HomeKit. Previously, each home automation app used its own security protocols. Now, after working together with leaders in the home automation field, all apps can work together with a single protocol and secure pairings. This allows automated home devices, like Phillips' Hue lights, to work with Siri. Users can now tell Siri something like "Siri, get ready for bed" to turn off the lights, close the garage and whatever other functions are automated in a users' home.

Apple has also improved things for game developers, announcing Metal, which frees up resources for game developers to make better looking and more powerful games for iOS devices. For instance, EA would now be able to use its Frostbite engine for console games for games meant for iOS, like the upcoming Plants vs Zombies: Garden Warfare.

Xcode has been updated with live rendering, view debugging, performance testing, storyboards and more.

All of these SDK features are available for developers in the iOS 8 beta today, and will be available for consumers later this year in the fall. Much more information is available at Apple's Developer website.

Article Link: Apple Announces Significant SDK Improvements with New 'Swift' Programming Language, CloudKit and More
 

Parasprite

macrumors 68000
Mar 5, 2013
1,698
144
This is both exciting and really daunting.

At least it gets easier the more of them you learn...
 

AdonisSMU

macrumors 604
Oct 23, 2010
7,297
3,047
I personally like the idea of Swift. It makes me wonder about the future of the web. I know the web isn't going anywhere anytime soon. However, Swift really tries to capture the benefit of web technologies and traditional programing paradigms. I am going to spend the next few months on this but hmmmm....
 

ianray

macrumors 6502
Jun 22, 2010
452
0
@
"The Swift Programming Language" on iBooks is nicely typeset, and nicely paced. (But clearly aimed at a less experienced audience than K&R...)

At first glance I have mixed feelings about the language. Swift is less opinionated than Go, and as such that gives an initial feeling of 'design by committee'. But, I will dig deeper... :)
 

iGuyS

macrumors newbie
Nov 8, 2013
9
0
These were pretty major announcements. Some of these things were assumed to simply never be a part of what Apple would do for developers or users. For example, people were assuming that a replacement for Obj. C would be years in the future, if ever. Likewise with allowing developers hooks directly into system apps to improve them.

Kind of thrilling. Not sure what to think about Apple now, to be honest. And I mean that in a good way.
 
Last edited:

wilhoitm

macrumors 6502a
Jul 22, 2002
819
958
This was one of the few things I wasn't expecting.

Wow, this changes everything! Swift! :apple:

A 21st Century programming language!

Apple just might crash the Internet today!

Swift was the most important announcement today!

How come this is not on the front page? :confused:
 

Bevz

macrumors 6502a
Oct 23, 2007
816
137
UK
Great to see Apple doing something really fundamental in software and making a large part of the WWDC keynote about Software, Programming and the SDK!
I think there was some really important stuff announced today which really nailed the direction of travel for the next few years. It looks really exciting! :) Best keynote i've seen in a long time!
 

-LikesMac-

macrumors 6502
Jun 20, 2010
429
23
Is Swift an full-blown language or something like AppleScript.

Either way, I like the direction Apple is going.

Swift is supposed to be full-blown.

From the intro:
“Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible, and more fun. Swift’s clean slate, backed by the mature and much-loved Cocoa and Cocoa Touch frameworks”

Excerpt From: Apple Inc. “The Swift Programming Language.” iBooks. https://itun.es/us/jEUH0.l
 

Ralf The Dog

macrumors regular
May 1, 2008
192
0
Metal blew me away. I thought it would be the IOS announcement of the decade. Then they hit us with Swift. (One more thing!)

I only wish Swift was available for server side development.
 

plutonium

macrumors newbie
Jan 31, 2011
3
0
Expect a name change...

There was already a programming language named Swift for scientific computing (http://swift-lang.org) that has very different goals (highly parallel, clusters, etc.).

Since the publications about Swift are over a year old, it was written by University of Chicago and Argonne National Lab, and is funded by the NSF -- and in use for HPC now, Apple will likely not use the name swift after the lawyers are done.

I have no idea how they missed that one. It's not like iPhone, where they chose to violate Cisco and just pay them off. Not going to be able to pay off a national lab or the NSF as easily.

Language looks interesting, though.
 

wilhoitm

macrumors 6502a
Jul 22, 2002
819
958
Swift is supposed to be full-blown.

From the intro:
“Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible, and more fun. Swift’s clean slate, backed by the mature and much-loved Cocoa and Cocoa Touch frameworks”

Excerpt From: Apple Inc. “The Swift Programming Language.” iBooks. https://itun.es/us/jEUH0.l


Full blown! And at first glance it looks like it is a mixture of Java, Ruby, C, C++, Python, and JavaScript and a few other languages. It looks extremely powerful and concise. I only had 4 hours of sleep so it is making my head hurt right now but I am loving what I see.

I am not sure if it is compiled or interpreted or both but it has realtime interactive output of UI and even of graphics so they must be doing something pretty interesting! :eek:

It also has all of the epic expressive language constructs like:

Closures unified with function pointers
Tuples and multiple return values
Generics
Fast and concise iteration over a range or collection
Structs that support methods, extensions, protocols.
Functional programming patterns, e.g.: map and filter
 

wilhoitm

macrumors 6502a
Jul 22, 2002
819
958
There was already a programming language named Swift for scientific computing (http://swift-lang.org) that has very different goals (highly parallel, clusters, etc.).

Since the publications about Swift are over a year old, it was written by University of Chicago and Argonne National Lab, and is funded by the NSF -- and in use for HPC now, Apple will likely not use the name swift after the lawyers are done.

I have no idea how they missed that one. It's not like iPhone, where they chose to violate Cisco and just pay them off. Not going to be able to pay off a national lab or the NSF as easily.

Language looks interesting, though.

No name change! Apple knew about it!

Apple has a little note at the bottom of their Swift page!

I am sure they worked this out.

https://developer.apple.com/swift/

Looking for the Swift parallel scripting language? Please visit http://swift-lang.org
 

atrevers

macrumors regular
May 24, 2007
128
27
UK
I'm a .NET developer, and I have to say I'm pretty excited about Swift. I've always found the syntax of Objective-C to be a little inaccessible in terms of it's differences to C# (certainly when it comes to switching from one language to another - whenever I've tried, it's always been hard to turn my brain around!). Swift on the other hand looks very familiar. A lot of it's features are straight out of C# with a bit of scripting thrown in - type inference (dynamics), generics, closures. Scanning the book, I can already write a fairly well featured Swift program despite having never heard of the language until about 2 hours ago. Well played Apple...
 

-LikesMac-

macrumors 6502
Jun 20, 2010
429
23
Can anyone comment on the potential difficulty of learning Objective-C and Swift at the same time? I was planning to learn Objective-C this summer...
 

wilhoitm

macrumors 6502a
Jul 22, 2002
819
958
Can anyone comment on the potential difficulty of learning Objective-C and Swift at the same time? I was planning to learn Objective-C this summer...

They have a Objective C to Swift Migration Guide which should help.

I wouldn't waste my time learning Objective C though... unless you want to do it for your own edification!

Would you rather have a 2014 Corvette or a 1983 Corvette? Objective C debuted way back in 1983 and it has a lot of legacy baggage.

Apple realized that to move forward agressively they needed a 21st Century programming language!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.