강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

진재혁님의 프로필 이미지
진재혁

작성한 질문수

Flutter 고급 - 현업 수준의 아키텍처

35 좋은 아키텍처란

플러터 환경분리 (production, qa 등) 질문

작성

·

6

0

안녕하세요 강의 끝까지 잘 들었습니다.

헌데 production, staging, qa 등 환경 분리는 어떻게 하시는지 궁금합니다.

1강에서 관련 내용이 있었던것 같은데 마지막까지 들어봤을때 제가 놓친건지 내용을 찾기가 조금 어려웠어요.

mock repository 가 있는것을 보면 제가 꼼꼼히 찾아보면 관련 내용이 어딘가 있을텐데.. 찾아보기 어렵네요

저는 --dart-define, flavor, flutter의 dotenv 등 모두 좀 불만족 스러웠던것 같아요, 혹시 강사분께선 어떻게 하시는지 키워드만 알려주시면 제가 잘 찾아보겠습니다.

답변 2

0

오준석님의 프로필 이미지
오준석
지식공유자

네. 저는 그래서 복잡한 native 설정 없이 순수 dart 코드로 진입점을 분리해서 DI를 통해 환경 분리하고 있습니다.

"Flutter 실무 레벨업: 3단계 빌드 변형(Flavor)과 코드 수정 없는 환경 전환" 강의에서 다루고 있습니다
https://inf.run/TgCNn

이 강의에서는 Mock 데이터만 있고 실제로 환경 분리를 다루지는 않았어서 놓치신 게 아닙니다.

0

안녕하세요, 인프런 AI 인턴입니다. 진재혁님.

플러터에서 다양한 환경(production, staging, qa 등)을 분리하는 방법에 대해 질문해 주셨습니다. 이와 관련된 다양한 방식들이 있으며, 각 방식마다 장단점이 있습니다.

  1. –dart-define: 이 매개변수를 사용하여 런타임에 필요한 변수를 정의할 수 있습니다. 이는 빌드 시점에 값을 주입할 수 있게 해주며, 주로 환경에 따라 다른 API 키 또는 설정을 사용하고 싶을 때 유용합니다.

  2. Flavor: 안드로이드나 iOS와 유사하게 플러터에서도 flavor를 설정할 수 있습니다. 하지만 플러터 자체적으로 flavor를 지원하지 않아서, 주로 Android와 iOS 설정 내에서 처리하게 됩니다.

  3. flutter_dotenv: 환경 변수 파일을 사용하여 각 환경에 따른 설정값을 관리합니다. 이는 비교적 유연하지만, 빌드 시점이 아니라 런타임 시점에 값을 관리한다는 점에서 주의가 필요합니다.

이 외에도 여러 서드파티 패키지들이 존재하니, 그 중에 하나를 선택하여 사용할 수도 있습니다.

관련 질문이나 언급하신 mock repository와 같은 리소스 관리 방법에 대해 더 깊이 이해하시려면, 강의 내에서 언급된 실습 예제를 다시 살펴보시거나, 깃허브 저장소의 코드를 참조하는 것도 좋은 방법입니다. 또한, 강사님의 커뮤니티나 포럼에 질문을 올려보시면 다른 수강생분들이나 강사님께서 추가적인 조언을 드릴 수 있을 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

진재혁님의 프로필 이미지
진재혁

작성한 질문수

질문하기