데브허브 | DEVHUB | From Zero to Network Manager Hero — Master Dio Package! | Flutter Heroes 2025 TalkFrom Zero to Network Manager Hero — Master Dio Package! | Flutter Heroes 2025 Talk
- 컨설팅 회사에서 다수의 Flutter 프로젝트를 진행하며 겪는 API 통합의 비일관성 문제를 해결하기 위해 표준화된 API 통합 방식을 제안합니다. 🧩
- API 통합 표준화를 위해 신뢰성 있고 유지보수가 잘 되는
Dio 라이브러리를 핵심 도구로 채택했습니다. 🛠️
MyRequest 추상 클래스를 통해 모든 API 요청의 기본 속성(URL, HTTP 메서드, 헤더, 바디, 응답 타입)을 정의하는 요청 중심(request-driven) 접근 방식을 소개합니다. 📝
Dio 클라이언트를 MyHttpClient 추상 클래스로 래핑하여, 기본 옵션, 인터셉터, SSL 피닝 등 커스텀 설정을 유연하게 관리할 수 있도록 설계했습니다. 🛡️
Dio의 자동 JSON 디코딩 기능을 활용하고, MyRequest 내 decoder 함수와 DTO(Data Transfer Object)를 사용하여 응답 데이터를 타입 안전하게 매핑하는 방법을 설명합니다. ↔️
- API 호출 중 발생하는
DioException을 효과적으로 처리하기 위해 try-catch 블록과 fp 패키지의 Either 타입을 활용한 함수형 오류 처리 방식을 제시합니다. 🚨
- NTT Data Italy가 2018년부터 Flutter를 도입하여 Xamarin을 대체하고 웹 개발까지 확장하며 50명 이상의 개발자와 20개 이상의 프로젝트를 운영하는 여정을 공유합니다. 🚀