iOS 앱 개발

OFFINE   ISO   SWIFT   코드설계   코드 안정성   디버깅 최적화  

효율적이고 안정적인 iOS 코드 설계 


: 함수형 & 선언형 프로그래밍 패러다임

최근 함수형 프로그래밍(FP)과 선언형 아키텍처에 대한 관심이 더욱 높아지고 있습니다.
예측 가능한 코드, 유지보수성 향상, 멀티스레드 환경에서의 안정성 등 실무에서 FP의 필요성이 커지고 있기 때문입니다. 이 강의에서는 네이버, 쿠팡 등 유수 IT기업에서 재직한 권문범 iOS 개발자와 함께 순수 함수, 불변성, 고차 함수,함수형 데이터 구조, 선언형 설계 패턴 등을 실무에서 더 좋은 코드를 설계하는 법을 배웁니다.
더 직관적이고 유지보수하기 좋은 코드를 설계해 버그를 줄이고, 개발 생산성을 극대화하는 방법을 배워보세요.

기본 정보

∙ 5개 대주제, 5주 10시간 과정
∙ 사전지식 필요

강의 특징

∙ 매주 목요일 강남역 오프라인
∙ 부가 학습 자료 제공

강의 공개

∙ 오프라인 활영본 온라인 강의장에 제공 (종강 후 한달 간 수강 가능)

3월 개강반


모집기간
2025. 2. 10 (월) - 2025. 3. 26 (수) 17:00

과정 일정 및 시간
5주 ㅣ 2025. 3. 27 (목) - 2025. 4. 24 (목)
주 1회, 매주 목요일 19:30 - 21:30 (2h), 총 10h   오프라인
∙ 사전 설문지를 제출해주신 분들에게는 더욱 구체적인 맞춤형 피드백을 제공해드립니다.

모집인원
오프라인 참가자 : 20명   선착순
∙ 모집 인원 및 강의실 환경에 따라 수강 인원은 변동될 수 있습니다.
∙ 개강 전 자세한 안내는 이메일 및 문자로 안내 드립니다.

수업 장소 및 준비 사항
오프라인
∙ 위치 : 강남역 4번출구 미왕빌딩 11층 패스트캠퍼스
∙ 강의장 주소 : [도로명] 서울 강남구 강남대로 364 [지번] 역삼동 826-21
∙ 강의장 : 개별 문자 및 이메일 안내
∙ 준비사항 : 개별 노트북 ( * 필수 프로그램 하단에서 확인 )
[오프라인] 효율적이고 안정적인 iOS 코드 설계
: 함수형 & 선언형 프로그래밍 패러다임
할인 금액(-0%) 0
현재 판매가0

iOS 개발자의 고민
앱이 점점 고도화되고, 개발 경험이 쌓여갈수록

코드의 복잡성과 개발자의 고민은 함께 증가합니다.

새로운 기능을 추가할 때마다 기존 코드가 깨져요.

멀티스레드 환경에서 레이스 컨디션과 자원 관리가 어려워요.

코드가 점점 꼬여서 유지보수가 힘들어요.

상태(State) 관리가 너무 복잡해요.

비동기 처리, 데이터 흐름이 복잡해요.

앱 개발자의 고민

복잡한 코드 설계, 이제 바꿀 때입니다!

함수형 & 선언형 패러다임으로
확장성과 유지보수가 쉬운 코드를 만들어 보세요.

🔍 함수형 사고법 향상과 실전 적용 방법

ImageSlide
ImageSlide
ImageSlide
ImageSlide

🚀 코드레벨 적용을 위한 학습 방법

ImageSlide
ImageSlide
ImageSlide
ImageSlide

강사소개

권문범
———————————————————————————————

· Coupang - Staff Software Engineer
· Phoenix Dart - Director / Head of Engineering
· NAVER Corp - Tech Lead & DevOps Part Lead / iOS Developer
· Wemakeprice - iOS Developer
· Uangel Corporation - iOS Developer

함수형 프로그래밍과 선언형 아키텍처를 통해,
예측가능하고 코드 불안정성을 줄이는
보다 높은 차원의 코드를 만들 수 있습니다.
—————————————————————————————————

안녕하세요. 권문범입니다.

