Flutter Web이 앱 개발 비용을 줄이는 방법
게시 됨: 2020-05-15당신은 제품 아이디어를 생각해냈지만 그것을 세상에 알리기 위한 계획이 필요합니다. 최대한 많은 사용자에게 서비스를 노출하려면 모바일 및 웹 앱이 필요합니다. 그러나 당신의 짧은 연구는 잔인합니다. 비록 당신이 하나의 좁은 아이디어 를 가지고 있지만 세 가지 다른 앱 (Android, iOS, 웹), 세 가지 유형의 전문가(Kotlin, Swift, JavaScript), 그리고 세 가지 개별 공급업체가 필요할 수도 있습니다.
그러나 당신은 이 위치에 있는 처음이 아닙니다. Airbnb, Uber Eats 및 Discord와 같은 응용 프로그램의 제작자도 현재의 위치에 있었습니다. 그들은 모두 플랫폼 간 솔루션을 사용하기로 결정했습니다. 그리고 2020년에는 이 분야에서 가장 중요한 플레이어가 Flutter인 것 같습니다.
플러터란?
Flutter는 하나의 코드베이스를 사용하여 iOS 및 Android용 모바일 애플리케이션을 제작할 수 있는 Google 프레임워크입니다. Flutter의 첫 번째 안정적인 버전은 2018년 말에 출시되었습니다. Google 은 모바일 애플리케이션의 융통성 없는 예산 과 React Native의 인기 증가에 대한 응답으로 Flutter를 만들어 주요 경쟁자가 되었습니다.
Flutter는 많은 도메인 전문가에 따르면 모든 모바일, 웹 및 데스크톱 개발의 미래인 Google의 객체 지향 언어인 Dart에 주목합니다. React Native가 사용하는 JavaScript와 비교할 때 Dart는 완전히 객체 지향적이고 강력한 유형입니다. 이것이 귀하의 비즈니스에 의미하는 바는 무엇입니까? Dart에서 제공되는 코드는 오류에 훨씬 더 강하고 팀이 변화하는 데 몇 년 동안 있어도 유지 관리가 훨씬 쉽습니다.
웹용 Flutter가 브라우저를 정복하다
이 모든 것이 어떻게 웹으로 번역됩니까? 2020년은 새로운 도전을 가져오기 때문에 Flutter에게 중요한 해입니다. 프레임워크는 이제 막 더 큰 화면과 웹 브라우저를 정복하려고 합니다. Flutter를 제외하고 지난 2년 동안 iOS 및 Android 앱에서 사용 하는 것과 동일한 Flutter 코드에서 웹 앱을 생성 하기로 되어 있는 Hummingbird 라는 연구 프로젝트가 있었습니다.
프로젝트가 완성되어 1년 전에 핵심 팀이 이를 프레임워크에 포함했으며 현재(2020년 5월 기준) 여전히 베타 분기에 있습니다. 이것은 무엇을 의미 하는가? 오늘날에도 Flutter를 사용하여 웹 애플리케이션을 구축하는 것이 가능하며 Google 팀은 언제든지 이를 안정적이라고 발표할 수 있습니다. 하나의 코드, 하나의 기술, 하나의 돌에 세 마리의 새 . 당신의 프로젝트가 딱 맞는 것 같습니다.
플랫폼 간 애플리케이션에 대한 시나리오는 매우 일반적입니다. 많은 유명하고 잘 알려진 솔루션이 이 모델을 사용하여 시간과 비용을 절약했습니다. Walmart, Soundcloud 및 Bloomberg는 플랫폼 간 모바일 애플리케이션을 결정했습니다. 나는 당신이 당신의 휴대 전화에 적어도 하나의 플랫폼 간 응용 프로그램을 가지고 있다고 확신합니다.
크로스 플랫폼 개발이 궁금하십니까?
더 알아보기 그러나 그 과정에서 웹 앱을 구축할 수 있다는 가능성은 불과 몇 달 전에 열렸습니다. 아직 큰 브랜드 중 어느 것도 이러한 움직임을 결정하지 않았지만 조만간 스타트업과 빠른 PoC를 위한 훌륭한 도구가 될 것이 분명합니다.
앱에 대한 Flutter 혜택
개발 비용 절감
웹용 Flutter를 사용하면 기술적으로 연결된 하나의 팀 내에서 하나의 코드베이스 를 사용하여 한 속도로 3개의 앱이 생성됩니다. 세 가지 다른 기술의 공급업체를 찾아 작업을 동기화할 필요가 없습니다. 동일한 결제 기능이나 소셜 미디어 인증을 세 번 복제할 필요가 없습니다.
그러나 이것이 지출 횟수를 3배로 제한할 수 있다는 것을 의미하지는 않습니다. 플랫폼 간 특정 기능을 제공하는 것은 종종 약간 더 복잡합니다. 내 경험에 따르면 1.2-1.5와 같은 플랫폼 간 승수 요소와 같은 것이 있습니다. 한 플랫폼에서 기능 개발에 X시간이 걸린다면 크로스 플랫폼에서는 (1.2-1.5) * X가 걸립니다. 그래도 x3과 비교하여 x1.5가 귀하의 예산에서 유리한 사례가 될 수 있습니다.
더 빠른 앱 개발
위의 모든 사항이 Flutter를 PoC 및 제품 아이디어 검증에 탁월한 선택으로 만듭니다. 단 몇 주 만에 앱 스토어에 쉽게 출시할 수 있는 작동하는 애플리케이션을 얻을 수 있습니다. 잠재적인 성공 후에는 앱을 기본 기술로 다시 빌드하는 것을 고려할 수 있습니다. 에어비앤비가 이 길을 따랐다. 크로스 플랫폼 모바일 앱의 성공 이후, 그들은 2018년에 네이티브 애플리케이션으로 전환하기로 결정했습니다.
더 간단한 유지 관리 프로세스
또한 응용 프로그램이 최종적으로 성공하면 어떤 일이 벌어질지 염두에 두십시오. 유지 관리에 들어갈 때 한 명의 Dart/Flutter 전문가 와 함께 앱을 유지 관리하는 것이 훨씬 쉽습니다. 귀하의 비즈니스는 코드를 유지 관리하는 것만으로는 세 명의 다른 개발자를 위한 풀타임 작업을 찾지 못할 수도 있습니다. 마찬가지로, 기술의 불균형은 작업 속도의 변화를 생성합니다.
다양한 플랫폼에서 공유되는 모양과 느낌을 고려하면 개발 팀의 기술도 중요합니다. 세 가지 프로젝트를 진행하면서 최종 형태는 개발자의 기술과 UI 태도에 크게 좌우됩니다. iOS 사용자는 둥근 모서리를 선호하고 Android 사용자는 그다지 좋아하지 않는 경우 이 두 응용 프로그램이 제품 브랜드에 미치는 영향이 다를 수 있습니다.
웹 위험에 대한 Flutter
기술 문제 개발
좋습니다. 하지만 웹용 Flutter를 선택하는 것과 관련된 위험이나 단점이 있습니까? 언제나 그렇듯이 이야기에는 양면이 있습니다. 기술적인 관점에서 우리는 그것이 아직 베타 기술이라는 것을 기억해야 합니다. 따라서 완전히 안정적이지 않고 해결할 수 없는 문제가 발생할 수도 있습니다 . 공존하는 Flutter 라이브러리의 지원도 때때로 불완전합니다. 라이브러리가 모바일에서는 매력처럼 작동하지만 최적화되지 않았기 때문에 넷 애플리케이션에서는 충돌하는 것이 일반적입니다. 이는 UI에 국한된 경우 사소한 문제이지만 주요 결제 서비스 통합인 경우 번거로울 수 있습니다.

