Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

stardustrain/FunctionalES

Repository files navigation

FunctionalES

ES6+, 함수형 프로그래밍, 비동기, 동시성 프로그래밍

소스코드 보기

목차

  1. 들어가며
    • ES6, 함수형 프로그래밍, 비동기/동시성 프로그래밍
    • ES6+
    • 함수형 프로그래밍
    • 비동기/동시성 프로그래밍
  2. 타입과 값
    • 7가지 내장 타입으로 바라보기
    • 자바스크립트에서의 객체
    • JSON 데이터 타입
    • Iterable, Iterator
    • Symbol.iterator
    • Promise
  3. 함수형 프로그래밍 관점에서 바라본 자바스크립트의 값
    • 자바스크립트에서의 함수형 프로그래밍을 위한 타입과 값
    • JSON 데이터 타입
    • undefined
    • 열거 가능한 값, 컬렉션
    • 컬렉션 순회
    • 불변성
    • 함수와 화살표 함수
    • Promise
  4. 컬렉션 중심 프로그래밍
    • 컬렉션
    • 3개의 대표 함수 map, reduce, findVal
    • map 함수
    • reduce 함수
    • findVal 함수
  5. 코드를 컬렉션으로 다루기
    • pipe, go
    • match
    • 함수를 값으로 다루면서 원하는 시점에 평가하기
    • or, and
  6. 비동기, 동시성, 병렬성 프로그래밍
    • 들어가기 앞서 Promise, async/await에 대해
    • Promise는 콜백 지옥을 해결한 것일까?
    • promise.then(f)의 규칙
    • Promise 체인
    • then :: Promise p => (a -> b | p b) -> a | p a -> b | p b
    • then에 커링 적용하기
    • 파이프라인
    • 이미지 동시에 모두 불러온 후 DOM에 반영하기
    • mapC와 limit
    • 쇼트트랙 계주 - 순서대로 실행하기
    • 동시적으로 혹은 순차적으로
    • async/await는 은총알인가?
    • 병렬적으로 동작할 수 없는 async/await
    • 더 많은 함수들
  7. 예외 처리
    • ES6+의 3가지 예외
    • pipe().nullable()
    • pipe().error()
    • pipe().exception() ()
    • 여러가지 달기
    • pipe().error().complete()
    • 다른 컬렉션 조작 함수들과의 조합
    • 비동기를 지원하지 않는 함수에서 발생한 예외 처리 실패
    • 동기/비동기를 함께 지원하는 함수의 필요성
    • 정리
  • 부록. 클래스 없이 코딩하기

    • 나머지 매개변수와 전개 연산자, 그리고 부분 적용
    • 장바구니
    • 정리
  • 부록. 깊은 값 조회

    • 복잡한 값을 조회할 때 중간에 nullable을 만나도 에러 피하기
    • key를 알 수 없을 때, {} # function object로 조회하기
  • [부록. 메모이제이션]

    • 예정
  • [부록. 튜플]

    • 예정
  • [부록. 템플릿 리터럴]

    • 예정
  • [...]

    • 예정
  • [...]

    • 예정
  • 부록. 질문 답변

    • 이슈에 올라오거나 개인적으로 오는 질문 계속 추가할 예정입니다.
  • API

    • 진행 중

About

ES6+, 함수형 프로그래밍, 비동기, 동시성 프로그래밍

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

  • HTML 72.3%
  • JavaScript 26.6%
  • CSS 1.1%

AltStyle によって変換されたページ (->オリジナル) /