확장메뉴
주요메뉴


닫기
사이즈 비교
소득공제 강력추천
코틀린으로 배우는 함수형 프로그래밍

코틀린으로 배우는 함수형 프로그래밍

첫번째 리뷰어가 되어주세요 | 판매지수 1,044
베스트
IT 모바일 top100 4주
분철서비스 시작 시 알려드립니다. 분철서비스 알림신청

품목정보

품목정보
발행일 2019년 12월 20일
쪽수, 무게, 크기 328쪽 | 188*240*30mm
ISBN13 9788966262557
ISBN10 8966262554

이 상품의 태그

모던 자바 인 액션

모던 자바 인 액션

30,600 (10%)

'모던 자바 인 액션' 상세페이지 이동

스위프트 프로그래밍

스위프트 프로그래밍

28,800 (10%)

'스위프트 프로그래밍 ' 상세페이지 이동

모던 자바스크립트 입문

모던 자바스크립트 입문

28,800 (10%)

'모던 자바스크립트 입문 ' 상세페이지 이동

함수형 자바스크립트

함수형 자바스크립트

24,300 (10%)

'함수형 자바스크립트' 상세페이지 이동

함수형 자바스크립트 프로그래밍

함수형 자바스크립트 프로그래밍

26,100 (10%)

'함수형 자바스크립트 프로그래밍' 상세페이지 이동

인공지능 100점을 위한 파이썬 수학

인공지능 100점을 위한 파이썬 수학

21,600 (10%)

'인공지능 100점을 위한 파이썬 수학' 상세페이지 이동

스무디 한 잔 마시며 끝내는 리액트+TDD

스무디 한 잔 마시며 끝내는 리액트+TDD

28,800 (10%)

'스무디 한 잔 마시며 끝내는 리액트+TDD' 상세페이지 이동

모던 C++로 배우는 함수형 프로그래밍

모던 C++로 배우는 함수형 프로그래밍

27,000 (10%)

'모던 C++로 배우는 함수형 프로그래밍' 상세페이지 이동

Go로 배우는 함수형 프로그래밍

Go로 배우는 함수형 프로그래밍

36,000 (10%)

'Go로 배우는 함수형 프로그래밍' 상세페이지 이동

Functional C#

Functional C#

27,000 (10%)

'Functional C#' 상세페이지 이동

코틀린으로 배우는 함수형 프로그래밍

코틀린으로 배우는 함수형 프로그래밍

22,500 (10%)

'코틀린으로 배우는 함수형 프로그래밍' 상세페이지 이동

순수 함수형 데이터 구조

순수 함수형 데이터 구조

31,500 (10%)

'순수 함수형 데이터 구조' 상세페이지 이동

Functional Programming in C++

Functional Programming in C++

31,500 (10%)

'Functional Programming in C++ ' 상세페이지 이동

함수형 코틀린

함수형 코틀린

27,000 (10%)

'함수형 코틀린' 상세페이지 이동

러닝 리액트

러닝 리액트

25,200 (10%)

'러닝 리액트' 상세페이지 이동

책소개 책소개 보이기/감추기

목차 목차 보이기/감추기

1장 함수형 프로그래밍이란?

1.1 함수형 프로그래밍의 특징
1.2 순수한 함수란 무엇인가?
____동일 입력 동일 출력
____부수효과 없는 코드
____순수한 함수의 효과와 그외 고려사항
1.3 부수효과 없는 프로그램 작성하기
____공유 변수 수정으로 인한 부수효과
____객체의 상태 변경으로 인한 부수효과
1.4 참조 투명성으로 프로그램을 더 안전하게 만들기
____참조 투명하지 않은 함수
____참조 투명한 함수
1.5 일급 함수란?
____일급 객체(first-class object)
____일급 함수(first-class function)
1.6 일급 함수를 이용한 추상화와 재사용성 높이기
____간단한 계산기 예제
____객체지향적으로 개선한 계산기 예제
____함수형 프로그래밍 방식으로 개선한 계산기 예제
1.7 게으른 평가로 무한 자료구조 만들기
____무한대 값을 자료구조에 담다
1.8 마치며
____코틀린으로 함수형 프로그래밍 시작하기

2장

2.1 프로퍼티 선언과 안전한 널 처리
____프로퍼티 선언
____안전한 널 처리
2.2 함수와 람다
____함수를 선언하는 다양한 방법
____매개변수에 디폴트값 설정하기
____익명 함수와 람다 표현식
____확장 함수
2.3 제어 구문
____if문
____when문
____for문
2.4 인터페이스
____인터페이스의 특징
____인터페이스 선언하고 상속하기
____인터페이스에 추상 함수 선언하기
____추상 함수 구현하기
____추상 프로퍼티의 선언과 사용
2.5 클래스
____클래스와 프로퍼티
____data 클래스
____enum 클래스
____sealed 클래스
2.6 패턴 매칭
____다양한 패턴 정의 방법
____조건에 따른 패턴 매칭
____코틀린 패턴 매칭의 제약
2.7 객체 분해
2.8 컬렉션
____리스트와 세트
____맵
2.9 제네릭
____제네릭 함수 선언
2.10 코틀린 표준 라이브러리
____let 함수
____with 함수
____run 함수
____apply 함수
____also 함수
____let, with, run, apply, also 함수 비교
____use 함수
2.11 변성
____무공변의 의미와 예
____공변의 의미와 예
____반공변의 의미와 예
____in, out으로 변성 선언하기
2.12 마치며