하드웨어의 발전으로 인해 멀티 프로세스와 멀티 스레드의 시대를 넘어, 코루틴을 활용한 동시성 프로그래밍 기법까지 등장하게 되었습니다. 객체지향 프로그래밍은 대규모 시스템 설계와 협업을 가능하게 해주었습니다. 하지만 개발자들은 고도화된 동시성 프로그래밍 환경에서 발생할 수 있는 Race Condition으로 인한 자원 관리 문제와 이로 인한 사이드 이펙트로 어려움을 겪고 있습니다. 런타임에서의 불안정성은 점차 높아지고 있으며, 이를 제어하기 위한 다양한 방법들이 제안되고 사용되고 있습니다. Apple이나 Google과 같은 First-party 개발사들은 SDK를 통해 이러한 이슈들을 보다 쉽게 해결할 수 있도록 여러 가지 API를 설계하여 제공하고 있습니다. 이러한 철학과 방법들에 대해 함께 배우고자 합니다.

함수형 프로그래밍은 많은 사람들이 좋다는 것은 알지만, 그것을 실제로 어떻게 적용해야 할지, 함수형 사고와 개념에 대해 제대로 이해하는 사람은 여전히 부족합니다. 심지어 함수형 프로그래밍으로 작성된 코드를 보고도 그것이 함수형이라는 사실을 인식하지 못하는 경우도 있습니다. 이는 함수형 프로그래밍을 제대로 이해한 결과가 아닙니다. 이번 강의에서 순수 함수, 불변성, 고차 함수 등을 활용하여 함수형 프로그래밍을 배우고, 함수형 코드를 작성하고 해석하는 방법에 대해 깊이 있게 다루겠습니다. 또한 함수형 사고를 길러서, 어려운 문제들도 함수형 프로그래밍을 통해 해결할 수 있도록 할 것입니다.

선언형 아키텍처는 런타임에서의 데이터 불일치나 상태 관리로 인한 불안정성 문제를 해결할 수 있는 함수형 프로그래밍을 통한 정적인 시스템 설계입니다. 간결한 코드와 데이터의 무결성을 유지하면서 확장 가능한 아키텍처 설계를 제안합니다. 개념을 확실히 이해한 후에는, 이를 바탕으로 다양한 오픈소스 프로젝트나 고도화된 아키텍처 설계를 할 수 있을 것입니다.

이 강의는 제가 사내외에서 수많은 강연을 진행하면서 다뤘던 내용입니다. 다소 어려운 주제인 만큼 많은 분들이 중도에 포기하거나, 수료 후에도 완전히 이해하지 못하는 경우가 많습니다. 그러나 이러한 어려운 주제를 이해하고 자신의 것으로 만들 수 있는 의욕 있는 분들이 많아지기를 바랍니다. 아직도 많은 개발자들이 함수형 프로그래밍과 선언형 아키텍처로 작성된 코드를 이해하지 못하고 있습니다. 저는 이번 강의를 통해 기초적인 틀을 제시하고, 그 위에 더 깊은 개념과 원리들을 쌓아가기를 희망합니다. 어려운 주제에 도전하고 이를 자신만의 지식으로 만들어 가고자 하는 개발자분들의 많은 참여를 기대합니다.

주요 강연 목록


ImageSlide
ImageSlide
ImageSlide
ImageSlide
ImageSlide
ImageSlide
함수형 & 선언형 프로그래밍

“이제 선택이 아닌 필수가 되었습니다.”

Combine, async/await,SwiftUI의 등장으로 Swift 개발의 기본 패러다임 자체가 변화했습니다.
특히, 앱이 고도화될수록 코드의 확장성과 유지보수성은 필수 요소가 되었죠.

Swift는 객체지향(OOP)함수형(FP)을 모두 지원하는 멀티 패러다임 언어입니다.
이제 두 가지 패러다임을 조화롭게 활용해야,
더 직관적이고 유지보수하기 쉬운 코드는 설계하는 것이 주요한 역량이 되고있습니다.

함수형 사고 체화 로드맵

실전에서 활용할 수 있는 함수형 & 선언형 패러다임을 온전히 내 것으로 만들 수 있도록,
[1] 정확한 원리 학습 → [2] 실전 프로젝트 적용 → [3] 코드 리뷰 및 실전앱개발 까지
함수형 사고를 길러 실무에서 코드레벨로 구현가능한 커리큘럼을 설계했습니다.

ImageSlide
ImageSlide
ImageSlide
함수형 사고

함수형 사고를 익혀 코드 설계의 본질을 이해하고,
프로젝트 요구사항에 최적화된 코드를 작성할 수 있는 개발자로 성장해보세요.

