Which would be easier to learn, the Android SDK or iPhone SDK?
Asked by
patg7590 (
4608)
October 7th, 2009
I have no experience programming whatsoever. I know html and css, and can stumble my way through javascript. I have working knowledge of computers, mainly mac and winblows, I have basic linux skills but nothing to brag about.
Just wondering if it’s worth me finding HD space to try to do eother of the SDK’s.
Thanks!
Observing members:
0
Composing members:
0
7 Answers
Adobe just announced that Flash CS5 will compile apps for the iPhone. Flash can do some powerful stuff. Basically you can write a app in Flash and put it in the app store. Writing stuff in Actionscript is going to be a lot easier than Objective C or whatever Andriod uses (Java?).
I know a bit of objective C and I am brushing up on my actionscript since I think that is a better fit for me.
http://labs.adobe.com/wiki/index.php/Applications_for_iPhone
It will probably take you three to four years of working on it to become a competent programmer. Compared to the investment of learning to program, the effort involved in learning an API is pretty minimal.
In particular, you can look up details of an API. Programming is something you have to learn, understand, and internalize.
iPhone will probably be easier for you at this point, but if you have no programming experience, I’d suggest just starting to learn programming, say with Python, for example.
@johnpowell Android is based of the Linux Kernel. And my friends dad is currently making a living off selling Android apps. Not only that but the SDK for Android is completely free where as the iPhone one costs god knows how much. And writing a iPhone program does mean it will get accepted into the Apps store that easily. Apple has one of the most @#$% up app approval processes on the face of the planet. And Donut has built in Flash.
And didn’t Adobe say that there would be Flash for all the smartphones but not the iPhone?
Just to clear up a few misconceptions floating around this thread- Adobe Flash CS5 will be able to publish native iPhone apps, but Flash Player will NOT be included on the iPhone in the near future. Flash CS5 accomplishes iPhone app publishing because Actionscript 3 and Objective-C are both object oriented programming languages and the difference between the 2 are mainly based on syntax. In other words, one language can be translated to the other, which is exactly what Adobe has decided to build into Flash CS5.
Secondly, the iPhone app approval process, although much-maligned online, is actually quite efficient for the vast majority of developers. People just like the belly-ache. Somewhere between 90 and 95% of apps submitted to the App store end up in the app store within 2 weeks. And most apps that are initially rejected are approved upon resubmission after bug fixes. There’s nothing @#S% up about the approval process, it’s just become very trendy to complain about it.
That being said to answer your initial question, learning to program will be a massive undertaking, no matter what platform you choose to learn on. Base your decision on your commitment and possible upside. iPhone has a larger install base and a much more established App Store, but Android supports PC development, whereas currently you can only download the iPhone SDK on a Mac. Android is also much more flexible and is more than just a phone OS. It is available on every phone carrier, except AT&T and on many more devices. So your reach is potentially wider with Android, even though there are more users on iPhone. This also presents a challenge as the iPhone is a controlled atmosphere. You know exactly what device your app will run on and there are no variables, such as screen resolution, processor, available memory, etc. It’s really a toss-up, but the nice thing is once you learn to program, if you’re any good, you can pick up more languages fairly quickly.
Good luck!
I will most likely be learning AS in the near future, being fluent with AS, would I be able to do either one more easily than the other?
AS, Java (as used by Android), and Objective-C (as used by the iPhone) are all what’s known as object-oriented languages and have several similarities. There’s also many differences, but once you learn to program, the differences between languages are largely semantic and have to do more with syntax than anything else. It’s not uncommon for a programmer to be able to write code in several different languages because the general philosophy behind any given language is likely very similar to any other language.
So learn AS3, then move on to whatever you’re comfortable with. It may be a moot point, since Flash CS5 will be able to publish iPhone apps and most other mobile platforms actually run Flash.
Answer this question