추천 검색어

최근 검색어

도서 IT전문서/IT입문서 프로그래밍/오픈소스
코틀린답게 코딩하자! 코틀린을 다루는 기술
정 가
36,000원
출 간
2020-03-25
지 은 이
피에르이브쏘몽
옮 긴 이
오현석
I S B N
9791165210960
분 량
648쪽
난 이 도
초급,중급

코틀린은 자바와 부드럽게 연동되는 우아한 JVM 언어로, 구글은 2019년부터 안드로이드에서 최우선 언어로 코틀린을 채택했다.

이 책은 이해하기 쉽고 유지 보수하기 편하며 안전한 프로그램을 코틀린으로 작성하는 법을 가르쳐준다. 함수형 프로그래밍에서 영감을 얻은 다양한 기법을 소개하고 프로그래밍할 때 발생하는 일반적인 문제를 이 기법들로 해결하는 방법을 알려준다. 여러 문제를 해결해 나가는 과정에서 오류와 데이터를 제대로 처리하는 방법, 상태를 관리하는 방법, 지연 계산을 활용하는 방법 등을 배우게 된다. 이 책에 있는 강력한 기법들을 제대로 배우고 나면 코틀린을 깊이 있게 이해하고 현업에서 코틀린을 더 코틀린답게 사용할 수 있을 것이다.


 

 

1장 프로그램을 더 안전하게 만들기

1.1 프로그래밍의 함정

1.2 안전한 프로그래밍의 이점

1.3 요약

 

2장 코틀린 프로그래밍의 개요

2.1 필드와 변수

2.2 클래스와 인터페이스

2.3 원시 타입이 없음

2.4 컬렉션의 두 유형

2.5 패키지

2.6 가시성

2.7 함수

2.8

2.9 프로그램 흐름과 제어 구조

2.10 비검사 예외

2.11 사용한 자원 자동으로 닫기

2.12 스마트 캐스트

2.13 동등성과 동일성

2.14 문자열 인터폴레이션

2.15 여러 줄 문자열

2.16 변성: 파라미터화한 타입과 하위 타입

2.17 요약

 

3장 함수로 프로그래밍하기

3.1 함수란 무엇인가

3.2 코틀린 함수

3.3 고급 함수 기능

3.4 요약

 

4장 재귀, 공재귀, 메모화

4.1 공재귀와 재귀

4.2 꼬리 호출 제거

4.3 재귀 함수와 리스트

4.4 메모화

4.5 메모화한 함수는 순수 함수인가

4.6 요약

 

5장 리스트로 데이터 처리하기

5.1 데이터 컬렉션을 분류하는 방법

5.2 리스트의 여러 유형

5.3 리스트의 상대적 예상 성능

5.4 코틀린에서 사용할 수 있는 리스트의 종류

5.5 리스트 연산에서 데이터 공유하기

5.6 다른 리스트 연산들

5.7 요약

 

6장 선택적 데이터 처리하기

6.1 널 포인터의 문제점

6.2 코틀린이 널 참조를 처리하는 방식

6.3 널 참조에 대한 대안

6.4 Option 타입 사용하기

6.5 요약

 

7장 오류와 예외 처리하기

7.1 데이터가 없는 경우와 관련한 문제점

7.2 Either 타입

7.3 Result 타입

7.4 Result 패턴

7.5 고급 Result 처리

7.6 실패 매핑하기

7.7 팩터리 함수 추가하기

7.8 효과 적용하기

7.9 고급 Result 합성

7.10 요약

 

8장 고급 리스트 처리

8.1 length의 단점

8.2 성능 문제

8.3 메모화의 이점

8.4 List Result의 합성

8.5 리스트에 대한 일반적인 추상화

8.6 리스트를 자동으로 병렬 처리하기

8.7 요약

 

9장 지연 계산 사용하기

9.1 즉시 계산과 지연 계산

9.2 코틀린과 즉시 계산

9.3 코틀린과 지연 계산

9.4 지연 계산 구현

9.5 추가 지연 합성

9.6 스트림 처리하기

9.7 요약

 

10장 트리를 사용한 데이터 처리

10.1 이진 트리

10.2 균형 트리와 불균형 트리 이해하기

10.3 트리의 크기, 높이, 깊이 살펴보기

10.4 빈 트리와 트리의 재귀적 정의

10.5 잎 트리

10.6 순서가 있는 이진 트리와 이진 검색 트리

10.7 삽입 순서와 트리의 구조

10.8 재귀적 트리 순회 순서와 비재귀적 트리 순회 순서

10.9 이진 검색 트리 구현

10.10 트리 접기에 대해

10.11 트리 매핑하기

10.12 균형 트리 다루기

10.13 요약

 

11장 고급 트리를 활용해 문제 해결하기

11.1 자체 균형 트리의 스택 안전성 및 성능 높이기

11.2 레드-블랙 트리의 활용:

11.3 함수형 우선순위 큐 구현하기

11.4 원소와 정렬한 리스트

11.5 비교 불가능한 원소에 대한 우선순위 큐

11.6 요약

 

12장 함수형 입출력

12.1 부수 효과를 컨텍스트 안에 가둔다는 것은 무슨 뜻인가

12.2 데이터 읽기

12.3 입력 테스트하기

12.4 완전히 함수형인 입출력

12.5 요약

 

13장 액터로 상태 변이 공유하기

13.1 액터 모델

13.2 액터 프레임워크 구현하기

13.3 AbstractActor 구현

13.4 액터가 행동하게 만들기

13.5 요약

 

14장 자주 일어나는 문제를 함수형으로 해결하기

14.1 단언문과 데이터 검증

14.2 함수와 효과 재시도하기

14.3 파일에서 프로퍼티 읽기

14.4 명령형 프로그램 변환하기: XML 리더

14.5 요약

 

부록A 코틀린과 자바 함께 쓰기

A.1 혼합 프로젝트를 만들고 관리하기

A.2 자바 라이브러리 메서드와 코틀린 코드

A.3 SAM 인터페이스

A.4 코틀린 함수와 자바 코드

A.5 코틀린/자바 혼합 프로젝트에서만 발생하는 문제

A.6 요약

 

부록B 코틀린에서 속성 기반 테스트하기

B.1 속성 기반 테스트를 사용해야 하는 이유는 무엇인가

B.2 속성 기반 테스트는 무엇인가

B.3 추상화와 속성 기반 테스트

B.4 속성 기반 단위 테스트의 의존 관계

B.5 속성 기반 테스트 작성하기

B.6 요약


 

ㆍ지은이 피에르이브쏘몽
지은이 소개
30년 동안 엔터프라이즈 소프트웨어를 설계 및 구축한 자바 개발자다. 현재 ASN(Alcatel Submarine Networks)의 R&D 엔지니어로 일하고 있으며, 〈Functional Programming in Java〉(매닝, 2017)를 집필했다.

ㆍ옮긴이 오현석
옮긴이 소개
모빌리티42(Mobility42) 이사로 일하면서 매일매일 고객의 요청에 따라 코드를 만들어내고 있는 현업 개발자다. 『코어 파이썬 애플리케이션 프로그래밍Core Python Applications Programming Third Edition』(에이콘출판, 2014)을 시작으로 『Kotlin in Action』(에이콘출판, 2017), 『한 권으로 읽는 컴퓨터 구조와 프로그래밍』(책만, 2021), 『파이썬으로 살펴보는 아키텍처 패턴』(한빛미디어, 2021), 『Programming in Scala 4/e』(에이콘출판, 2021) 등 30여 권의 책을 번역했다.

필요한 자료를 선택하세요.

추천도서