ImageSlide
ImageSlide
ImageSlide
ImageSlide
ImageSlide

이제는 정말 배워야할 때 !
실무에서 즉시 활용가능하도록 설계된 커리큘럼을 자세히 확인해보세요!

함수형 사고 체화 로드맵 - 1

5주 동안 단순한 문법이 아닌, 함수형 사고와 핵심 원리를 학습합니다.
함수형 프로그래밍부터 선언형 아키텍처 설계-적용까지 익히며,
Combine, async/await을 활용한 비동기 처리와 데이터 흐름 관리까지 실무에서 활용할 수 있도록 배웁니다.

  • 1주차

    함수형 프로그래밍 기초

    함수형 프로그래밍의 핵심 개념을 이해하고 간단한 알고리즘 문제를 함수형 스타일로 해결합니다.

    · 함수형 프로그래밍이란?
    · 명령형 vs 선언형
    · 순수 함수, 불변성, 고차 함수 개념
    · 함수형 프로그래밍이 해결하는 문제
    (상태 관리, 버그 감소, 테스트 용이성 등)

  • 2주차

    함수형 프로그래밍 심화

    함수형 프로그래밍의 심화 개념을 이해하고, 실전에서 활용하는 고급 패턴을 익힙니다.

    · 함수형 데이터 구조와 패턴
    · 커링(Currying)과 부분 적용(Partial Application)
    · 함수 컴포지션(Function Composition)
    · 모나드, 펑터(Functor), Either 타입
    · Swift에서의 함수형 스타일 적용 방법

  • 3주차

    선언형 아키텍처 기초

    선언형 아키텍처의 개념과 명령형과의 차이를 이해하고, Swift 기본 API를 활용한 선언형 프로그래밍으로 코드를 작성합니다.

    · 선언형 프로그래밍이란?
    · 명령형 프로그래밍과의 비교
    · Swift의 선언형 API (Combine 기본 적용)
    · 선언형 프로그래밍의 장점과 실무 적용 사례

  • 4주차

    선언형 아키텍처 설계

    선언형 아키텍처를 실무 프로젝트에 적용하고, 실전에서 활용할 수 있는 수준으로 이해합니다.

    · 선언형 아키텍처 설계 방법
    · 상태 관리 및 반응형 패턴
    · Combine을 활용한 선언형 설계 적용 방법
    · 선언형 아키텍처의 테스트 전략

  • 5주차

    함수형 & 선언형 패러다임 실전

    함수형 프로그래밍과 선언형 아키텍처를 실전 앱 개발에 적용하고, 코드 리뷰를 통해 최적화합니다.

    · 실제 프로젝트에서 함수형 프로그래밍과 

    선언형 아키텍처 적용 방법
    · 유지보수와 확장성을 고려한 설계 패턴
    · 실무에서 마주하는 함수형 프로그래밍의 

    한계와 해결법

함수형 사고 체화 로드맵 - 2

매주 수행하는 실전 프로젝트

