5.mobile

4부: 모바일 무림

iOS vs Android, 그리고 통일을 꿈꾸는 크로스플랫폼


모바일 무림은 결이 좀 달라. 백엔드/프론트랑 다른 점이 무림이 둘로 완전히 갈라져 있다는 거야. iOS 무림이랑 Android 무림이 원래 별개 세계였는데, 크로스플랫폼 문파들이 통일을 시도하고 있는 구도야.


iOS 무림

모바일

🏺 원로 고수

Objective-C

내공★★★☆☆
수련접근성★★★★
실전력☆☆☆☆
인지도☆☆☆☆

문법이 너무 독특해서 타 문파 출신이 보면 경기를 일으킨다.

Apple이 만든 첫 무공인데 문법이 너무 독특해서 타 문파 출신이 보면 경기를 일으켜. 지금은 거의 안 쓰는데 레거시 코드베이스엔 아직 살아있는 좀비 무공이야.


모바일

🍎 Apple 직속 차세대 무인

Swift

내공★★★★
수련접근성★★★☆☆
실전력★★★★★
인지도★★★★

우리 문파 무공은 우리가 만든다. — Apple 특유의 폐쇄적 자존심

Objective-C 욕 먹으니까 Apple이 직접 갈아엎었어. 현대적이고 안전하고 빠르거든. Kotlin이랑 묘하게 닮았는데 사실 서로 영향을 받은 게 맞아.


모바일

🎨 Swift의 선언형 혁명

SwiftUI

내공★★★★
수련접근성★★★☆☆
실전력★★★★
인지도★★★☆☆

UIKit을 갈아치우려 했는데 아직 버그가... Next.js의 App Router 전환이랑 똑같은 상황 ㅋㅋ

UIKit을 갈아치우려고 만든 선언형 UI 무공인데 React랑 철학이 비슷해. 근데 버전마다 버그가 있어서 아직 UIKit을 완전히 못 밀어냈어.


Android 무림

모바일

📜 구파 원로

Java (Android)

내공★★★☆☆
수련접근성★★★☆☆
실전력★★☆☆☆
인지도★★☆☆☆

지금 신규 프로젝트에 Java 쓰면 팀원들이 조용히 이력서를 쓴다.

한때 Android 무림의 전부였는데, 지금 신규 프로젝트에 Java 쓰면 팀원들이 조용히 이력서를 써.


모바일

🤖 현 Android 무림 표준

Kotlin (Android)

내공★★★★
수련접근성★★★☆☆
실전력★★★★★
인지도★★★★★

Google이 공식 채택한 순간, 승부는 끝났다.

Google이 공식 언어로 채택했고, Java보다 간결하고 안전하고 코루틴으로 비동기도 우아하게 처리해. Android 신규 프로젝트는 사실상 Kotlin이 디폴트야.


모바일

🎭 Android의 선언형 혁명

Jetpack Compose

내공★★★★
수련접근성★★★☆☆
실전력★★★★
인지도★★★★

우리 동시에 깨달음을 얻었다. — iOS와 Android가 처음으로 의기투합한 순간 ㅋㅋ

SwiftUI랑 거의 동시에 나온 Android 선언형 UI인데, XML 레이아웃을 갈아치우는 중이야. SwiftUI랑 철학이 쌍둥이처럼 같아.


크로스플랫폼 무림 — 통일을 꿈꾸는 야심가들

모바일

🦋 Google의 크로스플랫폼

Flutter

내공★★★★
수련접근성★★★☆☆
실전력★★★★
인지도★★★★

내 무공을 배우면 두 세계를 동시에 정복할 수 있다. — 근데 Dart를 새로 배워야 한다. — ...

Google이 만든 크로스플랫폼이야. Dart라는 독자 언어를 쓰거든. JS도 아니고 Swift도 아니고 Kotlin도 아닌 완전 독자 노선인데, 성능이 진짜 좋아. UI도 자체 렌더링이라 iOS/Android 둘 다 똑같이 보여.


모바일

⚛️ 웹에서 모바일로

React Native

내공★★★☆☆
수련접근성★★★☆☆
실전력★★★★
인지도★★★★

웹 무공으로 모바일을 정복하겠다는 야망은 좋은데 현지 적응이 완벽하진 않아.

Meta가 "React로 앱도 만들면 안 되냐" 해서 만든 거야. JS 개발자들이 모바일로 넘어오는 관문 역할을 해. 근데 JS 브릿지를 통해서 네이티브랑 통신하는 구조라 성능이 Flutter한테 밀려. New Architecture로 개선 중인데 아직 진행형이야.


모바일

🌐 신흥 정복자 후보

Kotlin Multiplatform (KMP)

내공★★★★
수련접근성★★★☆☆
실전력★★★☆☆
인지도★★★☆☆

UI는 각자 잘 하는 걸로, 겹치는 건 공유하자. — 실용주의 노선

Kotlin으로 비즈니스 로직을 공유하고 UI는 각 플랫폼 네이티브로 가는 방식이야. Flutter처럼 UI까지 통일하는 게 아니라 로직만 공유하는 현실적인 접근이거든. JetBrains + Google이 밀고 있어서 성장세가 심상치 않아.


모바일 무림만의 특징

백엔드/프론트랑 결정적으로 다른 게 있어.

Apple이랑 Google이 무림의 하늘이야

웹은 브라우저 표준이 느리게 바뀌고 커뮤니티가 방향을 정하는데, 모바일은 앱스토어 심사를 통과 못하면 그냥 끝이야.

"아무리 강한 무공이어도 황제 허락 없이는 강호에 나올 수 없다."

크로스플랫폼 문파들이 통일을 시도하다가 Apple한테 제재 맞는 역사가 반복돼. Flutter, React Native 둘 다 Apple 정책 바뀔 때마다 긴장하는 게 현실이야 ㅋㅋ


모바일 무림 요약

모바일 무림은 분단과 통일의 역사야. iOS와 Android라는 두 세계가 존재하고, 크로스플랫폼이 통일을 시도하지만 완벽한 통일은 아직 없어.

네이티브 무공이 가장 강하지만 인력이 두 배 들고, 크로스플랫폼은 효율적이지만 타협이 필요해. 결국 프로젝트 규모와 팀 구성에 따라 선택이 달라지는 거야.


3부: SSR/풀스택 무림 | 5부: DB 무림