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

spilakalb

macrumors member
Original poster
Sep 23, 2012
40
0
I heard that there are many tools available for ios apps without having the knowledge of Objective-C.In such scenario, how will this effect the native IOS developer? Let me know your thoughts...
 
Since, by definition, they are "native iOS" developers, such tools should not affect them at all; they ignore them. But, while admittedly oversimplifying it very much and downplaying such things as time and money, good developers should use whatever tools they feel will help them to achieve their goals.
 
Out of interest care to name some of these tools ?

I am a graphic designer / illustrator and not a programmer.

I have to make a very simple App based on a brochure, was thinking of doing it in indesign and letting Adobe Digital Publishing suite take care of the rest, but if there was other tools and ways I'd be very open to hearing them.
 
Oracle ADF Mobile enables developers to develop one application that can be deployed to multiple mobile device platforms including apple devices.
 
I heard that there are many tools available ... how will this effect the native IOS developer?

It will give any developer more options...

... most of which a native Objective C developer of iOS apps will ignore. Why? Native apps usually have a UI that is maximally customized to appeal to users of that platform, is more responsive, and is often available sooner than 3rd party tool providers can adapt to the latest and greatest API enhancements. Selling an app on 3 or 4 platforms, but with it 10X less popular on each (which often happens to cross-platform apps, especially if they have native competition), results in a net downside.

Case study: Facebook's iOS app.
 
Most of these are not free, some have yearly fees, and you become very dependent on them keeping up with changes. firewood hits an important point about updates.

Not to mention errors, it could be that Apple changes something to fix an error, the app engine might not work with that fix.

One last point is the power of the app engine. If your app is pretty simple, they can work, more advanced apps might not. You might need to add functionality that the engine doesn't offer.
 
I heard that there are many tools available for ios apps without having the knowledge of Objective-C.In such scenario, how will this effect the native IOS developer? Let me know your thoughts...

My honest opinion is that everyone should be easily able to make their own apps. I dream of a day when I explain an algorithm to Siri and she makes and deploys an app based on it on my phone :D

Anyways, as for the tools you mention, they are always going to lag behind the latest technologies iOS offers. So if Apple releases something new, say PassKit, then the native developers will be quickly able to roll out an app with it. But it will take a while for the developers using these tools, as these tools have to update, and figure out how to integrate with PassKit.

Also, as an ObjC developer, I am more biased towards saying that apps using CocoaTouch/Obj C are better than other non native alternatives. But I have seen a few apps in HTML 5, JS and other web technologies which are just superbly coded and beat many similar, native apps.

The level of customisation offered by the native iOS way will definitely beat these tools. So if you want to have a truly unique, complicated and snappy app, you will have to go by the native way.
 
If your app is simple and requires no coding (e.g, an informational app without any bells and whistles such as searching for or favoriting information), or you can copy and paste the code and maybe modify it just a little bit, you might try going with Xcode.

If your app requires more coding than is easily found and copied on the Internet, take a look at other tools. I personally recommend BuzzTouch. You'll still need to download the iOS SDK onto your machine, but you won't have to mess around with code. BuzzTouch will create an Xcode project for you. You may have to copy some files into the project, but that's easy. After that, you will start building your app on BuzzTouch. As a bonus, all the data you put into the app will be hosted on BuzzTouch's servers (although they recommend you set up your own server), so your users can receive updates instantly.

Other options include PhoneGap, which you can use with a mobile Web interface builder. If you know JavaScript, you might have an easier time using this - easier, that is, than learning how to use Xcode.
 
One more important factor is that the best tool for developing any software is very often the language in which the developer has already become most proficient.

People often grossly underestimate how long it takes to get good at another programming language or platform. So any brand new tool would have to have some pretty major advantages to make up for the 2 weeks to more likely 2 months and longer that it takes to get up to speed with some new language and tool platform.

If someone is already good at Objective C, what advantage is there in learning something else? If you want to do Android apps, just learn Java in addition to your current Objective C knowledge instead of some 3rd intermediate language that is slower on both platforms.

For a newbie programmer, learning one pseudo-cross-platform scripting language is easier than 3 native platform languages. But the UI results will probably show that it was done by a beginner anyway.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.