brunch

You can make anything
by writing

C.S.Lewis

by Bobby Oct 02. 2022

Flutter Series 1: 좋은 벽돌 고르는 법

Flutter Package에 대하여

집을 짓는데 벽돌부터 굽는 것은 멍청한 짓이다.
좋은 벽돌을 사서 조립을 할 생각을 해야지

대학시절 전공 교수님이 해주신 말씀입니다.

어떤 개발을 하든 간에 최종 프로덕트에 필요한 모든 기능을 개발자가 한 땀 한 땀 개발하는 경우는 이제 없다는 의미로 하신 말씀이시죠. 실제 현업에서 개발을 할 때도 오픈소스, 라이브러리 등을 활용하여 제품을 만드는 일은 아주x3 흔한 일입니다.

그런 의미에서 좋은 벽돌, 좋은 부품들을 많이 알고 있는 것이 멋진 집을 빠르고 튼튼하게 짓는데 유리하다고 할 수 있습니다!


그럼 어떤 게 좋은 벽돌, 좋은 부품인지 어떻게 알 수 있을까요?

Flutter 패키지를 선정할 때 제가 적용하고 있는 판단 기준에 대해 소개해 보겠습니다.


우선 Flutter의 패키지는 Pub.dev 에서 찾아보실 수 있습니다.

좀 더 나은 패키지를 고르기 위해서 위 이미지에 표현된 정보들을 활용하시는 것이 좋습니다.


Pub.dev에서는 각 패키지 별 스코어(likes, pub points, popularity)를 제공하고 있고, 해당 스코어가 높을수록 더 안정적으로 서비스되는 패키지입니다. 즉 동일한 기능의 패키지라면 높은 스코어의 패키지를 사용해야합니다.

Flutter Favorite 배지가 붙어있다면 Flutter 측에서 ‘앱을 개발할 때 사용하기를 우선적으로 고려해 봐!’라고 권장하는 패키지로, 높은 우선순위에 두는 것이 좋습니다.

    참고 : https://docs.flutter.dev/development/packages-and-plugins/favorites

Flutter는 여러 플랫폼을 단일 언어로 개발할 수 있는 프레임워크이기 때문에 각 패키지가 ‘특정 플랫폼을 지원하는 패키지인가’를 꼭 확인하셔야 합니다!


추가적으로 어떤 오픈소스든 Git Issue에 등록된 내용들이 잘 핸들링되고 있는지, 커밋이 지속적으로 발생하고 있는지 또한 체크하는 것이 좋습니다.


좋은 패키지들을 골랐으니 이제 우리의 프로젝트가 순항할 수 있을까요?

그러면 좋겠지만 패키지들이 딱 우리의 니즈에 맞게 동작하지 않거나 버그를 가지고 있는 경우가 존재합니다.

이럴 때 제가 사용하는 방법은 3가지 정도가 있습니다.


해당 패키지 리포지토리를 fork 한 후, 버그가 있는 부분을 수정하여 사용

Git에 Issue를 등록하고 대기…

비교적 간단한 패키지라면 코드를 분석하여 핵심 기능만 떼어 프로젝트에서 직접 개발


어느 것 하나 쉽지 않죠...  그래도 문제가 해결될 수만 있다면 뭐든 시도해 봐야 합니다.


다음 글에선 좋은 벽돌을 고르는 방법으로 선정하여, 실제 프로젝트에서 유용하게 사용했던 몇몇 패키지들에 대해 소개하겠습니다.


작가의 이전글 지식의 저주에 걸린 개발자
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari