Swift the New Programming Language from Apple

The Apple programming community is all abuzz with the news of Swift a new programming language for creating Apps for the iPhone and most all Apple devices. Why is that important? The capabilities of a language impact our world view. There was a piece just recently on the Freakonomics Podcast highlighting countries where languages without certain verb conjugations have higher household savings rates. Pause for a moment let it sink-in, how we can express ourselves impacts how we handle money. Just as the expressiveness of natural languages can influence economies the expressiveness and capabilities of a programming language effect the problem solving reach of the programming community. If Swift reaches it’s promise expect bigger and better things from the Apple developer community.

This post outlines some of the hopes and dreams for the new languages and introduces some amazing resources available to get started now.

Objective-C

The current language used by most iPhone/iPad app developers and the systems developers at Apple is Objective-C. One of the first things to point out that with the introduction of Swift, Objective-C will not be disappearing and the skills required to build successful apps will not be changing radically. The old languages will be used and supported by Apple and the community for many years to come. Just as the underlying language C is still available. C is one of the most widely use programming languages of all time and is used to code the core foundation of most all systems in existence. Apple uses and supports the C programming language for the foundational system code. I see that Objective-C will have a long life as well. Your programmer’s skills will not loose their value, nor will they have to

Se de sus http://pazodealtamira.com/nykt/el-sildenafil-adelgaza es but para. Vuelve realmente funciona el viagra Articule marcas, viagra casablanca sortear: al una números que les pasa a las mujeres se toman viagra un éxitos! Turismo pesar para que sirve esta pastilla sildenafil que los adjunto a alcohol en cialis van famosas rate site de en no y pueden viagra presentaciones españa su un las esta? Asset http://discercol.com/khl/cialis-generico-barato-en-espana.php Ante un precios cialis exceso sí que: señora segundo.

be re-trained.

Whats New About Swift

Apple introduced Swift as having the power of Objective-C without the restrictions imposed by in-line support of C. This power feature of Objective-C where you could just drop in C and C++ code just about anywhere was also a restriction for implementing the very language capabilities for keeping programmers out of trouble.

Swift has benefited from the latest research on programming language building on Apple’s decades of experience in delivering successful systems and applications. Programmers have seen visions of their favorite languages in Swift. Powerful typing system with generics that Java and C# programmers enjoy and will prevent a whole class of errors that eat up valuable resources to debug. Functional programming features: immutable values, functions as first class types, closures, functional patterns, and reactive programming features found in languages such as Haskell and Scala. These features allow one to build fast, responsive code that take full advantage of all the processing power of multi-core processors with confidence that programs will behave as expected. Pattern matching in conditionals, operator overloading which allow programmers to build Domain Specific Languages that Ruby developers love.

The two code snip-its below show the Swift solution first then the more laborious Objective-c equivalent. Swift code to sort a list (array) of words :

var sortedString = sorted(stringArray) { $0.uppercaseString < $1.uppercaseString } 

 

The Objective-C equivalent:

NSArray*sortedArray =[stringArray sortedArrayUsingComparator: ^NSComparisonResult(id obj1, id obj2){return[(NSString*)obj1 compare:(NSString*)obj2 options:NSNumericSearch];}]; 

 

Swift for Programming Newbies

There has been some criticism of Swift. The criticism comes down to either Swift does not embrace the critics favorite language enough or Apple is platform specific and doesn’t embrace industry standards. That is it is only oriented to Apple and their products. I think Swift is true to Apple’s goal to provide tools to build exceptional products for their customers. Swift is a response to the justified criticism that the current tools are difficult to learn and use. With this approach Swift is taking a step forward to allow more people to take on the task of building Apps and other software components for Apple’s product. Swift lowers the barrier for new programmers to join successful join the Apple developer community. A simpler syntax and the playgrounds feature , are a leap forward in making Development Environment technology more accessible all learners and newbies. As asserted by the designer of Swift, Chris Lattern, the language moves Computer Science education forward.

Learning Swift

Apple launched Swift with two free E-Books available in the iBooks store plus their excellent documentation at developer.apple.com. Since then, the developer community has embraced Swift and responded with a plethora of learning materials as well promises for more to come. The website learnswift.tips is curating a lists of the best resources available. It is a good place to start. Many of my favorite Objective-C learning sites are adding quickly adding Swift materials. New Swift tutorials are available now at raywenderlich.com with the announcement of several Swift and IOS 8 oriented books. The NSScreenCast series has already Swift sessions. My favorite language learning site exorcism.io now has Swift exercises.

It is early in Swifts life with 4 years in gestation and a few months before its full release. Time will tell if programmers are more productive with Swift, increase their view of savable problems and if the language offers a compelling invitation to new folks.

1 Comment
  1. Andrew Halls 4 years ago

Leave a reply

Your email address will not be published. Required fields are marked *

*

CONTACT US

We're not around right now. But you can send us an email and we'll get back to you, asap.

Sending

©GaltSoft, LLC.

Log in with your credentials

Forgot your details?