로드맵 썸네일

인생을 바꾸는 함수형 프로그래밍 👑

인프런

JavaScript
함수형 프로그래밍
초급 강의 아이콘

초급 대상

3개 강의

로드맵 참여중인 유저 프로필 사진
로드맵 참여중인 유저 프로필 사진

599명 참여중

30% 할인

6개 남음전체 구매 적용
쿠폰 받기

로드맵 상세

고급 프로그래머가
되고 싶다면,
함수형 프로그래밍 👩🏻‍💻

함수형/이터러블 프로그래밍이 모든 언어에 적용되고 있는 것은 분명한 이유가 있기 때문입니다.

자바스크립트는 이터러블/이터레이터/제너레이터/심볼 등을 기반으로 매우 뛰어난 프로토콜을 가지고 있습니다. 이러한 프로토콜은 개발자로 하여금 언어를 다루라고 이야기하고 있습니다. ES6+의 진짜 매력은 바로 이 ‘이터러블 프로토콜’입니다.

여기에는 실제적인 가치가 있습니다. 이터러블 프로그래밍은 문제를 작게 만들고 조합성을 높이는 데 좋은 도구입니다. 이를 통해 생산성을 높이고, 오류율을 줄이며, 유지보수가 쉽도록 합니다. 이제는 거의 대부분의 언어에 적용되면서 이 방법은 탈언어적인 해결책이 되었습니다.

함수형 프로그래밍이 주는 간결하고 안정적인 코드를 만나보세요.

도움이 되는 분들

  • 함수형 프로그래밍을 배우고 싶은 분
  • ES6+의 기술들을 깊게 다뤄보고 싶은 분
  • 이터러블/이터레이터/제너레이터가 어려웠던 분
  • 비동기 프로그래밍을 능숙하게 하고 싶은 분
  • 지연성/동시성/병렬성에 대해 상세히 알고 싶은 분
  • 에러 핸들링을 어떻게 해야 하는지 어려웠던 분
  • 간결하고 우아한 코드를 작성하고 싶은 분

기존 ES5 문법 프로그래밍의 단점

  • i++, j++, if, for, break, 상태 변경에 의존한 코드는 버그가 생기기 쉽습니다.
  • 기능 발전, 기획 변경에 대응하다보면 버그가 발생되기 쉬워 유지보수가 어렵습니다.
  • 개발자마다 선호하는 코드 스타일이 다르고, 서로의 코드를 해석하기 어렵습니다.
  • 항상 로직을 새로 작성해야하기 때문에 생산성이 떨어집니다.
  • 그에 따른 테스트 케이스도 많아지게 되어 생산성이 떨어집니다.

자바스크립트에서 이터러블 프로그래밍의 장점

  • 자바스크립트는 ES6+가 되면서 언어에서 이터러블 프로토콜을 특별히 강조하고 있습니다.
  • 심볼/이터러블/이터레이터/제너레이터, Promise/async/await 등의 프로토콜이 강조되고 있습니다.
  • 이후 버전에서도 async/await/for...await-of/Async Iterator 등으로 프로토콜이 발전하고 있습니다.
  • 언어 차원에서 지원하는 프로토콜을 통해 만들어지는 코드이기에 조합성이 높습니다.
  • 언어 차원에서 지원하는 에러 핸들링을 사용할 수 있습니다.
  • 비동기/동시성 프로그래밍을 보다 안전하고 쉽게 할 수 있습니다.
  • 코드양을 최소화할 수 있습니다.
  • 트랜스파일링을 하면서도 변환되는 코드의 양을 최소화할 수 있는 아이디어도 가지고 있습니다.

함수형/이터러블 프로그래밍은 무엇을 대체하는 것인지

  • 객체지향 프로그래밍을 대체하는 것이 아닙니다.
  • 이터러블 프로그래밍을 통해 명령형 코드를 대체합니다.
  • i++, j++, if, for, break 등을 거의 사용하지 않게 되어 실수가 적어집니다.

예제 코드

이런 선수 지식이 필요해요!

 

JS에 대한 기본 지식 갖추신 분

변수선언방식, 반복문/조건문을 아시는 분

데이터타입별 기본 메소드 알고 계신 분

형변환 및 연산자와 표현식을 아시는 분

코스 상세보기

로드맵에 포함된 강의 썸네일
코어 자바스크립트

자바스크립트 초심자들이 가장 어려워하는 this, 콜백, 스코프와 실행컨텍스트, 프로토타입, 클로저 등에 대하여 개념 및 동작 원리를 알기 쉽게 설명함으로써, 수강생들이 향후 자바스크립트를 학습하는 데에 있어 가이드를 제시해 드립니다.

16,500

22,000

로드맵에 포함된 강의 썸네일
함수형 프로그래밍과 JavaScript ES6+

ES6+와 함수형 프로그래밍을 배울 수 있는 강의입니다. 이 강좌에서는 ES6+의 이터러블/이터레이터/제너레이터 프로토콜을 상세히 다루고 응용합니다. 이터러블을 기반으로 한 함수형 프로그래밍, map/filter/reduce, 파이프라인, 제너레이터를 통한 지연 평가, Promise 합성, 동시성/병렬성, async/await와 비동기 에러 핸들링 등을 배울 수 있습니다. 이 강좌를 습득하고 연습해 중급 자바스크립트 개발자로 성장하세요!

41,250

55,000

로드맵에 포함된 강의 썸네일
함수형 프로그래밍과 JavaScript ES6+ 응용편

‘함수형 프로그래밍과 JavaScript ES6+’의 후속 강의로 함수형 프로그래밍, 이터러블 프로그래밍을 다양하게 응용합니다. 이 강의를 들으면 에러가 나기 쉬운 i++, j++, if, for, break 등의 명령형 코드를 더이상 작성하지 않을 수 있습니다. 에러율이 적으며, 생산성이 높고, 아름다운 표현력을 가진 함수형 코드를 작성해보세요!

33,000

44,000

30% 할인

6개 남음전체 구매 적용
쿠폰 받기

로드맵 코스 3