앱 개발 확정과 새로운 팀원
카메라로 전송하는 영상을 앱으로 확인할 수 있는 것이 역시 편할 것이라고 생각하여 앱 개발이 확정되었다.
이러한 결정에 따라 같은 전공을 공부중인, Frank님이 앱 개발을 맡으며 함께 프로젝트를 진행하게 되었다.
어떻게 개발할 것인가
이 부분에 대해선 아직 논의 중이다.
우선 앱 개발에 있어 고를 수 있는 선택지를 간단히 정리해봤다.
각각의 플랫폼에서 요구하는 언어로 앱을 제작한다. Andriod의 경우 Java나 Kotlin, iOS의 경우 Swift와 Objective-C이다.
장점:
단점:
native app처럼 설치하지만 내부는 web app이다. 기기 내부의 브라우저에서 웹뷰에서 HTML, CSS, JavaScript 등으로 만들어져 작동된다.
장점:
단점:
native가 아닌 언어로 작성하면 컴파일 후에 iOS와 Andriod가 이해할 수 있는 코드로 변환된다.
장점:
단점:
최종 선택과 남은 논의 사항
Cross Platform, 그들 중 어떤 것을 고를 지
우리의 상황과 위 세 가지 선택지의 장단점을 고려했을 때 Cross Platform이 가장 부합해 보인다.
그 이유는 아래와 같다.
사용할 사람들(아마 주로 우리 가족..?)을 고려해 봤을 때 Android와 iOS 두 플랫폼에서 동작해야 한다.
개발 기간을 고려했을 때 Native의 경우엔 시간이 많이 소모될 것을 고려하면 아마 힘들 것 같다.
Hybird 역시 다양한 플랫폼(Android, iOS, Web 등)에서 사용할 수 있는 장점이 있지만, 퍼포먼스에 제약이 있다는 점과 UI를 구현하는데 걸리는 시간을 고려하면 어려울 것 같다.
이제 남은 논의 사항은 Cross Platform에서 어떤 tool을 사용할지에 대한 문제이다.
사용할 수 있는 대표적인 tool들로 React Native, Xamarin, Flutter 등이 있다.
시간이 늦어서 이에 대한 정보는 내일 더 알아봐야겠다.
Native Apps, Web Apps or Hybrid Apps? What’s the Difference?
Native vs Hybrid vs Cross-Platform – What To Choose and when?
1인개발, 크로스플랫폼과 네이티브앱의 갈등이 되는 상황입니다
[Youtube] 네이티브 앱 vs 크로스 플랫폼 앱 vs 하이브리드 앱 | 5분 장단점 분석!
[Velog] App: native vs. cross platform vs. hybrid
RN이 한창 많이 쓰이다가 요즘 Flutter가 구글신에 기대어 굉장히 핫해졌다고 하더라고요?!!