배운 개념을 단순히 이해하는 것을 넘어, 실제 프로젝트에 직접 적용하며 학습합니다.
매주 주어지는 실전 과제를 수행하며, 함수형 패러다임을 코드 레벨에서 구현하는 경험을 쌓습니다.

  • 1주차

    ✅ 순수 함수 실습
    : 구구단, 정렬 알고리즘을
    함수형 스타일로 작성


    ✅ 고차 함수 실습
    : map, filter, reduce 활용하여 데이터 변환

  • 강사님 한 마디 +

    함수형 프로그래밍을 제대로 활용하려면, 먼저 기본 개념을 완벽하게 익히는 것이 중요합니다. 그래서 순수 함수 실습을 통해 불변성, 고차 함수 같은 핵심 개념을 직접 코드로 경험할 수 있도록 했습니다.

    또한, 단순한 개념 학습에 그치지 않고 "map, filter, reduce를 활용한 데이터 변환 실습"을 포함해 실무에서 자주 쓰이는 함수형 스타일의 사고를 훈련할 수 있도록 구성했습니다.

  • 2주차

    ✅ 모나드와 펑터 직접 구현하기
    ✅ 파일 I/O 모듈을 함수형으로
          자료구조와 알고리즘 문제 해결

  • 강사님 한 마디 +

    실무에서 활용할 수 있는 고급 패턴과 개념을 다룰 차례입니다.
    이를 위해, "모나드와 펑터 직접 구현하기" 프로젝트를 통해 추상화 개념을 깊이 이해하고, 코드에서 활용하는 법을 배웁니다. 또한, "파일 I/O 모듈을 함수형 스타일로 설계하는 실습"을 통해 함수형 프로그래밍이 단순한 데이터 변환이 아니라, 실무의 다양한 문제 해결에도 적용될 수 있음을 경험하도록 구성했습니다.

  • 3주차

    ✅ 파일 I/O 및 네트워크 모듈
          선언형 스타일로 구현
    ✅ Swift의 선언형 API 활용
          (Combine 기본 적용)

  • 강사님 한 마디 +

    “파일 I/O 및 네트워크 모듈을 선언형 스타일로 구현하는 실습"을 통해 명령형과 선언형의 차이를 코드 레벨에서 비교할 수 있도록 했습니다. 또한, "Swift의 선언형 API를 활용한 데이터 흐름 관리" 실습을 통해, 실제 프로젝트에서 비동기 데이터 흐름을 선언형 방식으로 관리하는 방법을 학습할 수 있도록 구성했습니다.

  • 4주차

    ✅ 선언형 아키텍처 직접 구현하기
    ✅ 데모앱 개발하기
          : 계산기, 도서검색기 등

  • 강사님 한 마디 +

    실제 프로젝트의 아키텍처 설계에 적용하는 과정을 경험합니다.
"선언형 아키텍처 직접 구현하기" 프로젝트를 통해 어떤 방식으로 코드 구조를 설계해야 선언형 패러다임을 제대로 활용할 수 있는지 배우게 됩니다. 또한, "선언형 아키텍처를 활용한 데모 앱 개발" 실습을 추가하여 계산기, 도서 검색기 같은 실제 기능을 선언형 방식으로 설계하고 구현하는 경험을 제공합니다.

  • 5주차

    ✅ 선언형 아키텍처 기반 데모 앱 제작
    ✅ 코드 리뷰 및 최적화 세션

  • 강사님 한 마디 +

    지금까지 배운 함수형 & 선언형 패러다임을 실무 프로젝트에 직접 적용하는 과정을 거칩니다.
이를 위해 "선언형 아키텍처 기반 데모 앱 제작" 프로젝트를 수행하며 실제 앱을 개발하는 과정에서 함수형 및 선언형 패러다임이 어떻게 활용되는지 경험하도록 했습니다. 또한, "코드 리뷰 및 최적화 세션"을 통해, 직접 작성한 코드를 점검하고, 실무에서 유지보수성과 확장성을 고려한 최적화 방법을 학습할 수 있도록 구성했습니다.

함수형 사고 체화 로드맵 - 3

코드 리뷰 & QnA를 통한 최적화 및 실전 적용 능력 강화

권문범 개발자 및 동료들과 함께 현장에서 코드 리뷰를 진행하며, 보다 효율적이고 확장 가능한 코드로 개선하는 과정을 거칩니다.
질문과 토론을 통해, 함수형&선언형 패러다임을 실무 수준으로 체화합니다.

ImageSlide
ImageSlide

추천 수강대상

이런 분들에게 학습을 추천드립니다.

· Swift에 익숙하지만, 더 효율적인 코드 구조와 설계 패턴을 고민하는 분

· 함수형 프로그래밍 개념을 제대로 이해하고, 앱 개발에서 코드 레벨로 활용하고 싶은 분

· 들어만 봤던 함수형 & 선언형 패러다임을 직접 코드로 구현하고 싶은 분

· 코드의 복잡도를 줄이고, 유지보수가 쉬운 확장 가능한 구조를 만들고 싶은 분

· 선언형 아키텍처를 활용해, 의존성을 줄이고 더 직관적인 코드 작성을 원하는 분

· 비동기 처리와 상태 관리의 복잡성을 해결하고, 안정적인 데이터 흐름을 구현하고 싶은 분

· 실제 프로젝트에서 함수형 사고를 적용하고, 코드 리뷰를 통해 최적화 경험을 쌓고 싶은 분

본 강의에서 사용될
프로그램을 안내드립니다.

Xcode 16, Swift 6.0 이상

*프로그램은 별도 제공하지 않습니다.

함수형 프로그래밍 & 선언형 아키텍처를
코드레벨로 적용할 수 있도록 설계된 커리큘럼입니다.

