관리 메뉴

Hey Tech

λ„€μ΄ν‹°λΈŒ μ•± vs 크둜슀 ν”Œλž«νΌ μ•±: κ°œλ… 및 μž₯단점 비ꡐ λ³Έλ¬Έ

SW 개발/React Native

λ„€μ΄ν‹°λΈŒ μ•± vs 크둜슀 ν”Œλž«νΌ μ•±: κ°œλ… 및 μž₯단점 비ꡐ

Tony Park (ν† λ‹ˆ) 2022. 9. 22. 00:27
728x90
λ°˜μ‘ν˜•

πŸ“Œ λ“€μ–΄κ°€λ©°

λ³Έ ν¬μŠ€νŒ…μ—μ„œλŠ” λ„€μ΄ν‹°λΈŒ μ•±κ³Ό 크둜슀 ν”Œλž«νΌ μ•±μ˜ κ°œλ…κ³Ό 각각의 μž₯단점을 λΉ„κ΅ν•˜κ³ , 각 ν”„λ ˆμž„μ›Œν¬λ§ˆλ‹€ μ‚¬μš©ν•˜κΈ° μ μ ˆν•œ 상황에 λŒ€ν•΄ μ†Œκ°œν•©λ‹ˆλ‹€.

λ„€μ΄ν‹°λΈŒ μ•± vs 크둜슀 ν”Œλž«νΌ μ•±

πŸ“š λͺ©μ°¨

1. λ„€μ΄ν‹°λΈŒ μ•±
     1.1. κ°œλ…
     1.2. μž₯점
     1.3. μž₯점
2. 크둜슀 ν”Œλž«νΌ μ•±
     2.1. κ°œλ…
     2.2. μž₯점
     2.3. μž₯점
3. ν”„λ ˆμž„μ›Œν¬ 선택기쀀

1. λ„€μ΄ν‹°λΈŒ μ•±(Native App)

1.1. κ°œλ…

λ„€μ΄ν‹°λΈŒ μ•±μ΄λž€ μ•ˆλ“œλ‘œμ΄λ“œ(Android)와 iOS, μ‰½κ²Œ 말해, μ‚Όμ„± κ°€λŸ­μ‹œμ™€ μ• ν”Œ 아이폰과 같이 슀마트폰 운영체제(OS)에 λ§žλŠ” ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ κ°œλ°œν•˜λŠ” μ•±μž…λ‹ˆλ‹€. μ•ˆλ“œλ‘œμ΄λ“œμ™€ iOS에 λ”°λ₯Έ 차이점은 μ•„λž˜ ν‘œμ™€ κ°™μŠ΅λ‹ˆλ‹€.

  μ•ˆλ“œλ‘œμ΄λ“œ iOS
κ°œλ°œν™˜κ²½ μ•ˆλ“œλ‘œμ΄λ“œ μŠ€νŠœλ””μ˜€ XCode
(ν˜„μž¬) ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ μ½”ν‹€λ¦°(Kotlin) μŠ€μœ„ν”„νŠΈ(Swift)
(κ³Όκ±°) ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ μžλ°”(Java) 였브젝트-C(Object-C)

즉, λ„€μ΄ν‹°λΈŒ 앱은 OS에 따라 각기 λ‹€λ₯Έ κ°œλ°œν™˜κ²½κ³Ό ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ‘œ κ°œλ°œν•˜κ²Œ λ©λ‹ˆλ‹€.

1.2. μž₯점

λ„€μ΄ν‹°λΈŒ μ•±μ˜ μž₯점은 OSμ—μ„œ μ œκ³΅ν•˜λŠ” λ‹€μ–‘ν•œ APIλ₯Ό 효과적으둜 ν™œμš©ν•  수 μžˆλ‹€λŠ” μ μž…λ‹ˆλ‹€. 즉, μ‚¬μš©μž μœ„μΉ˜/μŒμ„±/지문 인식, AR/VR λ“±κ³Ό 같이 OSμ—μ„œ μ œκ³΅ν•˜λŠ” λ‹€μ–‘ν•œ APIλ₯Ό μ—…λ°μ΄νŠΈλ  λ•Œλ§ˆλ‹€ λΉ λ₯΄κ²Œ λ°˜μ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, 고사양 κ·Έλž˜ν”½ κ΅¬ν˜„μ΄ κ°€λŠ₯ν•˜κΈ° λ•Œλ¬Έμ— λͺ¨λ°”일 κ²Œμž„κ³Ό 같은 κ³ μ„±λŠ₯ μ•± κ°œλ°œμ— μœ μš©ν•©λ‹ˆλ‹€.

