책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 프로그래밍 기초/개발 방법론
· ISBN : 9791161757810
· 쪽수 : 396쪽
· 출판일 : 2023-08-31
책 소개
목차
1부 ― 고전 패턴
1장. 코틀린 시작하기
__기술적 요구 사항
__기초 문법과 기능
____다중 패러다임 언어
__코틀린 코드 구조 이해하기
____명명 관례
____패키지
____주석
____Hello Kotlin
__타입 이해하기
____기본 타입
____타입 추론
____값
____비교와 동등성
____함수 선언
__null 안전성
__코틀린 자료 구조 복습
____리스트
____세트
____맵
____가변성
____집합 자료 구조의 다른 구현체
____배열
__제어 흐름
____if 조건식
____when 조건식
__텍스트 다루기
____문자열 보간
____여러 줄 문자열
__반복문
____for-in 반복문
____for 반복문
____while 반복문
__클래스와 상속
____클래스
____인터페이스
____추상 클래스
____접근 제한자
____상속
____데이터 클래스
__확장 함수
__디자인 패턴 소개
____디자인 패턴이란?
____코틀린에서 디자인 패턴을 사용하는 이유
__요약
__질문
2장. 생성 패턴 사용하기
__기술적 요구 사항
__싱글톤 패턴
__팩토리 메서드 패턴
____정적 팩토리 메서드
__추상 팩토리 패턴
____캐스팅
____하위 클래스 생성
____스마트 캐스팅
____변수 가리기
____팩토리 메서드의 모음
__빌더 패턴
____유창한 설정자
____기본 인수
__프로토타입 패턴
____프로토타입에서 시작하기
__요약
__질문
3장. 구조 패턴 이해하기
__기술적 요구 사항
__데코레이터 패턴
____클래스에 기능 추가하기
____엘비스 연산자
____상속의 문제점
____연산자 오버로딩
____데코레이터 패턴 사용 시 주의할 점
__어댑터 패턴
____기존 코드에 어댑터 패턴 적용
____실제 코드에서 사용되는 어댑터 패턴
____어댑터 패턴 사용 시 주의할 점
__브리지 패턴
____변경 사항에 다리 놓기
____타입 별칭
____상수
__합성 패턴
____부 생성자
____varargs 키워드
____합성 객체로 이뤄진 합성 객체 중첩하기
__퍼사드 패턴
__경량 패턴
____보수적으로 접근하기
____메모리 절약하기
____경량 패턴 사용 시 주의 사항
__프록시 패턴
____lazy 위임 함수
__요약
__질문
4장. 동작 패턴과 친해지기
__기술적 요구 사항
__전략 패턴
____과일 무기 구현하기
____일급 객체로서의 함수
__반복자 패턴
__상태 패턴
____상태 패턴의 50가지 그림자
____큰 규모의 상태 패턴
__명령 패턴
____명령 실행 취소
__책임 사슬 패턴
__해석기 패턴
____도메인 특화 언어
____나만의 언어 만들기
____접미 호출
__중개인 패턴
____중개인
____중개인 패턴의 두 가지 유형
____중개인 패턴 사용 시 주의 사항
__기억 패턴
__방문자 패턴
____크롤러 작성하기
__템플릿 메서드 패턴
__관찰자 패턴
____예제: 동물 합창단
__요약
__질문
2부 ― 반응형 패턴과 동시성 패턴
5장. 함수형 프로그래밍 소개
__기술적 요구 사항
__함수형 프로그래밍을 사용하는 이유
__불변성
____불변 자료 구조
____공유된 가변 상태의 문제점
____튜플
__값으로서의 함수
____고차 함수
____표준 라이브러리에서 고차 함수 사용하기
__it 표기법
____클로저
____순수 함수
____커리
____메모이제이션
__문 대신 식 사용하기
____패턴 매칭
__재귀 호출
__요약
__질문
6장. 스레드와 코루틴
__기술적 요구 사항
__스레드 심화
____스레드 안전성
____왜 스레드는 값비싼가?
__코루틴 소개
____코루틴 시작하기
____작업
____코루틴의 내부 동작 이해하기
____타임아웃 설정하기
____분배기
____구조화된 동시성
__요약
__질문
7장. 데이터 흐름 제어
__기술적 요구 사항
__반응형 프로그래밍의 원칙
____응답성 원칙
____회복성 원칙
____유연성 원칙
____메시지 주도 원칙
__집합 자료 구조를 위한 고차 함수
____원소 매핑
____원소 필터링
____원소 검색
____각 원소에 대해 코드 실행
____원소의 총합
____중첩 제거
__동시성 자료 구조 소개
____순서열
____채널
____흐름
__요약
__질문
8장. 동시성을 위한 설계
__기술적 요구 사항
__값 지연 패턴
__장벽 패턴
____데이터 클래스를 장벽으로 사용하기
__스케줄러 패턴
____스케줄러 직접 만들기
__파이프라인 패턴
____파이프라인 연결하기
__팬아웃 패턴
__팬인 패턴
__경주 패턴
____비편향 select
__뮤텍스 패턴
__사이드킥 채널 패턴
__요약
__질문
3부 ― 디자인 패턴 활용의 실제
9장. 관용구와 안티 패턴
__기술적 요구 사항
__시야 지정 함수 사용하기
____let 함수
____apply 함수
____also 함수
____run 함수
____with 함수
__타입 검사와 캐스팅
__try-with-resources 문의 대안
__인라인 함수
__대수적 자료형 구현하기
__제네릭에서 타입 실체화
__상수 효율적으로 사용하기
__생성자 오버로딩
__null 다루기
__동시성을 명시적으로 나타내기
__입력 유효성 검사하기
__열거형 대신 봉인 클래스 사용하기
__요약
__질문
10장. Ktor를 이용한 동시성 마이크로서비스
__기술적 요구 사항
__Ktor 시작하기
__요청 라우팅
__서비스 테스트하기
__애플리케이션 모듈화
__데이터베이스 연결하기
__엔티티 생성하기
__일관성 있는 테스트 만들기
__엔티티 조회하기
__Ktor에서 라우팅 구조화하기
__Ktor의 동시성
__요약
__질문
11장. Vert.x를 이용한 반응형 마이크로서비스
__기술적 요구 사항
__Vert.x 시작하기
__Vert.x에서 라우팅 구현하기
__버티클
__요청 처리하기
____서브라우터 사용하기
__Vert.x 애플리케이션 테스트하기
__데이터베이스 다루기
____설정 관리하기
__이벤트 루프 이해하기
__이벤트 버스와 통신하기
____이벤트 버스로 JSON 보내기
__요약
__질문
정답과 해설