1주차
함수형 프로그래밍 기초
[학습목표]
:함수형 프로그래밍의 핵심 개념을 이해하고 간단한 알고리즘 문제를 함수형 스타일로 해결해본다.

[학습내용 ]
-함수형 프로그래밍이란?
- 명령형 vs 선언형
- 순수 함수, 불변성, 고차 함수 개념
- 함수형 프로그래밍이 해결하는 문제 (상태 관리, 버그 감소, 테스트 용이성 등)

✏️ 실무형 과제
- 순수 함수 실습: 구구단, 정렬 알고리즘을 함수형 스타일로 작성
- 고차 함수 실습: map, filter, reduce 활용하여 데이터 변환
2주차
함수형 프로그래밍 심화
[학습목표]
: 함수형 프로그래밍의 심화 개념을 이해하고, 실전에서 활용하는 고급 패턴을 익힌다.

[학습내용 ]
-함수형 데이터 구조와 패턴
- 커링(Currying)과
  부분 적용(Partial Application)
-함수 컴포지션(Function Composition)
- 모나드, 펑터(Functor), Either 타입
- Swift에서의 함수형 스타일 적용 방법

✏️ 실무형 과제
- 모나드와 펑터 직접 구현하기
- 파일 I/O 모듈을 함수형으로 자료구조와 알고리즘 문제 해결
3주차
선언형 아키텍처 기초
[학습목표]
: 선언형 아키텍처의 개념과 명령형과의 차이를 이해하고, Swift 기본 API를 활용한 선언형 프로그래밍으로 코드를 작성한다.

[학습내용 ]
- 선언형 프로그래밍이란?
- 명령형 프로그래밍과의 비교
- Swift의 선언형 API (Combine 기본 적용)
- 선언형 프로그래밍의 장점과 실무 적용 사례

✏️ 실무형 과제
- 파일 I/O 및 네트워크 모듈 선언형 스타일로 구현
- Swift의 선언형 API 활용 (Combine 기본 적용
4주차
선언형 아키텍처 설계
[학습목표]
:선언형 아키텍처를 실무 프로젝트에 적용하고, 실전에서 활용할 수 있는 수준으로 이해한다.

[학습내용 ]
-선언형 아키텍처 설계 방법
- 상태 관리 및 반응형 패턴
- Combine을 활용한 선언형 설계 적용 방법
- 선언형 아키텍처의 테스트 전략

✏️ 실무형 과제
-선언형 아키텍처 직접 구현하기
- 선언형 아키텍처를 활용하여 데모앱 개발하기 (계산기, 도서검색기 등)
5주차 및 수료식
함수형 & 선언형 패러다임 실전
[학습목표]
:함수형 프로그래밍과 선언형 아키텍처를 실전 앱 개발에 적용하고, 코드 리뷰를 통해 최적화한다.

[학습내용 ]
-실제 프로젝트에서 함수형 프로그래밍과 선언형 아키텍처 적용 방법
- 유지보수와 확장성을 고려한 설계 패턴
- 실무에서 마주하는 함수형 프로그래밍의 한계와 해결법

✏️ 실무형 과제
- 선언형 아키텍처 기반 데모 앱 제작
- 코드 리뷰 및 최적화 세션


🎖️수료식
Recorded Video

경조사로 인해 참석하지 못한
오프라인 수업도 녹화본으로 출석 가능

녹화본 영상!
이렇게 활용하세요!
✓ 복습 중 생각나지 않는 내용이 있다면 다시 보기
✓ 일정으로 참석하지 못한 날의 수업 진도 따라잡기
✓ 필기 중 놓친 부분 확인하기

* 본 녹화본 영상은 종강 후 30일간 무제한 다시보기가 가능합니다.
* 오프라인 현장 촬영으로 인해 음질 및 화질이 균일하지 않을 수 있습니다.
Classroom

강남역 4번 출구
도보 ‘3초’ 거리에 있는 강의실

미왕빌딩 10층

[도로명] 서울 강남구 강남대로 364
[지번] 역삼동 826-21

네이버 지도 바로가기 →
쾌적한 강의장

실시간 현장 강의에 집중할 수 있는
최적의 강의장

자주 묻는 질문
FAQ

[오프라인] 효율적이고 안정적인 iOS 코드 설계
: 함수형 & 선언형 프로그래밍 패러다임
할인 금액(-0%) 0
현재 판매가0