1.3. 단점

λ„€μ΄ν‹°λΈŒ μ•±μ˜ 단점은 μ•ˆλ“œλ‘œμ΄λ“œμ™€ iOS κ°„ ν˜Έν™˜μ΄ λΆˆκ°€λŠ₯ν•˜λ‹€λŠ” μ μž…λ‹ˆλ‹€. 즉, 같은 κΈ°λŠ₯을 κ°œλ°œν•˜λ”λΌλ„ μ•ˆλ“œλ‘œμ΄λ“œμ™€ iOS 각각에 맞좰 κ°œλ°œν•΄μ•Ό ν•˜λ―€λ‘œ 개발/운영의 μ‹œκ°„κ³Ό λΉ„μš©μ΄ 2λ°° 이상 ν•„μš”ν•©λ‹ˆλ‹€. λ”λΆˆμ–΄, μ•± μ—…λ°μ΄νŠΈ μ‹œ 각 μ•± λ§ˆμΌ“(ꡬ글 ν”Œλ ˆμ΄ μŠ€ν† μ–΄/μ•± μŠ€ν† μ–΄)의 심사λ₯Ό ν†΅κ³Όν•˜λŠ” μ‹œμ μ΄ λ‹€λ₯Ό 수 있기 λ•Œλ¬Έμ—, OS κ°„ 배포 μ‹œκΈ°κ°€ 상이할 수 μžˆμŠ΅λ‹ˆλ‹€.

2. 크둜슀 ν”Œλž«νΌ μ•±(Cross-Platform App)

2.1. κ°œλ…

크둜슀 ν”Œλž«νΌ 앱은 λ„€μ΄ν‹°λΈŒ 앱이 OS κ°„ ν˜Έν™˜μ΄ λΆˆκ°€λŠ₯ν•˜λ‹€λŠ” ν•œκ³„μ μ„ κ°œμ„ ν•˜κ³ μž λ“±μž₯ν•˜μ˜€μŠ΅λ‹ˆλ‹€. μ΄λ¦„μ—μ„œ μœ μΆ”ν•  수 μžˆλ“―μ΄, 크둜슀 ν”Œλž«νΌ 앱은 ν•˜λ‚˜μ˜ 개발 μ–Έμ–΄λ‘œ μ•ˆλ“œλ‘œμ΄λ“œμ™€ iOSμ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” 앱을 λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. λŒ€ν‘œμ μΈ 개발 λ„κ΅¬λŠ” 크게 3κ°€μ§€μž…λ‹ˆλ‹€: 1) κ΅¬κΈ€μ—μ„œ κ°œλ°œν•œ ν”ŒλŸ¬ν„°(Flutter), 2) 페이슀뢁이 κ°œλ°œν•œ λ¦¬μ•‘νŠΈ λ„€μ΄ν‹°λΈŒ(React Native), 3) λ§ˆμ΄ν¬λ‘œμ†Œν”„νŠΈμ—μ„œ κ°œλ°œν•œ 자마린(Xamarin). 크둜슀 ν”Œλž«νΌ 앱은 μ΄λŸ¬ν•œ κ°œλ°œλ„κ΅¬ 쀑 ν•˜λ‚˜λ₯Ό ν™œμš©ν•˜μ—¬ μ½”λ“œλ₯Ό μž‘μ„±ν•˜λ©΄ 각 OS에 맞좰 μ½”λ“œλ₯Ό μ»΄νŒŒμΌν•˜κ³  μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

2.2. μž₯점

