Ask HN: Resources for iOS programmer to learn Android
I've been coding in Objective-C for about 3 years, and I have a manageable understanding of Java. What are some good tutorials/resources for making the transition to Android from iOS?
The Google "Getting Started" tutorials were really clear and helpful, but I need more! Anything that makes comparisons of classes would be extremely helpful. For instance, it seems the Activity class is semi-equivalent to UIViewController class.
Side note: I find the emulator device/OS choices overwhelming. I knew there was fragmentation, but holy crap.
6 comments
[ 2.6 ms ] story [ 19.6 ms ] thread1) The activity life cycle model.[0] This is something that a lot of people moving over to Android struggle with for some reason. A strong understanding of this really helps.
2) Layout xml. In my opinion Layouts are a weak point for even reasonably experienced Android developers. This is an area that leads to a ton of performance issues if you don't think through it properly.
3)Device compatibility including targeting different SDKs[1] and different screens[2].
4) Adapters.[3] They are the data structures that back most of Android and if you are good with these there is a lot you can make with them pretty much alone.
5) If you have the time I also recommend reading through the Android design docs.[4] It helps give a bit of insight into what Android is trying to accomplish and what is important in the eco system.
These are just a couple general areas that are important and different. If you have more specific questions I'd be more then happy to help you out where I can here or by email (information in profile).
Here are a couple of extra resources that are really good:
API Reference (always important): http://developer.android.com/reference/packages.html
Romain Guy's Android blog: http://www.curious-creature.org/category/android/
[0]http://developer.android.com/reference/android/app/Activity.... [1]http://developer.android.com/guide/topics/manifest/uses-sdk-... [2]http://developer.android.com/guide/practices/screens_support... [3]http://developer.android.com/reference/android/widget/Adapte... [4]http://developer.android.com/design/index.html