최신 프로그래밍: 코틀린

최신 프로그래밍: 코틀린

$30.88
Description
코틀린 언어를 처음 접할 때 궁금하게 느꼈던 점을 차근차근 설명합니다.
기능을 나열식으로 설명하지 않고,
연관성있는 기능들을 한 데 모았습니다.
기본적인 내용을 이해했다면 부가적인 설명은 온라인 콘텐츠로 제공합니다.
하나를 배우더라도 정확히 이해할 수 있는 발판을 제공합니다.
저자

홍윤식

학력
ㆍ1983.2한양대학교공과대학전자공학과졸업(공학사)
ㆍ1985.2한국과학기술원전기및전자공학과졸업(공학석사)
ㆍ1989.2한국과학기술원전기및전자공학과졸업(공학박사)
주요경력
ㆍ1989.3~91.7LG전자(주)우면연구소선임연구원
ㆍ1991.8~현재인천대학교정보기술대학컴퓨터공학부교수
ㆍ1994.7~95.7미국U.C.IrvineICSDept.방문교수
(한국연구재단post-doc)
ㆍ1998.3~99.12LG정보통신(주)단말연구소SW자문교수쉽게다가가는
ㆍ저서:ASP를이용한웹서버프로그래밍외3권.

목차

머리말 2

1장코틀린기초 10
1.1코틀린설치및실행 12
1.1.1새프로젝트만들기 13
1.1.2IDEA화면구성 16
1.1.3새파일만들기 16
1.1.4실행 17
1.1.5프로젝트구조 18
1.2프로그램구조와라이브러리 20
1.2.1코틀린프로그램구조 20
1.2.2라이브러리 24
1.3변수수식어:val과var 27
1.4데이터타입과추론 30
1.5숫자타입 32
1.6Char-문자타입 36
1.7Boolean-불린타입 39
1.8응용예제-암호화/복호화 40
1.9String-문자열타입 47
1.9.1스트링풀 47
1.9.2원소참조 48
1.9.3String.format() 49
1.9.4문자열템플릿 50
1.9.5평범해보이지만절대평범하지않은String 52
1.10String과CharSequence 55
1.11StringBuilder와StringBuffer 58
1.12타입변환 60
1.13안전호출 63
1.14단정연산자 66
1.15변수범위 67
1.16프로그램메모리영역 70
1.17예외처리 72

2장연산자와흐름제어 75
2.1기본연산자 75
2.2연산자오버로딩 79
2.3조건문:if문 86
2.4조건문:when문 90
2.5반복문 100
2.6범위관련연산 106
2.7실행순서제어 109

3장함수 114
3.1함수정의 114
3.1.1상위레벨함수와멤버함수 115
3.1.2형식인자와실인자 116
3.1.3단일수식을갖는함수 120
3.1.4함수응용 120
3.2함수형프로그래밍 125
3.2.1고차함수 125
3.2.2함수의형식인자로전달할수있는함수종류 127
3.3람다식:기초 133
3.3.1마지막형식인자가람다식일때 135
3.3.2it:람다식의형식인자가하나뿐일때 136
3.3.3람다식의반환값은마지막문장의실행결과 136
3.3.4사용하지않은형식인자는underscore(_)로표시 137
3.4람다식:고급 138
3.5람다식에서return문사용 144
3.6다양한함수들 150
3.6.1익명함수 150
3.6.2확장함수 151
3.6.3인라인함수 152
3.6.4재귀함수 154
3.6.5꼬리재귀함수:tailrec 157
3.6.6중위함수 158

4장클래스160
4.1클래스선언 160
4.2정보은닉과캡슐화 170
4.3클래스속성 176
4.3.1사용자정의getter 177
4.3.2사용자정의setter 178
4.4중첩클래스와내부클래스 180
4.4.1중첩클래스 180
4.4.2내부클래스 181
4.5상속 182
4.6다형성 194
4.7추상클래스와인터페이스 198
4.7.1추상클래스 198
4.7.2인터페이스 201
4.8응용:탐색알고리즘 205
4.8.1깊이우선탐색알고리즘(1) 205
4.8.2깊이우선탐색알고리즘(2) 211
4.8.3너비우선탐색알고리즘 213
4.9속성지연초기화 216
4.9.1var변수의지연초기화:lateinit 216
4.9.2val변수의지연초기화:bylazy 217
4.10위임속성 220
4.10.1위임속성:by위임_객체 221
4.10.2위임자함수:observable()과vetoable() 222
4.10.3위임클래스:by위임_객체 223
4.10.4인터페이스구현위임:by속성 224
4.11object3총사:object의3가지사용법 227
4.11.1object선언:싱글톤 227
4.11.2동반객체 230
4.11.3무명객체 234
4.12클래스의기본메소드재정의 236
4.13data클래스 241
4.13.1data클래스의내부메소드:toString() 241
4.13.2data클래스의내부메소드:equals() 242
4.13.3data클래스의내부메소드:hashCode() 243
4.13.4data클래스의내부메소드:copy() 245
4.13.5data객체의속성참조:componentN() 247
4.13.6data클래스응용 248
4.14enum클래스 250
4.15sealed클래스 253
4.16범위함수 256

5장배열과컬렉션 261
5.1배열 262
5.1.1배열생성 262
5.1.2배열원소참조및변경 266
5.1.3배열객체타입 266
5.1.4불변배열과가변배열 268
5.1.5매열객체복사 268
5.1.6배열관련추가연산 269
5.1.72차원배열객체 274
5.2제네릭 276
5.2.1제네릭함수정의 276
5.2.2제네릭클래스정의및객체생성 278
5.2.3제네릭함수와람다식 280
5.2.4클래스상속관계일때타입변환 284
5.3컬렉션 289
5.3.1불변인터페이스및불변컬렉션 289
5.3.2가변인터페이스및가변컬랙션 294
5.4리스트 298
5.4.1불변리스트 299
5.4.2가변리스트 301
5.5Set 306
5.6Map 311
5.7iterator와sequence 316
5.7.1iterator 316
5.7.2sequence 318
5.8변환 323
5.9필터링 333
5.10여러개원소를가져오는함수 338
5.11단일원소획득함수 345
5.12정렬 350
5.13집계 357
5.14랜덤수생성함수 367

6장스레드와코루틴 371
6.1파일읽고쓰기 371
6.1.1파일읽기 372
6.1.2파일쓰기 375
6.2스레드 379
6.3코루틴 383
6.3.1코루틴범위 384
6.3.2코루틴실행:중단함수 388
6.3.3코루틴빌더 389
6.3.4Job객체의join()메소드 393
6.3.5스레드로구현한예제를코루틴으로구현 398

찾아보기 400