Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
개발 · 프로그래밍

/

모바일 앱 개발

SwiftUI + TCA: 실전 프로젝트로 완성하는 차세대 iOS 아키텍처

복잡한 SwiftUI 상태 관리, TCA (The Composable Architecture)로 깔끔하고 견고한 앱을 만드세요. 실전 프로젝트 예제로 핵심만 빠르게 배웁니다.

(5.0) 수강평 3개

수강생 36명

  • 덤벨로퍼

이런 걸 배울 수 있어요

  • TCA의 핵심 요소(State, Action, Reducer, Store)를 이해하고, SwiftUI 앱의 복잡한 데이터 흐름과 상태를 체계적으로 관리하는 방법을 배웁니다.

  • SwiftUI의 최신 Stack 기반 내비게이션과 Apple의 차세대 데이터 프레임워크인 SwiftData를 TCA 아키텍처에 통합하여 실용적인 프로젝트를 완성하는 경험을 얻습니다.

  • 이미지 피커와 같은 비동기 작업을 Reducer에서 안전하게 처리하는 방법과 swift-dependencies를 활용한 최신 의존성 주입 기법을 익힙니다.


SwiftUI + TCA: 실전 프로젝트로 완성하는 차세대 iOS 아키텍처

SwiftData, 의존성 주입, 내비게이션까지 현업에서 마주하는 기술적 과제 완벽 정복


"내 SwiftUI 앱, 왜 이렇게 코드가 복잡해졌지? 상태 관리가 어렵다고요? 🤯"

점점 커지는 SwiftUI 프로젝트에서 데이터 흐름과 상태 관리에 혼란을 겪는 개발자분들을 위해, The Composable Architecture (TCA)를 완벽하게 정복하는 강의를 준비했습니다.

이 강의는 단순히 이론만 설명하지 않습니다. 실제 프로덕션 환경에서 마주할 수 있는 복잡한 시나리오를 TCA + SwiftUI로 어떻게 깔끔하고 효율적으로 해결하는지, 실전 프로젝트 예제를 통해 단계별로 상세히 보여드립니다.


이런 분들께 강력 추천합니다!

  • SwiftUI 앱 개발 중인 주니어 개발자: 복잡한 상태 관리 패턴에 대한 갈증을 느끼는 분.

  • 아키텍처에 관심 있는 iOS 개발자: 유지보수와 테스트 용이성이 높은 아키텍처를 배우고 싶은 분.

  • TCA를 혼자 공부하다 어려움을 겪는 분: 이론과 실제 적용의 간극을 메우고 싶은 분.

  • 사이드 프로젝트의 퀄리티를 높이고 싶은 분: 견고하고 확장 가능한 앱을 만들고 싶은 분.


🚀 이 강의를 통해 얻게 될 것들:

  1. TCA의 핵심 철학 완벽 이해: State, Action, Reducer, Store가 왜 필요하며 어떻게 유기적으로 동작하는지 정확히 이해하게 됩니다.



  2. 복잡한 SwiftUI 상태 관리 해결: 복잡한 UI 상태와 데이터 흐름을 TCA를 통해 예측 가능하고 안정적으로 관리하는 노하우를 체득합니다. TCA의 단방향 데이터 흐름으로 깔끔하게 코드를 정리하는 노하우를 배웁니다.



  3. Scope를 활용한 컴포넌트 모듈화: 하나의 거대한 기능을 독립적이고 재사용 가능한 자식(Child) 컴포넌트로 분리하고, 부모-자식 간의 상태와 액션을 안전하게 연결하는 방법을 마스터합니다. 이를 통해 앱의 유지보수성과 확장성을 극대화합니다.



  4. 테스트 용이성 확보: TCA가 제공하는 강력한 테스트 도구를 활용하여 버그를 줄이고 안정적인 앱을 개발하는 방법을 익힙니다.

  5. 모던한 내비게이션 아키텍처 설계: 화면을 밀고 당기는 'Stack 기반 네비게이션'과 시트, 팝업 등을 다루는 '트리 기반 네비게이션'을 모두 마스터합니다. TCA의 Scope, NavigationStackStore, ifLet 등을 활용해 어떤 복잡한 화면 흐름도 명쾌하고 효율적으로 구현하는 방법을 배웁니다.



  6. 확장성 높은 아키텍처 설계: 컴포넌트 간의 의존성을 줄이고 재사용성을 높이는 TCA의 장점을 실전에서 활용합니다.



  7. 실전 프로젝트 경험: 이미지 피커, API 통신과 같은 비동기 작업을 Reducer에서 안전하게 처리하고, swift-dependencies를 활용한 최신 의존성 주입 기법을 익힙니다.




