로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

『코틀린을 이용한 안드로이드 개발: 안드로이드 앱을 개발하며 배우는 코틀린』

   
지은이 마르친 모스칼라, 이고르 워다   |   출판사 에이콘  |   발행일 2018년 05월 31일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 30,000원27,000원 10%
마일리지 5% 1,500원
발행일 2018-05-31
ISBN 1161751629 | 9791161751627
기타정보 번역서 | 532쪽
예상출고일 1일 (근무일기준)
배송비 무료배송
   
일반
   
이 책의 원서
  Android Development with Kotlin
Packt Publishing
 

★ 요약 ★



오늘날 개선된 애플리케이션 개발이라는 말은 단순히 속도가 빠른 애플리케이션 개발을 의미하는 것은 아니며, 개선된 방법으로 코드를 작성하는 것도 중요해졌다. 코틀린은 다양한 플랫폼에서 안드로이드 애플리케이션을 쉽고 효과적으로 작성할 수 있게 도와주는 언어다. 이 책에서는 안드로이드 개발에 사용되는 코틀린의 장점, 개선점, 그리고 새로운 가능성에 대해 알아본다.



★ 이 책에서 다루는 내용 ★



■ 코틀린 애플리케이션의 실행 및 안드로이드 스튜디오와 통합

■ 코틀린을 신규/기존 안드로이드 자바 기반 프로젝트와 통합

■ 코틀린 형식 시스템을 이용해 null 안전성과 불변성을 처리하는 방법

■ 다양한 클래스의 유형과 속성 다루기

■ 컬렉션 정의 및 함수형 기반 방식으로 변환

■ 확장의 정의 및 대리자를 이용해 기존 라이브러리와 안드로이드 프레임워크 클래스에 새로운 동작 추가

■ 제네릭 형식 가변성 한정자를 이용해 제네릭 형식 간의 하위 형식 관계 정의

■ 예제 애플리케이션 작성





★ 이 책의 대상 독자 ★

.

■ 객체, 클래스, 생성자, 인터페이스, 메소드, 게터, 세터, 제네릭 형식을 비롯한 객체지향 프로그래밍의 기본 개념과 자바에 익숙해야 한다. 이러한 기본 개념에 익숙하지 않다면 이 책을 제대로 이해하기 어려울 수 있으므로, 자바 기본서를 먼저 공부하고 이 책을 읽기 바란다.

■ 안드로이드 플랫폼에 대한 지식이 필수는 아니지만, 이 책에 나온 예제와 코틀린으로 해결할 수 있는 문제를 제대로 이해하는 데 도움이 된다. 안드로이드 애플리케이션을 개발해본 경험이 있는 개발자라면 기본적으로 충분하다. 안드로이드 플랫폼에 대한 지식이 충분하지 않더라도 객체지향 개념에 익숙하다면 큰 문제 없이 이 책을 공부할 수 있다.

새로운 기술을 배우는 데 거부감이 없는 열린 사고를 가지고 있다면 공부하는 데 큰 도움이 된다. 이 책을 공부하는 동안 호기심을 자극하는 구상이 있다면 직접 테스트하고 확인해보기를 권한다.





★ 이 책의 구성 ★



1장, ‘코틀린 시작하기’에서는 독자에게 코틀린 플랫폼을 소개하고 코틀린 언어와 특징, 장점을 설명한다. 또한 코틀린을 안드로이드 개발 프로세스에 적용하는 방법을 알아본다.

2장, ‘기본 개념’에서는 코틀린의 기본 구성요소를 주로 살펴본다. 코틀린의 다양한 구문과 데이터 형식, 그리고 흥미로운 특징을 소개한다.

3장, ‘함수’에서는 함수를 정의하고 호출하는 여러 방법을 설명하며, 함수 식별자에 대해 알아보고, 함수를 정의할 수 있는 여러 위치에 대해 설명한다.

4장, ‘클래스와 객체’에서는 객체지향 프로그래밍과 관련된 코틀린의 특징에 대해 알아본다. 클래스의 다양한 형식에 대해 배우고, 가동성을 개선하기 위한 기능으로 속성 연산자 오버로딩과 중위 호출에 대해 배운다.

5장, ‘일급 객체로서의 함수’에서는 코틀린의 함수형 프로그래밍과 일급 객체로서의 함수 지원에 대해 알아본다. 또한 람다, 상위 함수, 함수 형식에 대해 배운다.

