본문내용 바로가기
인터넷교보문고22주년

KYOBO 교보문고

40th 40th  생일파티
금/토/일 주말특가
40주년 생일파티 한정판 굿즈
[이북]매일 500원 북돋움캐시
부키 샘으로보기
  • 손글씨스타
  • 교보 손글씨 2019 폰트
  • 손글씨풍경
  • 교보아트스페이스
  • 교보손글쓰기대회
코틀린으로 배우는 함수형 프로그래밍
* 중고장터 판매상품은 판매자가 직접 등록/판매하는 상품으로 판매자가 해당상품과 내용에 모든 책임을 집니다. 우측의 제품상태와 하단의 상품상세를 꼭 확인하신 후 구입해주시기 바랍니다.
| | 187*240*24mm
ISBN-10 : 8966262554
ISBN-13 : 9788966262557
코틀린으로 배우는 함수형 프로그래밍 중고
저자 조재용 | 출판사 인사이트
정가
25,000원 신간
판매가
20,990원 [16%↓, 4,010원 할인]
배송비
2,500원 (판매자 직접배송)
지금 주문하시면 2일 이내 출고 가능합니다.
토/일, 공휴일을 제외한 영업일 기준으로 배송이 진행됩니다.
2019년 12월 20일 출간
제품상태
상태 최상 외형 최상 내형 최상
이 상품 최저가
20,990원 다른가격더보기
  • 20,990원 책책북북 특급셀러 상태 최상 외형 최상 내형 최상
새 상품
22,500원 [10%↓, 2,500원 할인] 새상품 바로가기
수량추가 수량빼기
안내 :

중고장터에 등록된 판매 상품과 제품의 상태는 개별 오픈마켓 판매자들이 등록, 판매하는 것으로 중개 시스템만을 제공하는
인터넷 교보문고에서는 해당 상품과 내용에 대해 일체 책임을 지지 않습니다.

교보문고 결제시스템을 이용하지 않은 직거래로 인한 피해 발생시, 교보문고는 일체의 책임을 지지 않습니다.

판매자 상품 소개

※ 해당 상품은 교보문고에서 제공하는 정보를 활용하여 안내하는 상품으로제품 상태를 반드시 확인하신 후 구입하여주시기 바랍니다.

판매자 배송 정책

  • 토/일, 공휴일을 제외한 영업일 기준으로 배송이 진행됩니다.

더보기

구매후기 목록
NO 구매후기 구매만족도 ID 등록일
86 rmfjseofj rhosg ckstmqslek 5점 만점에 5점 jnl*** 2020.09.18
85 깨끗한책 잘 받았습니다. 5점 만점에 5점 ican7*** 2020.09.17
84 배송 속도, 포장 만족합니다. 5점 만점에 5점 csc7*** 2020.09.08
83 하루만에 도착했어요! 감사합니다:) 5점 만점에 5점 tldkqh*** 2020.09.07
82 상태도 매우 좋고 새책같아요 5점 만점에 5점 apfhel*** 2020.09.04

이 책의 시리즈

책 소개

상품구성 목록
상품구성 목록

차세대 언어 코틀린을 이용해
실전에서 활용할 수 있는 함수형 코드를 설계한다! 어렵게만 느껴지는 함수형 개념을 충실히 설명하여, 실전에서 활용할 수 있는 지식이 될 수 있도록 한 책이다. 다양한 모범 예제를 보여주며, 배운 내용을 바로 활용해 볼 수 있는 실전응용 문제를 제시해 함수형 프로그래밍을 체득할 수 있게 해 준다.
이 책은 함수형 프로그래밍을 멀티 패러다임 언어인 코틀린으로 다룬다. 따라서 순수 함수형이 아닌 언어로 함수형 프로그래밍을 할 때의 시행착오와 대처법도 다루는데, 순수 함수형 언어를 실전에서 쓰는 경우가 드문 점을 감안하면 실질적으로 많은 도움이 될 것이다.
코틀린은 함수적 특징과 함께 객체지향 프로그래밍도 가능하도록 설계되어 있기 때문에 필요에 따라 명령형ㆍ 객체지향형ㆍ 함수형 예제를 비교하며 보였다.
또한 언어가 제공하는 함수적인 기능을 단순히 사용해 보는 것을 넘어 고차 함수, 함수적 자료구조, 타입 등을 직접 만들어 볼 수 있게 구성하였으므로, 함수형 라이브러리를 만들어서 제공할 수 있는 수준까지 전진할 수 있을 것이다.

저자소개

저자 : 조재용
항상 새로운 도전을 즐기며, 소프트웨어 구루를 꿈꾸는 뼈발자다. 삼성 SDS에서 커널 및 드라이버 엔지니어로 개발 일을 시작했다. 그 후 보안 솔루션의 백엔드와 SK 테크엑스에서 AI 플랫폼의 백엔드를 개발했고, 현재 네이버 지도에서 검색 및 데이터 엔지니어로 근무하고 있다.

저자 : 우명인
함수형 프로그래밍에 관심이 많고, 주로 코틀린을 사용해 안드로이드 앱을 개발한다. FunFunStudy라는 함수형 프로그래밍 커뮤니티 겸 스터디 그룹을 운영하고 있고, 배움을 즐기는 개발자다.

목차

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

책 속으로

출판사 서평

책 속 한 문장

회원리뷰

교환/반품안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품안내
반품/교환방법

[판매자 페이지>취소/반품관리>반품요청] 접수
또는 [1:1상담>반품/교환/환불], 고객센터 (1544-1900)

※ 중고도서의 경우 재고가 한정되어 있으므로 교환이 불가할 수 있으며, 해당 상품의 경우 상품에 대한 책임은 판매자에게 있으며 교환/반품 접수 전에 반드시 판매자와 사전 협의를 하여주시기 바랍니다.

반품/교환가능 기간

변심반품의 경우 수령 후 7일 이내, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

※ 중고도서의 경우 판매자와 사전의 협의하여주신 후 교환/반품 접수가 가능합니다.

반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유

소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우(단지 확인을 위한 포장 훼손은 제외)

소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 화장품, 식품, 가전제품 등

복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집

소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)

디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우

시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우

전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품이므로 단순 변심 및 착오로 인한 취소/교환/반품 시 해외주문 반품/취소 수수료 고객 부담 (해외주문 반품/취소 수수료는 판매정가의 20%를 적용

2) 중고도서 : 반품/교환접수없이 반송하거나 우편으로 접수되어 상품 확인이 어려운 경우

소비자 피해보상
환불지연에 따른 배상

- 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨

- 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

판매자
책책북북
판매등급
특급셀러
판매자구분
사업자
구매만족도
5점 만점에 5점
평균 출고일 안내
3일 이내
품절 통보율 안내
35%

바로가기

최근 본 상품