◈이책에서다루는내용◈
◆코틀린언어를꼭필요한기초적인내용과기초위에쌓아올려야하는지식으로나눠설명
◆함수오버로드처리규칙등코틀린언어의미묘한세부사항을언어명세를참조해자세히설명
◆형식화문자열등실무에서필요한내용을설명
◆자세한컬렉션라이브러리함수설명과예제
◆2023년코틀린최신버전(1.8)대응
◈이책의대상독자◈
◆코틀린을자세히알고싶은프로그래머
◆코틀린을배웠지만기초를더다지고싶은코틀린프로그래머
◆코틀린언어자체가궁금할때찾아볼수있는참고서가필요한개발자
◈이책의구성◈
1장,‘코틀린시작하기’에서는우선코틀린언어의개요를소개하고개발환경을설정하는방법을설명한다.이어지는1부,‘코틀린퀵스타트’에서는코틀린언어요소중프로그램을작성할때꼭필요한필수개념을다룬다.1부를잘읽고언어기본요소를이해해야만코틀린코드를작성할수있고2부내용을학습하기위한준비를마칠수있다.1부의각장은다음과같다.
2장,‘프로그램을이루는기본단위:변수와식,문’에서는코틀린프로그램의기본요소를이루는식,값,타입,변수와기본제어구조인if,when,for,while,do...while,break,continue를다룬다.
3장,‘함수’에서는함수,지역변수및지역함수,영역규칙,익명함수,람다,클로저를다루고,다양한파라미터지정방법을설명한다.
4장,‘클래스와객체’에서는객체지향의기초를다룬다.클래스,상속,추상클래스,인터페이스,프로퍼티를설명한다.
5장,‘예외처리’에서는예외처리를다룬다.프로그램에서실패를처리하는방법을설명하고,코틀린의예외처리방법인try,catch,finally를설명한다.또한use()멤버함수를사용해자동해제가가능한타입을활용하는방법도다룬다.
6장,‘제네릭스’에서는타입을파라미터로받아새로운타입(클래스/인터페이스)이나함수를만들어내는방법인제네릭스를살펴본다.제네릭스의개념,코틀린에서타입파라미터가포함된클래스,인터페이스,함수를선언하는방법,타입바운드,선언지점변성,사용지점변성을설명한다.
7장,‘널가능성’에서는널가능성을코틀린에서처리하는방법을다룬다.널가능성이왜필요한지살펴보고,널이될수있는타입,스마트캐스트,is및as연산,엘비스연산자(?:),안전한호출연산자(?.),널아님단언연산자(!!)를설명한다.
8장,‘패키지와임포트’에서는패키지를선언하는방법과패키지멤버를임포트해사용하는방법,임포트시새로운이름을지정해이름충돌을막는방법을소개한다.코틀린이기본적으로임포트해줘서별도로임포트하지않아도되는패키지들도설명한다.
9장,‘코틀린컬렉션기초’에서는코틀린으로개발을진행할때가장자주접하게될기초라이브러리인코틀린컬렉션을설명한다.
10장,‘변수선언과기본타입자세히살펴보기’에서는기본타입을자세히살펴보고,문자열이스케이프,유니코드,변수이름충돌을설명한다.그후lateinitvar와constval,연산자우선순위와함께모든코틀린연산자를상세히다룬다.마지막으로는로우(raw)문자열과문자열조작함수를설명한다.
11장,‘제어구조자세히살펴보기’에서는제어구조를더자세히다루고,범위와순열을설명한후break와continue에서레이블을사용하는방법을살펴본다.
12장,‘함수자세히살펴보기’에서는함수와관련된더자세한내용을살펴본다.코틀린연산자가어떤연산자함수와연결되는지자세히설명하고,확장함수와프로퍼티를살펴본다.이어서함수오버로드해소규칙을설명하고(다소어려운내용이다),파라미터에서코틀린영역규칙이적용되는방식과재귀함수및꼬리재귀함수를정의하는방법을다룬다.마지막으로는인라인함수를설명한다.
13장,‘객체지향자세히살펴보기’에서는객체지향과관련해코틀린이제공하는여러가지기능을살펴본다.object를사용해싱글턴객체를선언하는방법,동반객체,데이터클래스,이넘클래스,값클래스(또는인라인클래스),봉인된클래스,부생성자,가시성지정자,인터페이스구현위임과프로퍼티위임,타입별명을설명한다.
14장,‘제네릭스2’에서는스타프로젝션,타입소거,reified타입파라미터를설명하고,영역함수를다룬다.
15장,‘컬렉션2’에서는9장에서배운여러컬렉션이공통으로제공하는다양한함수를유형별로설명한다.9장에서다룬함수들외에zip(),partition(),take(),drop(),windowed(),chunked(),associate(),groupBy()등을설명하고groupBy()와관련있는Grouping클래스를살펴본다음,fold(),groupBy()등을한꺼번에처리할수있는더일반적인함수인aggregate()와그외여러가지함수를설명한다.마지막으로는컬렉션을지연처리할수있는시퀀스를살펴본다.
각장에서개념을설명하고난후에는직전에배운내용을간단하게스스로검토해보도록익힘문제를제시하며,각장의끝에는해당장의내용을정리하는데도움이되는연습문제가있다.이문제들을풀면서배운내용을정리하고내재화하길바란다.