Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android developer moving to iOS - What do I need to know?

I'm interested in starting developing on the iOS platform, after a couple of years of Android work. What are the main things that are likely to trip me up when designing/coding for iOS instead of Android?

like image 649
fredley Avatar asked Jan 23 '11 12:01

fredley


People also ask

Is it easy to switch from Android to iOS development?

When switching to iOS from Android app development, there might be potential hindrances. Such as difficulty in implementation, lack of funds, and time. Also, you may stress out during the process, as learning new skills is sometimes overwhelming.

Is iOS Dev harder than Android?

For both new and experienced programmers, iOS is generally easier to develop for. iOS apps generally require less development time and are cheaper to build and maintain than Android apps. iOS developers use Swift, Apple's native programming language, whereas Android developers typically use Java and/or Kotlin.


1 Answers

I have done some iphone apps after doing Android.

  • Objective-c is just another language; not at all hard to learn.
  • Understand how iPhone memory works. How the ref count and AutoreleasePools stack works. This should be the most important thing to learn.
  • You will love the interface builder. Creating a new screen for the iPhone is much easier.
  • iPhone's version of the Android ListView is called a TableView. More or less the same but you need to define an amount of sections.
  • I love how iPhone devs use the Delegate pattern, I am using it in Android now. Pay attention to that.
  • Resources can have their own folders. For example: A drawable can be in /car/model/drawable
  • Adding animation to iphone objects is VERY easy. You will notice that a lot of methods have a last parameter with BOOL animated.
  • Creating custom components is easier.

Things that made me lose a lot of time:

  • You can send msgs to NIL.
  • Logs are not as friendly as Android's.
  • You need to add every file to the project. It's not just putting it in the correct place.
  • Updates to the env means downloading 2GB every time.
  • When printing logs with NSLog, NSString needs to use %@ not %s.
  • Xcode has some strange behavior. The cursor moves around your screen.
  • Merging commits in iPhone source is hard. The project file and the xibs always get conflicts.
like image 197
Macarse Avatar answered Oct 25 '22 02:10

Macarse