6장, ‘제네릭’에서는 제네릭 클래스, 인터페이스, 함수에 대해 알아본다. 또한 코틀린의 제네릭 형식 시스템에 대해 자세히 살펴본다.

7장, ‘확장 함수와 속성’에서는 기존 클래스에 상속을 사용하지 않고 새로운 동작을 추가하는 방법을 알아본다. 또한 컬렉션과 스트림 처리를 수행하는 더 간단한 방법도 논의한다.

8장, ‘위임’에서는 코틀린의 기본 제공 언어 기능으로 클래스 위임을 간소화하는 방법을 알아본다. 또한 기본 제공 속성 대리자를 사용하는 방법과 맞춤형 대리자를 정의하는 방법을 배운다.

9장, ‘마블 갤러리 애플리케이션 만들기’에서는 지금까지 설명한 거의 모든 기능을 사용해 코틀린으로 완전히 작동하는 안드로이드 애플리케이션을 직접 제작한다.





★ 지은이의 말 ★



오늘날 안드로이드 애플리케이션을 개발하기 위한 프로세스에는 아주 다양한 주제가 포함된다. 지난 몇 년간 이러한 개발 프로세스를 돕는 다양한 툴이 출시됐지만, 안드로이드 애플리케이션 개발의 핵심 요소인 자바는 거의 변하지 않았다. 안드로이드 플랫폼은 새로운 버전의 자바를 도입하고 있지만, 이를 사용하려면 새로운 안드로이드 장치가 시장에 완전히 보급될 때까지 오래 기다려야 한다. 또한 자바 자체가 이전 버전과의 호환성 때문에 해결하기 어려운 디자인 문제를 많이 내포하는 오래된 언어이므로, 자바를 이용해 애플리케이션을 개발하려면 여러 가지 부수적인 과제를 극복해야 한다.

코틀린은 자바가 해결하지 못한 여러 문제를 해결할 수 있는 새롭고 안정적인 언어며, 모든 안드로이드 장치에서 사용할 수 있다. 코틀린은 유용성이 입증된 여러 새로운 프로그래밍의 개념을 안드로이드 개발 환경에서 지원하고, 표현력이 우수하며, 더 안정적이고 간결한 코드를 작성할 수 있게 해준다.

이 책은 코틀린을 이용한 안드로이드 개발 프로세스의 속도를 높이고 개선하기 위한 따라 하기 쉽고 실행적인 안내서로서, 자바에 비해 간소하고 개선된 방법으로 일반적인 문제를 해결하는 새로운 방법을 소개한다. 이 책을 모두 공부하면 코틀린의 기능과 툴에 익숙해지고, 코틀린을 이용해 안드로이드 애플리케이션을 개발할 수 있게 된다.

1장. 코틀린 시작하기



__코틀린 소개

__멋진 코틀린 예제

__코틀린 코드 다루기

____코틀린 플레이그라운드

____안드로이드 스튜디오

________프로젝트를 위한 코틀린 구성

________새로운 안드로이드 프로젝트에서 코틀린 사용

________자바-코틀린 변환기(J2K)

________코틀린 코드를 실행하는 다른 방법

__코틀린의 내부 작동 방식

____코틀린 표준 라이브러리

__코틀린의 장점

__요약





2장. 기본 개념



__변수

__형식 유추

__엄격한 null 안전성

____안전 호출

____엘비스 연산자

____non-null 주장

____let

__null 가능성과 자바

__형변환

____안전/불안 형변환 연산자

____스마트 형변환

________형식 스마트 형변환

________null 불허 스마트 형변환

__기본형 데이터 형식

____숫자

____Char

____배열

____부울 형식

__복합 데이터 형식

____문자열

________문자열 템플릿

____범위

____컬렉션

__문과 식

__제어 흐름

____if 문

____when 식

____반복문

________for

________while 반복문

________그 밖의 반복문

________break와 continue 문

__예외

____try...catch 블록

__컴파일 타임 상수

__위임

__요약





3장. 함수



__기본적인 함수 선언과 사용법

____매개변수

____함수에서 반환

__vararg 매개변수

__단일 식 함수

__꼬리 재귀 함수

__함수를 호출하는 다른 방법

____기본 인수 값

____명명된 인수 구문

__최상위 함수

__최상위 함수의 내부 작동 방식

__로컬 함수

__Nothing 반환 형식

__요약





4장. 클래스와 객체



__클래스

____클래스 선언

__속성

____읽기 쓰기와 읽기 전용 속성

____코틀린과 자바와 속성 접근 구문