우리는 무엇을 만들게 될까요? 🚀


이론 학습을 넘어, 실제 작동하는 '마이페이지', '검색' 기능 을 처음부터 끝까지 함께 만듭니다.


  • 기본 UI 및 데이터 연동: SwiftUI와 SwiftData를 사용해 설정 목록을 구성합니다.

  • Stack 기반 내비게이션: 목록에서 상세 페이지(이름 수정, 이메일 수정, 이미지 변경)로 진입하는 로직을 구현합니다.

  • 이름/이메일 수정: TextField 바인딩과 AlertState를 활용해 사용자 정보를 수정하고 확인 알림을 띄웁니다.

  • 프로필 이미지 변경: PhotosUI를 연동해 갤러리에서 이미지를 선택하고, LazyVGrid를 통해 보여주며, 선택한 이미지로 프로필을 업데이트합니다.

  • 강력한 검색 기능 구현:

    • 비동기 통신과 상태 관리: 사용자의 검색어에 따라 비동기적으로 검색 결과를 가져오는 로직을 Reducer에서 안전하게 처리합니다.

    • ifLet을 활용한 조건부 UI: 검색 결과가 있을 때만 결과 목록 UI를 노출하는 방법을 TCA의 ifLet 스코프를 통해 우아하게 구현합니다.

    • 트리 기반 네비게이션: 검색 결과 아이템을 탭 했을 때, 해당 아이템의 상세 페이지로 이동하는 트리 기반 네비게이션 로직을 경험하며 Stack 기반 네비게이션과의 차이점을 이해합니다.


더 이상 복잡한 코드로 고민하지 마세요! 이 강의와 함께라면, 여러분의 SwiftUI 앱 개발 실력은 한 단계 더 도약할 것입니다. TCA(swift-composable-architecture)로 견고하고 아름다운 코드를 만들어 보세요! 🚀


이런 분들께
추천드려요

학습 대상은
누구일까요?

  • 기존 SwiftUI의 상태 관리 방식(@State, @Binding, ObservableObject)에 한계를 느끼고, 보다 체계적인 아키텍처를 도입하고 싶은 개발자

  • 실무에서 바로 적용할 수 있는 프로젝트 기반의 학습을 통해 TCA의 이론과 실제를 함께 경험하고 싶은 개발자

  • 앱의 규모가 커져도 유지보수 및 테스트가 용이한, 확장성 높은 코드를 작성하는 방법을 배우고 싶은 개발자

선수 지식,
필요할까요?

  • Swift 기초

안녕하세요
입니다.

411

수강생

23

수강평

24

답변

4.7

강의 평점

5

강의

6년차 iOS 개발자 덤벨로퍼입니다

현업에서 바로 사용할수 있는 강의

초중급 레벨에게 필요한 강의를 만들겠습니다

 

 

커리큘럼

전체

36개 ∙ (5시간 3분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

전체

3개

5.0

3개의 수강평

  • cooood님의 프로필 이미지
    cooood

    수강평 6

    평균 평점 5.0

    5

    62% 수강 후 작성

    • 권혁준님의 프로필 이미지
      권혁준

      수강평 6

      평균 평점 4.8

      5

      100% 수강 후 작성

      • sclee님의 프로필 이미지
        sclee

        수강평 1

        평균 평점 5.0

        수정됨

        5

        97% 수강 후 작성

        잘보았습니다. tca 맛보기로 좋네요. 다음에 올리시는 강의부터는 화질이 조금만 좋았으면 합니다.

        월 ₩15,840

        5개월 할부 시

        ₩79,200

        덤벨로퍼님의 다른 강의

        지식공유자님의 다른 강의를 만나보세요!

        비슷한 강의

        같은 분야의 다른 강의를 만나보세요!