아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
여기어때 favicon여기어때

iOS 검색 홈, SwiftUI로 부드럽고 유연하게!

by DD
2025-12-22
6개월 전
조회수 22

검색 홈의 복잡성 해결을 위해 모듈 분리 및 SwiftUI 전환을 진행함

탭 구조 개선을 통해 각 탭의 독립성과 확장성을 확보하고, 부드러운 화면 전환 구현

Converter를 활용한 데이터 변환 로직 분리로 코드 유지보수성 향상

모듈 분리를 통한 아키텍처 개선

기존 GCSearch 모듈을 GCSearchHome과 GCSearchResult로 분리하여 책임 분리를 달성했다. 구체적으로, 각 모듈은 하나의 화면에 집중하도록 설계되었으며, 인터페이스 기반 통신을 통해 의존성을 최소화했다. 따라서 빌드 속도 향상과 코드 유지보수성을 확보했다.

탭 구조 개선: TabInfoAppModel

각 탭의 상태를 추상화하기 위해 TabInfoAppModel 프로토콜을 정의하고, 각 탭의 상태 모델이 이를 채택하도록 설계했다. 따라서 SwiftUI View에서 일관된 방식으로 탭을 렌더링할 수 있다. 데이터 추상화를 통해 코드 중복 감소 및 유지보수 용이성을 확보했다.

Converter를 활용한 데이터 변환

각 탭의 데이터 변환 로직을 Converter로 분리하여, 서버 API 응답이나 로컬 DB 데이터를 AppModel로 변환한다. Converter 분리를 통해 변경 범위 최소화 및 뷰의 안정성을 확보했다. 결과적으로 테스트 용이성을 높여 코드 품질을 향상시켰다.

복잡한 검색 홈, 구조는 유연하게 화면은 부드럽게 개선하기
중급
아키텍처
SwiftUI
iOS
Swift
Frontend
Mobile
원문 읽기
원문 읽기

댓글 0

첫 번째 댓글을 남겨보세요!

관련 추천 글

올리브영 iOS 개발자가 말하는 개발자 모드 구축 비법!

올리브영 로고

Skip, Swift/SwiftUI 기반 크로스 플랫폼 개발 도구, 오픈 소스 전환!

해커뉴스 로고

iOS 모듈화, 컴포넌트 분리부터 QA 자동화까지

카카오스타일 로고

iOS 개발, 이제 Claude Code에 맡기세요!

딜라이트룸 로고

뱅크샐러드 iOS, 모듈 구조 개선으로 개발 효율 UP!

뱅크샐러드 로고

SwiftUI로 Date·인원 선택 UI를 유연하게!

여기어때 로고
여기어때 favicon여기어때
중급
아키텍처
SwiftUI
iOS
Swift
Frontend
Mobile

관련 추천 글

올리브영 iOS 개발자가 말하는 개발자 모드 구축 비법!

올리브영 로고

Skip, Swift/SwiftUI 기반 크로스 플랫폼 개발 도구, 오픈 소스 전환!

해커뉴스 로고

iOS 모듈화, 컴포넌트 분리부터 QA 자동화까지

카카오스타일 로고