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

포함된 강의수: 3개

마지막 업데이트: 2020.01.03

  • Javascript 핵심 개념 알아보기 - JS Flow

    Javascript 핵심 개념 알아보기 - JS Flow

    ₩15,400
  • 함수형 프로그래밍과 JavaScript ES6+

    함수형 프로그래밍과 JavaScript ES6+

    ₩55,000
  • 함수형 프로그래밍과 JavaScript ES6+ 응용편

    함수형 프로그래밍과 JavaScript ES6+ 응용편

    ₩44,000
인프런
만든 사람 인프런
다른 로드맵

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

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

자바스크립트는 이터러블/이터레이터/제너레이터/심볼 등을 기반으로 매우 뛰어난 프로토콜을 가지고 있습니다. 이러한 프로토콜은 개발자로 하여금 언어를 다루라고 이야기하고 있습니다. 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에 대한 기본 지식 갖추신 분

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

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

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

  • Javascript 핵심 개념 알아보기 - JS Flow

    Javascript 핵심 개념 알아보기 - JS Flow

    ₩15,400
  • 함수형 프로그래밍과 JavaScript ES6+

    함수형 프로그래밍과 JavaScript ES6+

    ₩55,000
  • 함수형 프로그래밍과 JavaScript ES6+ 응용편

    함수형 프로그래밍과 JavaScript ES6+ 응용편

    ₩44,000
인프런
만든 사람 인프런
다른 로드맵
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스