Part 2: 함수형 프로그래밍
함수형 패러다임의 실무 활용 및 Scala 컬렉션 API 숙달
📚 학습 목표
- 순수 함수와 참조 투명성 이해
- 함수 합성을 통한 코드 재사용성 향상
- Option, Try, Either를 활용한 안전한 에러 처리
- Implicit을 활용한 타입 클래스 패턴 습득
- 고급 타입 시스템 (제네릭, Variance) 이해
📖 챕터 목록
- 순수 함수와 참조 투명성
- 함수 합성 (compose, andThen)
- 부분 함수 (PartialFunction)
- 재귀 패턴 심화
- 메모이제이션
- Option으로 Null 안전성 확보
- Try를 사용한 예외 처리
- Either로 풍부한 에러 정보 전달
- for-comprehension을 통한 에러 처리 체이닝
- 실전 예제: 사용자 등록 시스템
- implicit parameter (컨텍스트 전달)
- implicit conversion (타입 변환)
- implicit class (Extension Methods)
- 타입 클래스 패턴
- 모범 사례 및 주의사항
- 제네릭 타입
- 공변성(Covariance)과 반공변성(Contravariance)
- 타입 경계 (Upper/Lower Bounds)
- Context Bounds
- Phantom Types
⏱️ 예상 학습 시간
총 2-3주 (주당 10-15시간 투자 기준)
- Chapter 7-8: 1주
- Chapter 9-10: 1-2주
🎯 학습 성과
Part 2를 완료하면 다음을 할 수 있습니다:
✅ 함수형 프로그래밍 패러다임 실무 적용
✅ 타입 안전한 에러 처리 구현
✅ 타입 클래스 패턴으로 코드 확장
✅ 고급 타입 시스템 활용