________증가 및 감소 연산자

____맞춤형 게터/세터

________게터와 속성 기본 값

____지연 초기화되는 속성

____속성과 애노테이션

____인라인 속성

__생성자

____속성과 생성자 매개변수의 비교

____기본 인수를 갖는 생성자

________패턴

__상속

____JvmOverloads 애노테이션

__인터페이스

__데이터 클래스

____equals와 hashCode 메소드

____toString 메소드

____copy 메소드

____구조분해 선언

__연산자 오버로딩

__객체 선언

__객체 식

__컴패니언 객체

____컴패니언 객체의 인스턴스 생성

__열거 클래스

__명명된 메소드에 대한 중위 호출

__가시성 한정자

____internal 한정자와 자바 바이트코드

__봉인 클래스

__중첩 클래스

__별칭 임포트

__요약





5장. 일급 객체로서의 함수



__함수 형식

____함수 형식의 내부 작동 방식

__익명 함수

__람다식

____단일 매개변수의 암시적 이름

__상위 함수

____함수를 작업으로서 제공

____관찰자(수신기) 패턴

____스레드 작업 후 콜백

__명명된 인수와 람다식의 조합

__마지막 람다식 인수 규칙

____주변 코드 명명

____LINQ 스타일로 데이터 구조 처리

__코틀린의 자바 SAM 지원

__명명된 코틀린 함수 형식

____함수 형식의 명명된 매개변수

____형식 별칭

__사용되지 않는 변수를 위한 밑줄

__람다식의 구조분해

__인라인 함수

____noinline 한정자

____논로컬 반환

____람다식의 라벨 반환

____crossinline 한정자

____인라인 속성

__함수 참조

__요약





6장. 제네릭



__제네릭

____제네릭의 필요성

________형식 매개변수와 형식 인수

__제네릭 제약 조건

____null 가능성

__변량

____변량 한정자

____사용 위치 변량과 선언 위치 변량

____컬렉션 변량

____변량 생산자/소비자 제한

____고정 생성자

__형식 삭제

____reified 형식 매개변수

________startActivity 메소드

__별표 프로젝션

__형식 매개변수 명명 규칙

__요약





7장. 확장 함수와 속성



__확장 함수

____확장 함수의 내부 작동 방식

________메소드 재정의 불가

________수신자 요소 접근

________확장은 정적으로 확인된다

____컴패니언 객체 확장

____확장 함수를 이용한 연산자 오버로딩

____최상의 확장 함수의 적절한 사용 위치

__확장 속성

____확장 속성은 어디에 사용해야 할까?

__멤버 확장 함수와 속성

____수신자의 형식

____멤버 확장 함수와 속성의 작동 방식

__제네릭 확장 함수

____컬렉션 처리

________코틀린 컬렉션 형식의 계층

________map, filter, flatMap 함수

________forEach와 onEach 함수

________withIndex와 indexed 변형

________sum, count, min, max, sorted 함수

________그 밖의 스트림 처리 함수

________스트림 컬렉션 처리의 예

________시퀀스

__수신자가 있는 함수 리터럴

____코틀린 표준 라이브러리 함수

________let 함수

________초기화를 위한 apply 함수 이용

________also 함수

________run과 with 함수

________to 함수

____DSL(domain-specific language)

________Anko

__요약





8장. 위임



__클래스 위임

____위임 패턴

____데코레이터 패턴

__속성 위임

____위임 속성이란?

____미리 정의된 대리자

________lazy 함수

____notNull 함수

____observable 대리자

________vetoable 대리자

________Map 형식으로 속성 위임

____맞춤형 대리자

________뷰 바인딩

________SharedPreferences 바인딩

________대리자 제공

__요약





9장. 마블 갤러리 애플리케이션 만들기



__마블 갤러리

____진행 방법

____새로운 프로젝트 만들기

____캐릭터 갤러리

________뷰 구현

________네트워크 정의

________비즈니스 논리 구현

________구현한 작업을 하나로 묶기

____캐릭터 검색

____캐릭터 프로필 표시

__요약
마르친 모스칼라(Marcin Moskala)

전문 안드로이드 개발자로 초기 베타 시절부터 적극적으로 코틀린 개발자 커뮤니티에 관여하고 있으며, 코틀린과 관련된 업계 매체에 기사를 쓰고 프로그래밍 컨퍼런스에서 강연하고 있다. 또한 프로그래밍과 오픈소스 커뮤니티에서 활발히 활동 중이며, 인지과학과 데이터 과학에도 관심이 많다.

