서브메뉴
검색
본문
Powered by NAVER OpenAPI
-
핵심 문법과 예제로 배우는 코틀린 (빠르게 코틀린 개발자로 거듭나는 최고의 방법)
저자 : 이난주
출판사 : 로드북
출판년 : 2017
정가 : 20000, ISBN : 9788997924370
책소개
구글이 코틀린(Kotlin)을 공식언어로 채택하였다. 자바처럼 JVM에서 작동하고 자바와 완전하게 호환된다. 또한 언어 자체의 장점 때문에 코틀린은 현재 빠르게 확산되고 있다. 이 책은 코틀린의 핵심 문법을 자바와 비교하면서 가르쳐준다. 그리고 간단한 앱 세 개를 개발해보면서 빠르게 코틀린 개발자가 되도록 도와준다. 코틀린 개발자로 빠르게 거듭날 수 있도록 도와주는 입문서인 셈이다. 안드로이드 스튜디오만 있으면 학습하는 데 전혀 문제가 없다. 이 책을 통해 좀더 효율적이고 유연한 개발자가 되기를 바란다.
목차
1장 코틀린 시작하기
1.1 코틀린의 탄생
1.2 왜 코틀린일까?
1.3 코틀린 개발 환경 구축하기
[연습문제] 코틀린 관련 퀴즈, "HelloKotlin" 출력하기
2장 빠르게 살펴보는 코틀린 문법
2.1 클래스
2.1.1 코틀린 클래스 생성하기
2.1.2 생성자 constructor 키워드
2.1.3 생성자에서 기본값 설정하기
2.1.4 코틀린은 생성자 함수 바디를 가질 수 없을까?
2.1.5 코틀린 변수 키워드 var과 val
2.1.6 접근 제한자
2.1.7 클래스의 멤버 변수 선언
2.1.8 상속
2.1.9 interface 클래스
2.1.10 그 밖의 클래스 타입
2.2 함수(fun)
2.2.1 함수 선언
2.2.2 함수도 기본값을 정의할 수 있을까?
2.2.3 변수 타입
2.2.4 vararg
2.3 흐름 제어 연산자
2.3.1 For의 범위 설정 키워드 in
2.3.2 Switch 대신 When
2.4 collection
2.5 타입 체크와 비교 연산
2.5.1 타입 체크 is와 타입 캐스팅 as
2.5.2 NPE에 안전한 변수 선언 방법
2.5.3 비교 연산자 = =와 = = =
2.6 람다
2.6.1 코틀린에서 살펴보는 람다의 특징
2.6.2 inline 키워드
2.7 제네릭
2.7.1 제네릭
2.7.2 추론
2.7.3 와일드 카드
2.7.4 임의적 생략
2.8 그 밖의 유용한 함수들
2.8.1 apply()
2.8.2 run ()
2.8.3 let()
2.8.4 with()
2.8.5 forEach()
2.8.6 onEach()
2.8.7 filter()
[연습문제] 2가지 타입 생성자 클래스 만들기, 1~50까지 짝수 더하기, 타입 캐스팅과 apply 함수 활용하기
3장 국가 정보를 소개하는 애플리케이션 만들기
3.1 애플리케이션 및 개발 사양 소개
어떤 애플리케이션을 만들까?
개발 포인트 및 개발 사양
3.2 프로젝트 만들기
[예제 3-1] 코틀린 환경 설정 후 클래스 파일
3.3 코틀린 업데이트 확인하기
[예제 3-2] 코틀린 버전 변경하기
3.4 RecyclerView 라이브러리 추가하기
[예제 3-3] RecyclerView 라이브러리 추가하기
3.5 레이아웃 파일 추가하기
[예제 3-4] RecycleView 아이템 레이아웃 작성하기
3.6 RecyclerView Adapter 클래스 작성하기
[예제 3-5] RecyclerView Adapter 클래스 작성하기
3.7 MainActivity 클래스 작성하기
MainActivity 레이아웃 작성하기
[예제 3-6] MainActivity 레이아웃 작성하기
MainActivity 클래스 작성하기
[예제 3-7] MainActivity 클래스 작성하기
3.8 국가 상세 정보 저장하고 표시하기
3.8.1 assets 폴더 생성 후 Json 파일 추가하기
[예제 3-8] 국가 정보 Json 파일 작성하기
3.8.2 Gson 라이브러리 사용하기
[예제 3-9] 국가 상세 정보 화면 Adapter 클래스 작성하기
3.9 NationDetailActivity 작성하기
[예제 3-10] 국가 상세 정보 화면 레이아웃 작성하기
[예제 3-11] 국가 상세 화면 클래스 작성하기
[연습문제] 코틀린 extension과 for와 when을 이용한 프로그램 작성
4장 사용자 등록 앱 제작하기
4.1 사용자 등록 애플리케이션 및 개발 사양 소개
어떤 애플리케이션을 만들까?
개발 사양 소개
4.2 툴바 사용하기
툴바가 뭐지?
[예제 4-1] 메뉴 레이아웃 추가하기
[예제 4-2] 툴바를 사용하기 위해 Style 파일 수정하기
4.3 MainActivity에서 툴바를 설정하는 방법
[예제 4-3] MainActivity 레이아웃에 툴바 추가하기
[예제 4-4] 툴바 설정하기
4.4 데이터베이스에 정보 저장하기
[예제 4-4] DB 클래스 작성하기
4.5 Anko 라이브러리
4.6 Anko DSL 사용 방법
Anko 라이브러리 추가하기
[예제 4-5] Anko 라이브러리로 레이아웃 작성하기
4.7 Anko를 이용해서 DBHandler 작성하기
[예제 4-6] Anko 라이브러리로 DB 클래스 작성하기
4.8 CursorAdapter 사용하기
[예제 4-6] ListView Adapter 레이아웃 작성하기
[예제 4-7] UserList 어댑터 작성하기
4.9 MainActivity에서 Adpater 설정하기
[예제 4-8] 사용자 정보 리스트가 포함된 main 레이아웃
[예제 4-9] MainActivity 완성하기
4.10 권한 설정하기
안드로이드 버전에 따른 권한 설정
4.11 Media Store를 이용하여 이미지 불러오기
MediaStore 클래스
Media Store를 이용하여 이미지 불러오기
[예제 4-10] 사용자 정보 저장 레이아웃
[예제 4-11] SaveUserActivity 작성하기
4.12 Manifest에 선언되는 내용
[연습문제] 버튼 추가하기, 액티비티 수정하기
5장 일기예보 애플리케이션 만들기
5.1 날씨 애플리케이션 소개
5.1.1 어떤 애플리케이션을 만들까?
5.1.2 개발 사양 소개
5.2 날씨 정보를 위한 OpenWeatherAPI Key 생성하기
5.2.1 OpenWeatherMap 사이트에서 API Key 받기
5.2.2 OpenWeatherAPI 사용 방법
5.3 애플리케이션에서 사용할 라이브러리 추가하기
5.3.1 사용할 라이브러리 소개
[예제 5-1] 추가된 라이브러리들
5.4 날씨 정보를 제공할 도시 파일 추가하기
정보 추가할 도시 데이터 가져오기
5.4.2 asset 폴더에 json 파일 추가하기
[예제 5-2] city_list_json 파일 기반으로 바꾼 데이터
5.4.3 도시 데이터를 위한 데이터 클래스 작성하기
[예제 5-3] areadCode data class 작성하기
5.5 도시 리스트를 보여주는 액티비티 작성하기
[예제 5-4] 도시 리스트 액티비티 구현하기
[예제 5-5] SelectCityActivity의 레이아웃
5.6 CityListAdatper 클래스 작성하기
[예제 5-6] CityList 어댑터 클래스 만들기
[예제 5-7] CityListAdapter에서 사용하는 레이아웃
5.7 DBHandlerAnko 클래스 작성하기
[예제 5-8] DB 클래스 만들기
5.8 날씨 정보를 표현하는 Data 클래스 작성하기
[예제 5-9] 날씨 정보 data class 만들기
5.9 백그라운드 작업을 위한 클래스 작성하기
5.9.1 AsyncTaskLoader로 백그라운드 작업하기
[예제 5-10] 백그라운드 작업을 위한 클래스 작성하기
5.9.2 thread 함수
5.10 MainAcitivity 작성하기
5.10.1 메뉴 파일 추가하기
[예제 5-11] 메뉴 레이아웃 만들기
5.10.2 MainActivity에서 AsyncTaskLoader 호출하기
[예제 5-12] 메인 액티비티 완성하기
[예제 5-13] 메인 화면에 프로그레스 바 카드뷰 리스트 추가
5.11 앱 화면에 정보를 표시하는 카드뷰 사용하기
[예제 5-14] 카드뷰 화면 레이아웃
5.12 CustomView 작성하기
5.12.1 ForecastView 작성하기
[예제 5-15] Custom View 생성하기
[예제 5-16] Custom View 레이아웃 생성하기
5.12.2 CardView List Adapter 작성하기
[예제 5-17] CardViewListAdapter 작성하기
[연습문제] Company object, thread()와 runOnUiThread() 사용법, 함수의 변경
책을 마무리하며
찾아보기