logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

만들면서 배우는 코틀린 & 안드로이드 프로그래밍

만들면서 배우는 코틀린 & 안드로이드 프로그래밍

(기초 문법부터 다섯 가지 실전 프로젝트 예제를 꼼꼼하게 설명하는)

유병석 (지은이)
위키북스
36,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
32,400원 -10% 0원
1,800원
30,600원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

만들면서 배우는 코틀린 & 안드로이드 프로그래밍
eBook 미리보기

책 정보

· 제목 : 만들면서 배우는 코틀린 & 안드로이드 프로그래밍 (기초 문법부터 다섯 가지 실전 프로젝트 예제를 꼼꼼하게 설명하는)
· 분류 : 국내도서 > 컴퓨터/모바일 > 모바일 프로그래밍 > 안드로이드
· ISBN : 9791158392529
· 쪽수 : 992쪽
· 출판일 : 2021-04-29

책 소개

위키북스 임베디드 & 모바일 시리즈 40권. 코틀린 언어를 이용해 안드로이드 앱을 개발하는 방법을 다룹니다. 코틀린 언어를 학습하는 과정에서 프로그램을 작성하는 데 필요한 필수 개념을 살펴보고, 콘솔에서 동작하는 간단한 프로그램을 작성한다.

목차

[1부] 코틀린 프로그래밍 언어

▣ 01장: 들어가며
코틀린 프로그래밍 언어
인텔리J IDEA 설치
첫 번째 코틀린 프로그램
콘솔창을 이용한 출력과 입력
코틀린 예제 코드 내려받기

▣ 02장: 변수와 자료형
변수의 개념
변수와 상수 선언
___변수 선언
___상수 선언
___변수와 상수의 명명 규칙
변수의 타입
___숫자 타입
___문자 타입
___문자열 타입
___논리값 타입
배열 타입
Any 타입
타입 변환
Nullable 타입
___조건문에서 null 값 대입 여부를 검사한 후 값에 접근
___안전 호출 연산자를 사용해 값에 접근
___엘비스 연산자를 이용해 값에 접근
___null 값이 아님을 보장하는 연산자를 사용해 값에 접근
___null을 반환하는 타입 변환 메서드
주석

▣ 03장: 연산자
산술 연산자
대입 연산자
복합 대입 연산자
단항 연산자
비교 연산자
논리 연산자
인덱스 접근 연산자
in 연산자
연산자 우선순위

▣ 04장: 제어문
분기문
___if 문을 이용한 분기
___if 표현식과 삼항 연산자
___when - case 표현식을 이용한 분기
반복문
___while 문
___do - while 문
___for 문
___for 문을 이용한 배열과 컬렉션 순회
___break와 continue 명령어

▣ 05장: 함수
함수의 개념
함수 정의
함수 축약 정의
기본 인자값 정의
가변 인자 전달
___전개 연산자를 이용한 배열값 전달
이름을 통한 인자값 전달
람다 함수와 고차 함수
___람다 함수의 정의와 생성
___it을 이용한 람다 함수 내부에서의 인자값 접근
___함수 타입 추론
___함수의 반환값으로 람다 함수를 반환
___함수의 인자로 람다 함수를 전달
함수 내부에 정의하는 로컬 함수
패키지
함수 오버로딩
함수 참조 연산자
범위 함수
객체지향 프로그래밍

▣ 06장: 객체지향 프로그래밍 기초
객체지향 프로그래밍과 클래스
클래스 정의
___클래스 생성자
___보조 생성자의 개념과 정의
___this 키워드를 이용한 객체 접근
접근 제어자의 개념
___접근 제어자를 이용한 변수, 상수 및 함수 정의
속성과 게터, 세터 메서드
Lazy와 lateinit을 이용한 속성값 초기화
상속
___super 키워드를 이용한 부모 객체 접근
___메서드 오버라이드
___메서드 오버로딩
___추상 클래스
___Any 클래스
인터페이스
___인터페이스와 다중 상속
타입 확인과 타입 변환
___is, !is 키워드를 이용한 타입 확인
___as 키워드를 이용한 타입 변환
___업캐스팅과 다운캐스팅
___스마트 캐스트
___안전한 형변환을 위한 as? 키워드
object 키워드와 익명 클래스