3장 재귀

3.1 함수형 프로그래밍에서 재귀가 가지는 의미
____피보나치 수열을 명령형 프로그래밍으로 구현한 예제
____피보나치 수열을 재귀로 구현한 예제
____함수형 프로그래밍에서 재귀
3.2 재귀를 설계하는 방법
____재귀 함수 설계 방법
____재귀가 수행되는 흐름 관찰해 보기
____재귀 함수 설계 방법을 사용하여 코드를 구현하기
3.3 재귀에 익숙해지기
____reverse 함수 예제
____take 함수 예제
____repeat 함수 예제
____zip 함수 예제
3.4 메모이제이션으로 성능 개선하기
____재귀적인 방식의 피보나치 수열 예제
____메모이제이션을 사용한 피보나치 수열 예제
____재귀의 문제점을 함수적으로 해결하기
3.5 꼬리 재귀로 최적화하기
____꼬리 재귀 최적화란?
____maximum 함수를 꼬리 재귀로 다시 작성하기
____reverse 함수 꼬리 재귀로 다시 작성하기
____take 함수를 꼬리 재귀로 다시 작성하기
____zip 함수를 꼬리 재귀로 다시 작성하기
3.6 상호 재귀를 꼬리 재귀로 최적화하기
____상호 재귀
____트램펄린
3.7 실전 응용
____멱집합을 구하는 함수
3.8 마치며

4장 고차 함수

4.1 고차 함수란?
____고차 함수 조건을 만족하는 예
____코드의 재사용성을 높인다
____기능의 확장이 쉽다
____코드를 간결하게 작성할 수 있다
4.2 부분 함수
____부분 함수의 예
____부분 함수 만들기
____부분 함수의 필요성
4.3 부분 적용 함수
4.4 커링 함수
____코틀린용 커링 함수 추상화하기
4.5 합성 함수
____함수 합성 일반화하기
____포인트 프리 스타일 프로그래밍
____하나 이상의 매개변수를 받는 함수의 합성
4.6 실전 응용
____zipWith 함수
____콜백 리스너를 고차 함수로 대체하기
4.7 마치며

5장 컬렉션으로 데이터 다루기

5.1 함수형 컬렉션의 데이터 처리
____간단한 리스트 자료구조 만들기
____addHead 함수 만들기
____appendTail 함수 만들기
____꼬리 재귀로 작성한 appendTail 함수의 시간 복잡도
____getTail 함수 만들기
5.2 컬렉션 데이터 걸러 내기
____명령형 방식 vs. 함수형 방식
____filter 함수 만들기
5.3 컬렉션 데이터 변경하기
____명령형 방식 vs. 함수형 방식
____map 함수 만들기
5.4 컬렉션 데이터 단계별로 줄이기
____foldLeft 함수 만들기
____foldLeft 함수 사용하기
____foldLeft 함수로 toUpper 함수 작성하기
____foldRight 함수 만들기
____foldLeft vs. foldRight
5.5 여러 컬렉션 데이터 합치기
____zipWith 함수 만들기
5.6 코틀린 리스트를 사용한 명령형 방식과 함수형 방식 비교
____명령형 방식과 함수형 방식의 기능 비교
____명령형 방식과 함수형 방식의 성능 비교
5.7 게으른 컬렉션 FunStream
____FunList vs. FunStream 선언 방법 비교
____FunList vs. FunStream 성능 비교
____FunStream으로 무한대 값 만들기
5.8 실전 응용
____FunList에 printFunList 함수 추가하기
5.9 마치며

6장 함수형 타입 시스템

6.1 타입 시스템
____타입 시스템의 종류와 특징
____함수형 언어의 정적 타입 시스템
6.2 대수적 데이터 타입
____곱 타입의 예와 한계
____합 타입 사용한 OR 결합
____함수형 프로그래밍에서의 대수적 데이터 타입
6.3 타입의 구성요소
____타입 변수
____값 생성자
____타입 생성자와 타입 매개변수
6.4 행위를 가진 타입 정의하기
____인터페이스 vs. 트레이트 vs. 추상 클래스 vs. 믹스인
____타입 클래스와 타입 클래스의 인스턴스 선언하기
6.5 재귀적 자료구조
6.6 실전 응용
____대수적 합 타입의 장점
6.7 마치며

7장 펑터

