Inspecting Swift, Apple’s Gem of a New Programming Language
Maybe some people were expecting Swift, I wasn’t. However the need for Swift has existed for well over a decade. Objective-C has been a notorious, albeit capable language, that much of the Apple Developer Community has wanted replaced for some time. If not replace, at least an alternate provided that wasn’t so cumbersome. Enter Apple’s Swift (not to be confused with the Swift scripting language).
With the release of Swift, Apple finally has released a programming language that brings the OS X and iOS Platform Language options into the 21st Century. I say this simply because .NET’s C#, has had many of the features on Windows since 2005 and Windows Phone since it’s release some years later. Many of these features are a standard in many modern languages today; closures with function pointers, generics, tuples and related multiple value return values, and functional programming patterns just to name a few.
Swift is being released as a replacement for Objective-C. That leaves Swift with 20 years of Objective-C to replace plus a host of new features already implemented. This isn’t a bad thing, but it definitely will provide a rough growing experience for the language. Just do a search on #swift and you’ll see the twitterverse is alive with conversation and people trying out the language, with a few notable bugs and gotchas here and there.
Wrote my first few lines of #swift. Predictably, there were bugs.
— ________ (@gnuchu) June 2, 2014
What Will Swift Do For Apple and Its Apple Developer Community?
On the flip side, there are still standard development environments and IDE options to develop with Swift. It uses LLVM to build with XCode, and by association it can run side by side with Objective-C. This inherent feature will help developers that try to clean up and port old Objective-C applications. If someone isn’t porting an application, it then provides the ability for the developers to at least create new features with Swift instead of Objective-C. Immediately and over time, Swift will start saving a lot of time over Objective-C.
From a computing point of view, Swift is dramatically faster than Objective-C for many processing tasks. Providing an immediate jolt in performance for applications ported over to Swift that are currently in Objective-C. The other features that will help developers in huge ways include; first-order objects, nested functions, closures and many others. Overall Swift will have a huge pay off for Apple since it will bring iOS and OS-X the cleaner and more modern languages features that the modern software developer demands. By appealing to a greater number of developers, Apple has the obvious addition of thousands of new prospective platform developers.
Xamarin’s Been At It For Years
In my humble opinion, Swift is a major move forward in modernizing the language options for OS-X and iOS. Objective-C has left Apple behind competitors for the last 10 or so years. But even with this addition, other options have been available that provide a clean language, like C# to build into iOS and OS-X Application. Xamarin Studio has used C# which has the features that Swift now has, except C# has had them for over a decade. Many of the newer features C# has also had, and for years Xamarin has provided this avenue for building iOS and OS-X Applications. Albeit, without official endorsement from Apple and C# originating from Microsoft, it’s always received a small welcome among Apple and Microsoft Developers.