웹사이트(marcinmoskala.com)나 깃허브(MarcinMoskala)에서 그와 만나거나 트위터(@marcinmoskala)에서 팔로우 할 수 있다.



이고르 워다(Igor Wojda)

11년간 소프트웨어 개발 분야에서 일한 전문 소프트웨어 엔지니어며, 안드로이드와 인연을 맺은 후에는 보건 업계에서 선임 안드로이드 개발자로 일하고 있다. 코틀린 1 .0 버전이 정식 출시되기 이전부터 코틀린에 관심을 가지고 코틀린 커뮤니티에서 활발하게 활동했다. 코딩에 대한 열정을 동료 개발자와 공유하는 것을 좋아한다.

미디엄(@igorwojda)에서 그와 만나거나 트위터(@igorwojda)에서 팔로우할 수 있다.





★ 옮긴이의 말 ★



코틀린은 널리 사용되는 인텔리제이 IDEA의 개발사인 젯브레인스(JetBrains)에서 2011년에 개발해 공개한 언어다. JVM 기반의 언어이므로 자바와 완벽하게 상호운용할 수 있으며, 특정 플랫폼의 기계어로 컴파일하는 것도 가능하다.

처음부터 자바를 대체하는 것을 염두에 두고 개발됐기 때문에, 자바 언어의 여러 근본적인 문제점을 해결했으며, 최근에 각광받고 있는 최신 언어들의 장점을 모두 흡수한 차세대 언어이기도 하다.

자바 라이선스를 보유한 오라클과 구글의 불편한 관계를 고려할 때, 장기적으로 구글이 안드로이드 개발 환경을 자바에서 코틀린으로 대체할 것이라는 시각이 많았으며, 이런 예상을 현실화하듯이 2017년 5월 구글은 코틀린을 안드로이드의 공식 언어로 발표하기도 했다.

기존의 막대한 자바 코드베이스를 감안할 때, 단시간에 자바에서 코틀린으로 안드로이드 개발 환경이 전환되지는 않겠지만, 애플이 오브젝티브 C 대신 스위프트의 손을 들어줬듯이 앞으로 구글이 자바보다 코틀린에 대한 지원을 강화할 것은 분명해 보인다.

이 책이 코틀린이라는 밝은 가능성의 길로 안내하는 유용한 안내자가 되기를 바란다.





★ 옮긴이 소개 ★



최민석

2005년부터 번역 회사에서 언어 전문가로 일하다 독립한 후 현재는 IT 전문 번역가로 일하고 있다. 10여 년 동안 수백 건의 소프트웨어 현지화와 개발자 웹사이트 한글화 프로젝트를 진행했으며, 지금은 IT 전문 서적을 번역하는 일에 집중하고 있다. 번역한 책으로는 『리액트 디자인 패턴과 모범 사례』(에이콘, 2016), 『Unity 5.x By Example』(에이콘, 2016), 『유니티 5 메카님 캐릭터 애니메이션』(에이콘, 2016), 『네티 인 액션』(위키북스, 2016), 『유니티와 C#으로 배우는 게임 개발 교과서』(위키북스, 2015) 등이 있다.



등록된 서평이 없습니다.
엑셀 2010...
두드림기획
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
좋은 사진을 만드는 박승근의 드론 사진 강의...
박승근
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(0)
회원평점   회원서평수 0
에이콘 출판사의 신간
『엑셀로 하는 회귀분석: 풍부한 예제를 활용한 회귀분석의 이해』
콘래드 칼버그 저
27,000원
(10%↓+5%)
 
『안드로이드 UI & GUI 디자인 2/e: 디자이너와 개발자가 함께 읽는』
박수레, 안영균, 정준욱 저
27,000원
(10%↓+5%)
 
『트러블슈팅 도커: 도커의 활용과 문제 해결 방법』
바이브하브 콜리, 라즈딥 두아, 존 우튼 저
27,000원
(10%↓+5%)
 
『Windows Server 2016 Hyper-V 쿡북 2/e: 65개의 레시피로 배우는 Hyper-V 서버 핵심 가이드』
패트릭 라운즈, 차르벨 넴놈, 레안드로 카르발류 저
36,000원
(10%↓+5%)
 
『스프링 5.0 마스터 : 스프링 부트, 스프링 클라우드, 마이크로서비스, 리액티브, 코틀린까지』
랑가 라오 카라남 저
32,400원
(10%↓+5%)
 
이메일주소수집거부