플러팅 말고 Flutter

Gardener·2024년 1월 9일

약 10시간에 걸친 기획의 단계가 마무리 되고, 컨설턴트님과의 면담이 있은 후에 우리의 주제가 이렇게 결정이 되었음을 직감할 수 있었다. 생각보다 길어졌지만, 장고 끝에 악수를 두지는 않았다. 하지만,,, 컨설턴트님께서 하이브리드 앱의 형태를 제안하셨고, 그에 알맞은 기술로 Flutter를 제안하셨다.

React도 이제 시작했는데 플,,뭐요? (사실 React도 시작한지 얼마 안됐으니 플,,뭐시기로 새롭게 해도 상관없겠지만,, 공부하다보니 이 자식 만만치 않다.)

일단 하이브리드 앱을 알아볼 필요가 있겠다.
모바일 서비스를 제작하는데 있어서 우리가 사용할 프론트엔드 채널은 크게
<- Web Service / PWA / Hybrid App / Native App -> 으로 구분된다.
웹 서비스는 웹에서 사용되는 Mobile Web 의 형태이고 Native App 은 핸드폰에서 사용되는 운영체제인 OS들에서 사용되는 형태이니 친숙할 것이다.

PWA (Progressive Web App)
: 웹이지만 모바일 기능을 일부 사용 가능함

웹이지만 앱에서 사용되는 많은 기능들이 사용될 수 있다. 다시 말해, 홈 화면에 저장되면 브라우저에서 실행되며, 네이티브 앱처럼 동작한다.
장점으로는

    앱스토어에 출시하기 위한 별도의 프로세스가 필요하지 않다.
    반응형이며, 다양한 화면 크기에서 작동
가 있다.

Hybrid App
: 네이티브 앱과 PWA의 특징을 결합, 웹뷰라는 네이티브 컨테이너 안에서 생성됨.

일부는 웹, 일부는 앱인건 pwa와 다를바 없다. Native App 영역이 적어, 유지보수가 용이하며, Web 영역의 변경에는 재배포가 필요없다.

이렇게 정리를 하고 보니 가장 큰 차이점은 앱스토어에 서비스를 올리느냐 올리지 않느냐의 차이점이라는 것을 알게 되었다........... 결국 실제로 사용되는 Service를 제작해보라는 것이 컨설턴트님의 의도라는 것을 알게 되었음.

하지만 우리가 지금까지 해왔던 것은 Web인데,,? App을 만드려면 사용해야 하는 대표적인, 기술은 바로 Flutter이다.. (React Native도 있지만, Flutter가 요즘 대세라고 추천하심..)

Flutter : Google에서 개발한 오픈 소스 UI 소프트웨어 개발 키트, 다양한 플랫폼에서의 고품질 네이티브 인터페이스를 개발하기 위해 사용.

주요 특징

    크로스 플랫폼 개발 가능
    Dart 프로그래밍 언어 사용
    풍부한 위젯과 고성능

이라고 하는데, 역시 새로운 언어인 Dart를 배워야하는 것이 매우 크나큰 부담이고, 지금까지 익히 알고 있었던 Html의 여러 요소들과도 큰 차이를 보이는 Flutter... 또한 Flutter를 사용하게 되면 아키텍쳐 디자인도 달라질 것이라는 친구의 조언이 있었다... 그러면 프론트와 백의 역할도 다시 정해야 할 것 같다는 사유에 도달하게 되었다.

Flutter에 대해 추가적으로 공부하면 좋겠지만, 이건 다른 게시물에서 다룰 문제다. 검색해보니 Flutter에 대해 아주 상세한 가이드를 제시하는 레포지토리가 있어서 첨부하며 마친다.

Flutter A to Z

profile
영혼의 정원수

0개의 댓글