▣ 07장: 객체지향 프로그래밍 고급
데이터 클래스
___equals 메서드와 hashCode 메서드 재정의
열거형 클래스
봉인 클래스
내부 클래스
확장 함수
중위 표기법을 이용한 메서드 및 함수 호출
object 키워드와 싱글턴 클래스
companion object 키워드를 이용한 클래스 변수, 상수, 함수 정의
___const 키워드와 @JvmField 애너테이션의 활용
유용한 패키지와 클래스
___문자열 클래스
___수학 패키지
___난수 클래스
___날짜 클래스
___시스템 클래스

▣ 08장: 예외 처리
예외 처리의 개념
try - catch 표현식 활용
___스택 트레이스와 예외 발생 이유 찾기
___여러 catch 블록의 중첩
___finally 블록
throw 키워드를 이용한 예외 발생
표현식으로 사용되는 try - catch
예외 클래스 정의
제네릭의 개념과 활용

▣ 09장: 제네릭
제네릭을 적용한 제네릭 함수
컬렉션의 개념
___mutable과 immutable

▣ 10장: 컬렉션
리스트
___리스트의 정렬

집합
컬렉션에서 제공하는 유용한 확장 함수
___forEach, forEachIndexed
___map
___filter
___partition
___reduce
___count
___zip
___associate
___groupBy
___distinct
___min, max, sum, average, count
___any, all, none
Iterable 인터페이스

▣ 11장: 파일 입출력
파일 입출력이란?
파일 생성
텍스트 파일 입출력
이진 파일 입출력
디렉터리 관련 작업 수행

[2부] 실전 안드로이드 프로젝트

▣ 프로젝트 01: Hello Android
안드로이드 스튜디오 설치와 가상 단말기 생성
___안드로이드 스튜디오 설치
___프로젝트 생성 및 실행
___완성된 프로젝트 불러오기
___화면 패널 소개
___AVD Manager를 이용한 안드로이드 에뮬레이터 사용
XML 기초 개념
레이아웃 XML 파일과 다양한 리소스
___뷰와 뷰그룹 개념
___뷰와 식별자 할당
___res 폴더와 리소스 파일
___문자열 리소스 및 색상 리소스 파일에 정의된 리소스 사용
___R.java 파일과 리소스 식별자
___안드로이드에서 사용되는 가상 단위 DP
첫 액티비티 코드 분석과 수정
___레이아웃 파일 생성 및 새 레이아웃 적용
___식별자를 이용한 뷰 객체 접근
___클릭 이벤트 리스너 등록
로그캣과 토스트를 이용한 메시지 출력
___로그캣을 이용한 로그 메시지 출력
___토스트를 이용한 메시지 출력
액티비티의 개념과 액티비티 생명주기
___단말기 상태 변경과 관련된 UI 상태 저장
자주 쓰이는 뷰그룹
___LinearLayout 뷰그룹
___RelativeLayout 뷰그룹
___중첩 뷰그룹의 활용
자주 쓰이는 뷰
___TextView, ImageView 뷰
___Button, ImageButton, ToggleButton 뷰
___EditText 뷰
___CheckBox, RadioButton 뷰
___Spinner 뷰
동적 생성된 뷰를 이용한 레이아웃 구성
AndroidManifest.xml 설정 파일
런처 아이콘 설정
그레이들 파일 설정

▣ 프로젝트 02: 오늘의 명언
프로젝트 생성
액티비티 생성과 레이아웃 구성, 명언 출력 기능 구현
액티비티 정보 수정
SharedPreferences 인터페이스의 개념
___SharedPreferences 객체 접근
___Editor 객체를 이용한 데이터 저장, 수정, 삭제
___SharedPreferences 객체를 사용한 명언 데이터 저장
명언 목록 액티비티 생성
명시적 인텐트를 이용한 액티비티 이동
명언 목록 액티비티 구성
명언 편집 액티비티 구성
명언 공유하기 기능 작성