크둜슀 ν”Œλž«νΌμ˜ μž₯점은 ν•˜λ‚˜μ˜ 개발 언어와 λ„κ΅¬λ‘œ μ•ˆλ“œλ‘œμ΄λ“œμ™€ iOS λͺ¨λ‘μ—μ„œ λ™μž‘ν•  수 μžˆλŠ” 앱을 λ§Œλ“€ 수 μžˆλ‹€λŠ” μž₯점이 μžˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ, λ„€μ΄ν‹°λΈŒ μ•±κ³Ό λΉ„κ΅ν–ˆμ„ λ•Œ 개발과 μš΄μ˜μ— ν•„μš”ν•œ λΉ„μš©κ³Ό μ‹œκ°„μ„ μ ˆμ•½ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 특히, ν”ŒλŸ¬ν„°λŠ” μ•ˆλ“œλ‘œμ΄λ“œ, iOS뿐만 μ•„λ‹ˆλΌ, μ›Ή, λ¦¬λˆ…μŠ€, μœˆλ„μš° λ“±μ—μ„œ λ™μž‘ν•˜λŠ” λ°μŠ€ν¬νƒ‘ μ•± κ°œλ°œκΉŒμ§€ μ§€μ›ν•˜λŠ” νˆ΄μž…λ‹ˆλ‹€.

2.3. 단점

μ•ˆλ“œλ‘œμ΄λ“œμ™€ iOS 각각 λ”°λ‘œ κ°œλ°œν•˜κ³  μš΄μ˜ν•΄μ•Ό ν•˜λŠ” 치λͺ…적인 λ²ˆκ±°λ‘œμ›€μ„ κ°œμ„ ν•˜κΈ° μœ„ν•΄ 크둜슀 ν”Œλž«νΌ 앱이 λ“±μž₯ν–ˆμ§€λ§Œ, μ—¬μ „νžˆ μ•ˆλ“œλ‘œμ΄λ“œ 개발자, iOS κ°œλ°œμžμ— λŒ€ν•œ μˆ˜μš”λŠ” ꡉμž₯히 λ†’μŠ΅λ‹ˆλ‹€. μ™œ κ·ΈλŸ΄κΉŒμš”? 크둜슀 ν”Œλž«νΌμ˜ 단점에 λŒ€ν•΄ μ•Œμ•„λ΄…λ‹ˆλ‹€. 첫째, 크둜슀 ν”Œλž«νΌ 앱은 λ„€μ΄ν‹°λΈŒ μ•±λ§ŒνΌ 높은 μ„±λŠ₯κ³Ό OSμ—μ„œ μ œκ³΅ν•˜λŠ” APIλ₯Ό ν™œμš©ν•˜κΈ° μ–΄λ ΅μŠ΅λ‹ˆλ‹€. λ‘˜μ§Έ, 크둜슀 ν”Œλž«νΌμ— μ§€λ‚˜μΉ˜κ²Œ μ˜μ‘΄ν•˜κ²Œ λœλ‹€λŠ” μ μž…λ‹ˆλ‹€. OSμ—μ„œ μƒˆλ‘­κ²Œ APIλ₯Ό μ—…λ°μ΄νŠΈν•˜μ˜€λ‹€λ©΄, 크둜슀 ν”Œλž«νΌμ—μ„œ 지원해 쀄 λ•ŒκΉŒμ§€ μ¦‰μ‹œ μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€. λ˜ν•œ, 디버깅이 κΉŒλ‹€λ‘­λ‹€λŠ” 단점이 μžˆμŠ΅λ‹ˆλ‹€. 즉, 크둜슀 ν”Œλž«νΌ μΈ‘ 버그가 λ°œμƒν–ˆλ‹€λ©΄ ν•΄λ‹Ή ν”Œλž«νΌ κ°œλ°œμžκ°€ 버그λ₯Ό ν•΄κ²°ν•  λ•ŒκΉŒμ§€ 기닀릴 μˆ˜λ°–μ— μ—†μŠ΅λ‹ˆλ‹€. μ‹€μ œλ‘œ, 에어비앀비(Airbnb) νšŒμ‚¬λŠ” μ΄ˆκΈ°μ— λ¦¬μ•‘νŠΈ λ„€μ΄ν‹°λΈŒλ‘œ μ„œλΉ„μŠ€λ₯Ό 개발/μš΄μ˜ν•΄ μ™”μœΌλ‚˜ μœ„μ™€ 같은 이슈둜 2018년도뢀터 λ„€μ΄ν‹°λΈŒ 앱을 ν™œμš©ν•˜κ²Œ λ˜μ—ˆλ‹€κ³  ν•©λ‹ˆλ‹€.

