The years 2009 and 2010 have been crucial for the evolution of the mobile developer market and software engineering jobs. Most engineering students chose to learn Java, Android, PHP, or .Net for their careers. Generally, iOS (Objective C) was not as common. Why? Remember C language, Pointer? Those engineers were afraid of *. To be honest, I was one of them! Now, I have become an iOS Developer and am a big fan iOS.

Over time, Apple has taken some huge steps, such as the recent release of the iPhone 6, iOS 8 and Xcode 6. Apple is bringing a lot of cool changes to application development, visual design, and much more.

Although Objective-C language is popular, a new language for iOS (Cocoa/Cocoa Touch) called Swift has been introduced. The purpose of Swift is to run apps at a lightning-fast speed with a code that is easy to understand and develop.

[See Also: The Historic Introduction of Swift for App Developers]

Despite its name, Swift is unlikely to result in applications that run much faster than applications written in Objective-C. Although the two languages are different, they’re not that different. Both target the same Cocoa and Cocoa Touch APIs (for OS X and iOS, respectively), both are statically typed languages and both use the same LLVM compiler as well.

Ket Attractions

  • Experiment with Swift code in “Playgrounds”
    One of Swift’s most interesting features is an interactive environment called Playground. This tool lets you see the changes or additions to code as you type, without going through the time-consuming hooey of running the code through the compiler and executing it. Playgrounds enable the interactive experience of a script language, even though Swift compiles to a highly optimized native code. Type a line of code and the result appears immediately. When we’ve perfected our code in Playground, we simply move it into our project. Other programmers and developers can also practice Swift using Playgrounds.
  • Introduce .swift File
    Earlier in Objective-C with IOS 7, .h and .m handle controllers. In Swift, development programmers only have to deal with .Swift files.
  • Swift like Script Language
    The syntax of Swift language designed like a scripting language that can attract those developers who have been working with scripting languages, such as Python, for years. It looks like the Collections (variable, loop, array) in Swift is similar to some codes in python.
  • Swift introduces Generics
    In static coding, when you type a function, you have to declare the types of the function’s parameters. That is not a problem until you have a function that needs to work in different circumstances with different types.

[See also: Engineers Moving Smartly in iOS with RestKit]

  • Swift offers type inference
    Coders don’t need to spend time annotating variables with type information and risk making mistakes.
  • Swift tuples offer compound variables
    This is the best feature in my opinion. There are a number of ways to get the values in a tuple. For example, you can access them by index number (starting with 0) or you can decompose a tuple into separate constants or variables.

func minMax(array: [Int]) -> (min: Int, max: Int) {
var currentMin = array[0]
var currentMax = array[0]
for value in array[1..<array.count] {
if value < currentMin {

currentMin = value

} else if value > currentMax {
currentMax = value
return (currentMin, currentMax)

let bounds = minMax([8, -6, 2, 109, 3, 71])
println("min is (bounds.min) and max is (bounds.max)")

  • The introduction of strings in Switch Case (and fallthroughs as well)
  • Inheriting certain features from Java while incorporating a few inputs from Apple

Swift has exceeded my expectations and I’m sure will go a long way towards attracting developers that currently work with languages other than Objective-C. With Apple’s recently launched iPhone 6 with screen sizes 4.7” and 5.5” (iPhone 6 and iPhone 6 Plus), the iOS mobile app developer market is focusing heavily on upgrading and reskining iOS7 apps to fit on iOS8 with iPhone 6 compatibility. We feel these changes make the mobile development market better, creating better UX experiences for users. The Swift movement, along with the development of iOS, is one I definitely want to be part of.

Everything you need to know about outsourcing technology development
Access a special Introduction Package with everything you want to know about outsourcing your technology development. How should you evaluate a partner? What components of your solution that are suitable to be handed off to a partner? These answers and more below.

Introduction Package

This article was authored by Sitanshu Joshi, who is a Senior Software Engineer at Zymr.


Leave a Reply