ABC Studio에서 앱 개발을 하고 있습니다.
안녕하세요. LINE+ ABC Studio에서 앱을 개발하고 있는 윤기영입니다. 최근 Flutter로 진행하는 새로운 앱 개발 업무를 맡아서 어떤 아키텍처 라이브러리를 사용할지 선정하는 작업을 진행했습니다. 여러 라이브러리 중 현재 가장 인기 있는 라이브러리인 GetX와 Provider, BLoC를 후보로 정한 뒤 샘플 앱을 구현했는데요. 이번 글에서는 구현한 각 코드를 다양한 상황에서 살펴보며 각 라이브러리의 장단점을 비교해 보겠습니다. GetX Provider BLoC pub.dev 최초 등록일 2019년 11월 2018년 10월 2018년 10월 pub.dev 좋아요 수 11,792(https://pub.dev/packages/get) 8,241(https://pub.dev/packages/provider) 2,210(https://pub.dev/packages/bloc) GitHub 좋아요 수 8,265(https://github.com/jonataslaw/
서론 서버 데이터를 조회해 앱 화면에 보여주는 것은 앱 개발자라면 자주 하는 일입니다. 이때 앱 개발자들은 주요 작업 외에 아래와 같은 추가 작업들을 진행하기 위해 시간을 소비합니다. 한 번 로딩한 콘텐츠는 다음에 로딩 없이 바로 나타나게 하고, 네트워크에 연결되어 있지 않아도 표시되도록 합니다. 데이터가 변경되면 통지를 받아 화면이 업데이트되도록 합니다. 해당 기능을 모듈화해 간편하게 재사용합니다. 위와 같은 추가 작업 패턴을 모듈화해서 구현해 놓은 Google Android의 Fetcher를 소개하고, 적용기를 공유하려고 합니다. Fetcher에 대한 내용은 Google Android에서 작성한 앱 아키텍처 가이드에서 찾아보실 수 있습니다. 이 가이드에서는 개념 설명과 함께 Kotlin으로 구현한 간단한 샘플 코드 몇 줄을 소개하고 있습니다(이 코드를 따로 모듈화해서 배포하고 있지는 않습니다). 그런데 이 가이드의 설명이 조금 어렵고 내용이 방대해