Unity로 일반 앱을 개발하는 건 정말 안좋은 선택지일까?
다음은 내가 검색하고 생각하면서 정리해본 내용들임.
게임이 아닌 일반 앱을 개발하는 데에 있어서,
유니티의 장점:
- 멀티플랫폼 출시
- 게임엔진이 할 수 있는 모든 것을 필요하다면 가져다 쓸 수 있음.
- 수많은 에셋 스토어 자산 이용 가능
유니티의 단점:
- 웹 언어나 플러터 다트에 비해 앱 UI를 만들기가 불편함.
- 게임엔진이라서 비 게임 앱에서는 사용하지 않는 많은 기능들로 인해 만든 앱 구동이 무거울 수 있음.
그렇다면, 일반앱을 만들기 위해서는 대세인 플러터로 가야하는가?
플러터의 장점
- 멀티플랫폼 빌드(안드로이드, ios, pc, 웹)
- 웹언어로 짜여진 앱에 비등하거나 능가하는 성능과 세련됨을 갖춘 앱 제작 가능
- 리액트에 비해 쉬운 난이도와 효율적인 개발 소요 시간
플러터의 단점
- 리액트에 비해 쉬울 뿐, 배우고 잘 사용하기 위해 많은 노력과 시간이 필요.
- 유니티의 화려한 3d, AR 등 기능을 흉내낼 수 없음. 게임엔진이 아니기 때문.
- 공식 pub.dev 나 오픈소스 위젯 커뮤니티에서 잘 짜여진 코드를 가져올 수 있지만 유니티의 에셋스토어와 같은 생태계는 없음.
만일, 유니티, 리액트, 플러터 중 아무것도 공부해본 적이 없는데 일반앱(비게임앱)을 만들고 싶다면 -> 플러터(단, 취업을 원하는 회사에서 리액트를 요구한다면 대신 리액트)
리액트를 이미 사용할 줄 안다면, -> 플러터를 튜토리얼만 해보고 스스로 판단.
유니티를 할 줄 안다면, -> 플러터. 왜냐하면 유니티는 게임앱에만 특화되어 있음. 그래서 리액트나 플러터 중 하나를 고른다면 플러터의 다트는 리액트 자바스크립트, css, html보다는 객체지향프로그래밍 에 더 밀접하게 만들어져서 자바나 유니티C# 과 유사하여 배우기 수월함.
참고) 유니티로 비 게임 일반앱을 개발하는 것의 의미. 다음은 긍정적 시선.
다음은 부정적 시선.
마찬가지로 부정적 시선이지만 대안 제시. 웹앱으로 빌드해서 안드로이드(ios) 전용앱에 웹뷰로 넣어서 출시하라고 함.
알아본 결론: 유니티로 일반 앱 만드는 것은 대부분 사람들이 매우 비추하는 것 같음. 근거는 다양했음.
내 생각: 그럼에도 정말 유니티로 일반 앱 만드는 것이 바보인가? (취업이나 고용 측면에서는 바보짓이 99.99퍼 맞음)
성능상 무겁다는 것의 기준이 불분명하고 확인해보지 않았는데, 정말인가? 웹언어나 플러터에 비해 UI 만드는 것이 불편하고 방식이 다르기 때문에 타 언어를 배워야 하는게 맞는가? 이미 유니티를 다룰 줄 아는데 그냥 유니티로 하면 안되나?
그래서 검색해봤는데, UI TOOLKIT이라는 2019년도부터 유니티에서 개발하고 있는 UI 개발도구가 있었음. 이제껏 내가 접했던 건 UGUI까지였던 것 같음. 일반앱도 만들고 싶다고 해서 굳이 유니티와 C#을 다룰 시간을 줄이고 대체 역할을 하는 플러터를 시간을 들여가며 배울 필요는 없지 않을까하는 희망회로를 돌려봄. (이미 플러터도 며칠 조금 구경해봤다는게 함정)
[영상]
[영상]
읽어주셔서 감사합니다.