▣ 프로젝트 03: 날씨와 미세먼지
프래그먼트의 개념과 활용
___프래그먼트에 필요한 초깃값 전달
___리스너 구현을 통한 프래그먼트와 액티비티 통신
프로젝트 생성과 UI 구성
___프래그먼트 활용
날씨 정보 API 서비스 신청
인터넷 권한 설정과 네트워크 요청 전송
___비동기 작업을 정의하기 위한 AsyncTask 클래스 활용
___AsyncTask 클래스를 상속받는 네트워크 요청 클래스 작성
___Jackson 라이브러리 의존성 추가 및 JSON 문자열의 역직렬화
미세먼지 정보 API 서비스 신청
미세먼지 프래그먼트 생성
ViewPager를 이용한 프래그먼트 전환
위치 정보 접근
앱 UI 개선
___배경 그라데이션 추가
___애니메이션 리소스 활용
___벡터 이미지 활용
Retrofit 라이브러리를 이용한 HTTP 통신

▣ 프로젝트 04: 뽀모도로
서비스와 브로드캐스트의 개념
___서비스의 개념
___시스템에서 전달되는 브로드캐스트 메시지
___포어그라운드 서비스의 필요성
프로젝트 생성과 UI 구성
서비스 생성 및 알람 기능 구현
사용 환경 개선
___알람 시간 선택 기능 추가
___알람까지 남은 시간을 액티비티 뷰로 표시
___다양한 미디어를 이용한 알림 설정
설정 프래그먼트 추가
상태바 메시지에 시간 정보 표시 및 갱신
앱 UI 개선
___툴 바 커스터마이징 및 액션바 대체
___커스텀 뷰 작성 및 활용

▣ 프로젝트 05: 퀴즈퀴즈
프로젝트 생성
내비게이션 드로어를 이용한 메뉴 생성
___헤더와 메뉴 구성
Quiz 클래스 정의 및 Room 데이터베이스 설정
XML 리소스를 이용한 로컬 데이터베이스 구성
___애셋 폴더 생성 및 퀴즈 데이터가 담긴 XML 애셋 파일 추가
___초기 퀴즈 데이터를 데이터베이스에 추가
퀴즈 프래그먼트의 기초 기능 구현
퀴즈 목록 프래그먼트 및 퀴즈를 수정, 추가, 삭제하는 액티비티 생성
퀴즈 관리 액티비티 구현
퀴즈 수정 및 삭제 기능 구현
퀴즈 추가 기능 구현
___퀴즈 내용 검증 기능 구현
___퀴즈 추가, 수정, 삭제 이후 퀴즈 목록을 갱신하는 문제 해결
___퀴즈 풀이 프래그먼트 기능 개선
___퀴즈 목록 필터링 기능 추가
퀴즈 풀이 화면의 타이머 기능 구현을 통한 제한 시간 설정
UI 개선
___프래그먼트 전환 애니메이션 추가
___커스텀 폰트 적용
___퀴즈 결과 프래그먼트 화면 수정
___카드뷰 활용
___피드백 이미지 및 선택지 버튼에 애니메이션 효과 적용

저자소개

유병석 (지은이)    정보 더보기
미술 대학에 진학해 디자인을 공부하던 중 프로그래머로 일하는 친구의 도움으로 PHP 언어를 이용해 홈페이지를 만들며 프로그래밍 세계에 입문했습니다. 이후 프로그래밍을 진지하게 배워보고 싶어 컴퓨터 공학을 복수 전공하며 본격적으로 개발 경력을 쌓게 됐습니다. 안드로이드 개발자로 스포카에 입사해 앱 개발뿐만 아니라 프론트엔드, 백엔드 개발도 같이 진행하며 다양한 분야의 개발을 경험했습니다. 개발과 관련된 지식을 쌓고 나누는 것을 좋아하고 현재는 미림여자정보과학고등학교에 교사로 재직하며 컴퓨터 프로그래밍을 가르치고 있습니다. o홍익대 시각디자인, 컴퓨터 공학과 졸업 o(전) (주)스포카 프로그래머 o(현) 미림여자정보과학고 컴퓨터 교사
펼치기

추천도서

이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책