웹 애플리케이션 예외
또 다른 문제는 Android와 iOS 애플리케이션의 세계가 매우 유사하고 대부분의 경우 코드베이스가 95-100% 동일하더라도 브라우저 버전에는 적용되지 않을 수 있다는 것입니다. 하단 시트 서랍, 하단 탭 메뉴 또는 수평 캐러셀은 웹에 잘 적용되지 않는 훌륭한 모바일 UX 패턴입니다. 종종 웹 앱에 대해서만 예외 를 생성해야 합니다. 건축 디자인은 종종 모바일과 웹에서 완전히 달라야 합니다. 작업 초기에 디자이너와 개발자 간의 원탁 토론 을 설정하는 것이 좋습니다. 특히 예산과 날짜에 관심이 있는 경우 그들의 관점을 공유하고 합의에 도달하도록 하십시오.
Flutter 대 React Native
그러나 웹용 Flutter가 유일한 선택입니까? 당연히 아니지. 가장 중요한 대안은 React Native입니다. React Native는 Facebook이 Flutter보다 몇 년 전에 개발하고 지원한 경쟁력 있는 프레임워크입니다. 모든 iOS, Android 및 웹 애플리케이션을 빌드할 수 있습니다.

모바일 앱의 미래에 대해 알아보십시오.
보고서를 무료로 받으세요!저는 지난 2년 동안 React Native와 함께 일하면서 최근 Flutter 세계에 뛰어들었습니다. 이 둘 사이에서 결정을 내려야 할 경우 몇 가지 조언을 드리고자 합니다. 우선, 이 결투의 승자는 없으며 두 기술 모두 성숙하고 크로스 플랫폼으로 우수합니다. 그러나 특정 프로젝트를 구현할 때 이점을 가져올 수 있는 몇 가지 뉘앙스가 있습니다.
- 제스처 관련 UI (스와이프, 드래그, 서랍 꺼내기 등)에 특히 관심이 있다면 기본 측의 아키텍처 및 제스처 지원으로 인해 Flutter가 더 나은 선택이 될 것입니다. RN은 때때로 좋은 제스처 + 애니메이션 콤보 성능을 제공하기 위해 고군분투합니다.
- 웹이 비즈니스의 핵심 터치포인트 라면 React Native를 선택하세요. RN은 네이티브 개발 제품에 훨씬 더 가까운 브라우저 애플리케이션을 생성하며 네이티브 도구로 디버깅할 수 있습니다. 반면 웹 프로젝트용 Flutter는 일반적인 DOM으로 변환되지 않으며 어댑터가 필요합니다.
- 애플리케이션이 수년에 걸쳐 유지 및 개발 되어야 하는 경우(또는 시간이 지남에 따라 작업하는 팀이 변경될 수 있음) Flutter와 Dart가 더 나은 솔루션이 될 수 있습니다.
- 애플리케이션이 약간 더 복잡한 메커니즘 (블루투스, 생체 인식, 위치 정보) 또는 외부 통합 (결제, 소셜 미디어)을 사용한다고 가정하는 경우 React Native는 더 오래 사용되었으며 훨씬 더 넓은 범위의 라이브러리를 보유하고 있습니다. 웹 생태계를 위한 Flutter는 매달 성장하고 있지만 여전히 사용 가능한 라이브러리에 대한 연구가 모든 프로젝트보다 선행되어야 합니다.
널리 사용되는 이 두 가지 프레임워크에 대해 더 많은 통찰력을 얻고 싶으십니까? React Native와 Flutter의 비교를 확인하세요!
합산
이전에는 사용자가 플랫폼 간에 분산되어 있었던 적이 없습니다. 모바일 장치와 웹 브라우저는 빙산의 일각에 불과합니다. 사용자는 자동차, 시계 및 TV에서 애플리케이션을 점점 더 많이 사용하고 있으며 음성 비서도 인기를 얻고 있습니다. 따라서 프로세스를 단순화하고 소프트웨어 생산 비용을 절감할 필요가 있습니다. 웹 및 모바일 개발을 위한 하나의 코드베이스는 이미 일반적인 패턴이며 웹용 Flutter는 훌륭한 예입니다.
Flutter로 다음 앱 빌드
같이 일하자오랫동안 저는 웹용 Flutter를 신생 기술로 생각했습니다. 최근 작업으로 인해 마음이 바뀌었고 지금은 정정되었습니다. Flutter는 밝은 미래 앞에 서있는 성인 청년이며 확실히 고려할 가치가 있습니다. 적은 예산과 짧은 기한을 가진 아이디어를 위한 매력적인 선택인 것 같습니다. 적은 비용으로 빠르게 자신의 아이디어를 검증하고 싶은 사람들, 아이디어가 있고 시장의 요구에 부응하는 사람들을 위한 것입니다. 이것은 Flutter가 소프트웨어 개발에서 했던 것과 정확히 동일합니다.
유망한 소리?
크로스 플랫폼 개발이 귀하의 비즈니스에 좋은 솔루션인지 궁금하십니까? 우리 팀에 연락하여 프로젝트에 대한 견적을 받으십시오.