7.1 펑터란?
____펑터 선언하기
7.2 메이비 펑터 만들기
7.3 트리 펑터 만들기
7.4 이더 펑터 만들기
7.5 단항 함수 펑터 만들기
7.6 펑터의 법칙
____펑터 제1 법칙
____펑터 제2 법칙
____펑터의 법칙을 만족하지 못하는 펑터 인스턴스의 예
7.7 실전 응용
____매개변수가 한 개 이상인 함수로 매핑하기
7.8 마치며

8장 애플리케이티브 펑터
8.1 애플리케이티브 펑터란?
____애플리케이티브 펑터의 정의
____애플리케이티브 펑터 타입 클래스
8.2 메이비 애플리케이티브 펑터 만들기
____메이비 애플리케이티브 펑터 사용해 보기
____애플리케이티브 스타일
____확장 함수를 사용한 메이비 애플리케이티브 펑터 만들기
8.3 트리 애플리케이티브 펑터 만들기
____일반 트리 펑터 만들기
____애플리케이티브 펑터로 확장하기
8.4 이더 애플리케이티브 펑터 만들기
8.5 애플리케이티브 펑터의 법칙
____항등(Identity) 법칙
____합성(Composition) 법칙
____준동형 사상(Homomorphism) 법칙
____교환(Interchange) 법칙
____펑터와 애플리케이티브 펑터 간의 관계
8.6 실전 응용
____liftA2 함수 만들기
____sequenceA 함수 만들기
8.7 마치며

9장 모노이드

9.1 모노이드란?
9.2 모노이드 타입 클래스
____간단한 모노이드 타입 클래스 선언
____모노이드의 법칙
____mconcat 함수 만들기
9.3 메이비 모노이드 만들기
____메이비 모노이드 검증하기
9.4 폴더블 바이너리 트리에 foldMap 함수 만들기
____foldMap 함수
____폴더블 바이너리 트리 만들기
9.5 실전 응용
____바이너리 트리 내에 특정 값이 존재하는지 확인하기
____foldMap을 사용하여 바이너리 트리를 리스트로 바꾸기
9.6 마치며

10장 모나드

10.1 모나드 타입 클래스
10.2 메이비 모나드
____메이비 모나드 활용
10.3 모나드 법칙
____왼쪽 항등(left identity) 법칙
____오른쪽 항등(right identity) 법칙
____결합(associativity) 법칙
____함수 합성 관점에서의 모나드 법칙
10.4 IO 모나드
____입출력 작업이 외부와 분리되지 않은 예
____입출력 작업이 외부와 분리된 예
10.5 리스트 모나드
____FunList 기본 골격 선언하기
____리스트 생성 함수 및 출력 함수 만들기
____리스트 모노이드로 만들기
____fmap 함수 구현하기
____pure와 apply 함수 구현하기
____flatMap 함수 구현하기
10.6 실전 응용
____리스트 생성하기
____두 리스트의 모든 조합의 튜플 리스트 만들기
____리스트의 문자를 대문자로 변환하기
____리스트의 값에 함수 적용하기
____중복 문자 제거하기
____리스트 구성요소 뒤집기
10.7 마치며

11장 로깅, 예외처리, 테스팅, 디버깅

11.1 함수형 프로그래밍에서 로깅하기
____명령형 프로그래밍에서의 로깅
____함수형 프로그래밍에서의 로깅
____확장 함수를 사용해서 개선하기
____라이터 모나드 만들기
11.2 함수형 프로그래밍에서 예외처리하기
____널값이나 -1을 사용한 예외처리
____메이비 모나드를 사용한 예외처리
____이더 모나드를 사용한 예외처리
____트라이 모나드를 사용한 예외처리
11.3 함수형 프로그래밍에서 테스팅하기
____테스트하기 좋은 코드 만들기
____순수한 함수 테스트하기
____부수효과가 존재하는 함수 테스트하기
11.4 함수형 프로그래밍에서 디버깅하기
____디버깅 팁과 도구
____인텔리제이를 활용한 리스트 체인 디버깅
____인텔리제이를 활용한 시퀀스 체인 디버깅
11.5 마치며

한줄평 (3건) 한줄평 총점 4.0

혜택 및 유의사항 ?
구매 평점2점
예를들어 스프링부트로 쇼핑몰을 함수형스타일로 개발하는 것을 실전급 성능으로 만들어가는
2명이 이 한줄평을 추천합니다. 공감 2
B**g | 2021.01.02
구매 평점2점
표준 함수형 컬렉션이 언어에 내장되고, 실전 경험에 대한 책이 필요하다
이 한줄평이 도움이 되었나요? 공감 0
B**g | 2021.01.02
구매 평점2점
함수형 대중화를 막는 또 하나의 책이다. 자기들 스터디 한것에 대한 정리글.
1명이 이 한줄평을 추천합니다. 공감 1
B**g | 2021.01.02
  •  쿠폰은 결제 시 적용해 주세요.
1   22,500
뒤로 앞으로 맨위로 공유하기