3. ν”„λ ˆμž„μ›Œν¬ 선택 κΈ°μ€€

μ•žμ„œ 각 ν”„λ ˆμž„μ›Œν¬μ˜ μž₯단점을 λ³΄μ‹œλ©΄ μ•„μ‹€ 수 μžˆλ“―μ΄, 개발 λͺ©μ κ³Ό 개발/인적 λ¦¬μ†ŒμŠ€ 등에 따라 μ ν•©ν•œ ν”„λ ˆμž„μ›Œν¬ μ’…λ₯˜κ°€ λ‹€λ¦…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 고사양 μ„±λŠ₯이 ν•„μš” μ—†λŠ” 앱을 κ°œλ°œν•˜κ±°λ‚˜ μ·¨λ―Έλ‚˜ 창업을 μœ„ν•œ ν”„λ‘œν† νƒ€μž… μˆ˜μ€€μ˜ μ•± 개발이 λͺ©μ μ΄λΌλ©΄, OS κ°„ ν˜Έν™˜μ΄ κ°€λŠ₯ν•œ 크둜슀 ν”Œλž«νΌμ„ μ‚¬μš©ν•˜μ—¬ ν•„μš”ν•œ μˆ˜μ€€λ§ŒνΌ λΉ λ₯΄κ²Œ κ°œλ°œν•  수 μžˆμŠ΅λ‹ˆλ‹€. 반면, 포켓λͺ¬ 고와 같은 μ„œλΉ„μŠ€μ˜ 경우, μœ„μΉ˜μ •λ³΄ νŠΈλž˜ν‚Ή μ„±λŠ₯이 λ›°μ–΄λ‚˜μ•Ό ν•˜λ©°, 고사양 AR을 λ§€λ„λŸ½κ²Œ κ΅¬λ™μ‹œμΌœμ•Ό ν•˜κ³ , νŠΈλž˜ν”½μ΄ λ§Žμ•„λ„ λΉ λ₯΄κ²Œ λ™μž‘ν•΄μ•Ό ν•˜λŠ” μ„œλΉ„μŠ€μ˜ 경우, μ„±λŠ₯에 μ§‘μ€‘ν•œ λ„€μ΄ν‹°λΈŒ 앱을 ν™œμš©ν•˜λŠ” 게 적합할 κ²ƒμž…λ‹ˆλ‹€.


μ˜€λŠ˜μ€ λ„€μ΄ν‹°λΈŒ μ•±, 크둜슀 ν”Œλž«νΌ 각각의 κ°œλ…κ³Ό μž₯단점, 그리고 ν”„λ ˆμž„μ›Œν¬ μ„ νƒμ˜ 기쀀에 λŒ€ν•΄ μ•Œμ•„λ΄€μŠ΅λ‹ˆλ‹€.
ν¬μŠ€νŒ… λ‚΄μš©μ— 였λ₯˜κ°€ μžˆκ±°λ‚˜ 보완할 점이 μžˆλ‹€λ©΄ μ•„λž˜μ— λŒ“κΈ€ λ‚¨κ²¨μ£Όμ‹œκΈΈ λ°”λžλ‹ˆλ‹€.
그럼 μ˜€λŠ˜λ„ 즐겁고 κ±΄κ°•ν•œ ν•˜λ£¨ λ³΄λ‚΄μ‹œκΈΈ λ°”λžλ‹ˆλ‹€ :)
κ³ λ§™μŠ΅λ‹ˆλ‹€πŸ˜Š

728x90
λ°˜μ‘ν˜•