이 강의는 함수형 프로그래밍이 처음인 개발자들을 대상으로, 기존의 사고 체계를 조금씩 바꿔나가는 데에 도움을 드리고자 이론과 실습으로 구성한 강의입니다.
이런 걸
배워요!
함수형 프로그래밍의 기본 개념
Swift를 사용한 실무 프로젝트 구현
기존 프로그램을 함수형 프로그래밍 스타일로 리팩토링
동시성 문제 해결을 위한 함수형 프로그래밍 기법
위 강의 소개 동영상을 통해 어떤 내용을 배우게 될지 미리 파악하세요.
파트1 : 함수형 프로그래밍의 개념 파트2 : 자주 사용되는 기술을 실습을 통해 익힐 수 있도록 구성 파트3 : 이미 작성된 프로그램을 함수형 프로그래밍으로 변경해보기 파트4 : UI를 적용하는 iOS앱 개발
이제는 많은 개발자들이 배우고 싶어하는 함수형 프로그래밍
최근 몇 년간 함수형 프로그래밍, Functional Programming(FP)에 대한 관심이 무척이나 높아졌습니다. 각종 분야의 밋업이나 세미나에 갔을 때 FP에 대해 논하는 것은 흔한 풍경이 되었습니다. 특히 기존 코드를 FP 방식으로 리팩토링하는 모습을 보여주며, 이 좋은 것을 널리널리 쓰라는 이야기도 많이 들립니다. 하지만 많은 개발자들이 객체지향 프로그래밍 패러다임에 익숙한 상황에서, 새로운 패러다임으로 넘어가는 데에는 많은 노력이 필요합니다. 이것은 어떤 새로운 언어를 배우고 그 문법을 익혀서 쓰는 것과는 다른 이야기입니다.함수형 프로그래밍 패러다임으로 넘어가는 것은 왜 어려울까?
한 프로그래머가 가진 인식 체계(패러다임)은 프로그램의 구조를 설계하는 것 부터 소스코드를 짜기까지 모든 과정에 깊게 관여합니다. 이 프로그래머가 객체지향 프로그래밍 패러다임 속에서 평생을 프로그래밍 해온 사람이라고 가정할 때, 함수형 프로그래밍을 새롭게 배우는 데 있어서 이런 어려움이 따를 수 있습니다:
- 변수의 값을 변경하지 않는다는 것 자체가 이상하게 느껴집니다. 조금 더 개발자 친화적으로 표현하자면, state 없이 프로그래밍을 하라는 설명 자체가 너무나도 어색합니다.
- FP에서 등장하는 Currying 이라는 개념도 이상합니다. 함수를 만드는 함수를 만드는 함수를 만든다는 것(오타 아님)이 도대체 무슨 말인지 이해가 되질 않습니다.
- 데이터를 바꾸지 않으면서 프로그램의 행동을 제어한다는 것이 이상합니다. 그냥 다 이상하게 느껴집니다.
학습 대상은
누구일까요?
Swift 언어에 익숙한 분
프로그래밍 패러다임의 진화를 이해하고 싶은 분
실무 프로젝트에 함수형 프로그래밍을 적용하고 싶은 분
기존 코드베이스를 함수형 프로그래밍으로 전환하고 싶은 분
전체
29개 ∙ (1시간 25분)
강의 소개
02:57
프로그래밍 패러다임
02:03
FP가 재조명 받는 이유
02:23
FP에 대한 오해들
02:40
FizzBuzz(FP) - 1
05:33
FizzBuzz(FP) - 2
06:54
Low-High (FP) -1
12:10
Low-High (FP) - 2
06:42