But when it comes to the development of high demand (in terms of performance) mobile apps, using native languages like Swift for iOS and Java for Android is still the way to go. This might change with Googles Flutter framework.
I just watched the presentation on Apple’s new programming language: Swift. This means the end for Objective C and it fundamentally changes the world of iOS programming.
It is much easier to learn and much easier to work with and so we will see it used by a lot more programmers.
About the Swift Language itself:
It looks like a modern scripting language that shares similarities to Python and other modern nimble languages. I just took a quick look at some Swift code and it is indeed much easier to learn than Objective C.
Take a look at this:
let label = "The width is "
let width = 94
For the constant (created with the keyword ‘let’) you don’t necessarily need to declare the type of data that your constant is holding (if you will) Swift is smart enough (many times) to detect the data type automatically. For example: let width = 94
… It seems pretty clear the ’94’ above is an int and not a string.
When there are situations where the initial value of your constant does not provide enough information with regards to its’ type, then you can specify it’s value like so:
let explicitDouble: Double = 70
Casting Types with Swift:
let label = "The width is "
let width = 94
let widthLabel = label + String(width)
In the above code, I had to convert my ‘width’ constant from an integer (I’m sure Swift set ‘width’ to int when we declared the constant) .. to a string using: String(width)
Anyway, I just started looking at this language 20 minutes ago and I have a lot to learn! But, from what I’ve seen so far, and from what I’ve seen with the new Xcode tools and Swift Playground (which gives you live feedback of your code) I think this could be a great language to learn and teach with.
So you’re a young nerd programmer who is trying to decide which direction to go in when it comes to programming for mobile devices, should you learn iOS development or Android?
At this time, Android is by far the most popular mobile OS with about 70% of the market share, whereas iOS accounts for about 20%. But, I was told recently that iOS is much more common online – it seems many Android phone users don’t get a data plan?
One of the things that I see time and time again, is a (once hot) technology … fall into a niche.
This time, I think it is native iOS programming that will slowly fade away. Why?
Here are my top five reason why native iOS programming will become niche:
iPhone penetration is falling – Android is now king of mobile.
HTML5 and CSS3 based apps can can do just about everything native iOS apps can.
HTML5 and CSS3 apps are cross platform – iOS apps are not.
As a web developer or web designer, you have to mindful of who your audience is when you are putting up a new web site or web application.
Back in the 1990’s when I started, you had to consider which web browser but you were pretty safe to assume that people would be visiting your website on a desktop computer and 95% of the time, it was Windows.
… Things have changed and will continue to change.
Check out what a well known hedge fund analyst is saying – Roger McNamee of Elevation Partners told CNBC:
The explosion of mobile platforms, particularly iOS and Android, means that Windows will account for less than 50% of all Internet-connected devices in 2011.
Now that doesn’t mean 50% of the people visiting your site will be using iOS or Android … at least not yet. But it does speak of a powerful trend that will not stop. That trend is toward smartphones, tablets and the death of the desktop. Since Windows on the smartphone and tablet is a non-starter, I think as a web application developers, we have to see Android and iOS as being the future.
What does that mean for PHP developers?
I think PHP programmers are going to have understand the new front end … the mobile device. As such, PHP’rs are really going to have to get into the client-side technologies because they have an impact how we write PHP code. I’m thinking:
– HTML 5
– CSS 3
… You better understand how these technologies work with PHP if you want a job (or contracts) as a PHP programmer.
This just out: Android Market Share Doubles, iOS Drops In Q3
Android’s share of the worldwide smartphone market was 52.3% for Q3, double what it was a year ago, according to fresh data from Gartner. Apple’s iOS dropped on a year over year basis to 15% market share for Q3.
The culprit for Apple’s drop? The iPhone 4, of course. People were waiting for the iPhone 5, or as it turned out, the iPhone 4S.
I’m no Android fan-boy and I happen to like Apple products a lot – I think the the Mac Air is the greatest computer ever made. But as a practical web designer and web programmer, you have to be mindful of what’s going on in the real world. It is clear that Android is and will be the dominate player.
So web designers and developers (programmers) have to learn HTML 5 and CSS 3 since they both run fine on Android and iOS.