Floo 에서 안드로이드 개발을 하다가, PodoTree 에서 iOS 개발을 하게 되어 경험담을 올립니다.

1. Java 와 Object C
C를 어느정도 아느냐에 따라 언어의 차이가 크게 또는 작게 다가오게 됩니다.
뭐 안드로이드로 개발하시는 분들도 점점 속도나 메모리 관련 문제를 겪다 보면
JNI 를 통해 C를 자주 건드시기 때문에 언어의 문제는 별로 크게 고민하지 않아도 될 것 같습니다.
하지만 C로 만들어진 엔진이나 기타 다른 모듈들을 사용할 때는 Object C가 훨씬 편합니다.

2. IDE
이클립스에서 개발하다가 x-code 와 IB를 쓰게되면 IB의 강력함에 놀라게 됩니다.
게다가 해상도도 하나라서 화면 디자인할 때 아이폰 개발이 훨씬 빠릅니다.
특히 에물레이터의 성능차이는 정말 황당할 정도 입니다.

3. 다양한 단말기 vs 하나의 단말기
안드로이드의 다양한 단말기로 인해 화면 디자인에 있어서 아이폰 보다 안드로이드가 상당히 높은 난이도를 가지고 있습니다.
또한 테스트에 들어가는 노력도 테스트 대상 단말기가 많기 때문에 안드로이드가 훨씬 많이 들게 되며,
안드로이드 개발에는 주력 단말기 선택이라는 고민도 필요하게 됩니다.

4. 마켓의 차이
안드로이드의 다양한 마켓이라는 건 개발자에게 있어서 득보다 실이 많은 것 같습니다.
또한 안드로이드는 블렉 마켓의 존재도 굉장히 크게 다가옵니다.
안드로이드와 아이폰 마켓의 차이에 대해 고민을 하다보면
대부분 아이폰은 유료로 올려도 되겠지만, 안드로이드는 광고 수익으로 돈을 벌어야 겠다는 생각을 하게 됩니다.

5. 메모리
안드로이드를 개발하다가 아이폰을 개발하면 가장 귀찮은 점이 메모리 관리 입니다.
GC가 없기 때문에 메모리 해제를 직접 해줘야 합니다.
하지만 개발하다 보면 힙 제한을 가진 안드로이드보다 훨씬 메모리를 많이 사용할 수 있으며,
더 효율적으로 메모리를 컨트롤 할 수 있습니다.

가끔 게시판에 아이폰과 안드로이드 개발을 동시에 할 수는 없는지 묻는 글들을 보게 됩니다.

자바 개발자로 7년 이상을 일 해 와서 자바에 가장 익숙한 저에게도
안드로이드보다 아이폰 개발이 훨씬 쉽게 다가옵니다.
마켓에 대한 고민도 적으며, 해상도가 하나라 디자인의 난이도도 상당히 낮고, 기본 API 도 더 충실하기 때문에
안드로이드 보다 아이폰 개발이 현재는 좀 더 아이디어에만 집중해서 코딩할 수 있는 환경에 있습니다.

너무 두려워 하지 마시고, 아이폰 개발도 한번 도전해 보세요.
안드로이드 개발하신 분들은 아이폰도 어렵지 않을 거라 확신합니다.

PS. 개발환경은 맥북프로로 충분합니다. 맥용 이클립스를 통해 안드로이드도 개발할 수 있어요. ^^