<소문난 명강의> 시리즈 소개
이 시리즈는 단기간에 실무 능력을 갖추게 도와줍니다.
유튜브, 블로그, 학원, 대학 등에서 이미 검증된 강의 본연의 장점을 극대화하고 더 체계화해 책으로 담았습니다. 입문자 눈높이에서 설명하고 작고 실용적인 프로젝트를 수행해 실전 능력을 키워줍니다. 빠르게 개발 능력을 배우려는 입문자와 더 다양한 경험을 쌓으려는 기존 개발자에게 유용합니다.
이 책의 모태 소문난 명강의 ‘오준석의 생존코딩’ 소개
이 책의 모태 ‘안드로이드 생존코딩’은 오준석 저자가 수원스마트앱개발학원에서 6기까지 진행
한 안드로이드 과정 강의입니다. 그 과정에서 창업 3팀, 출시 앱 35개, 공모전 입상 7명(기획
공모전 1등 포함)의 성과를 내고 강의 영상 613편을 찍었습니다. 유튜브 채널에 올린 강의는 5
기 과정입니다.
•유튜브 채널(오준석의 생존코딩) : https://www.youtube.com/c/안드로이드생존코딩
일반인을 개발자로 취업시키기 위한 국비지원 과정이고 오준석 이름을 걸고 운영하던 기관의
대표 강의였기 때문에 실전에 필요한 내용을 심도 있게 담아 강의했습니다. 이 강의를 들으
면 거액을 들여 학원에 가지 않고도 학원에 간 것과 똑같은 수업을 들을 수 있습니다. 현재
구독자는 9000여 명 이상입니다.
온라인 강의 플랫폼(오준석의 생존코딩): survivalcoding.com
이 책의 특징
[입문자와 초보자를 배려한 진행 순서]
이 책은 자바 또는 그에 상응하는 프로그래밍을 학습한 사람을 대상으로 하지만, 프로그래밍 경험이 적거나 없는 사람도 따라 하며 이해할 수 있도록 구성했습니다.
[마지막까지 친절하게]
따라 하면 완성되는 것을 목표로 하기 때문에 실습 중에 놓치는 상황이 없도록 최대한 많은 그림과 스크린샷을 첨부했습니다. 앞에서 다룬 내용을 뒤에서 모를 수도 있다는 가정하에 최대한 반복해서 다루고 설명합니다.
[초보자 중심]
입문자나 초보자가 앱을 완성하고 실행하면서 보람을 느낄 수 있게 하는 데 중점을 두었습니다. 많은 내용을 나열하는 대신 핵심 내용을 앱 제작 과정에 녹여 포기하지 않고 끝까지 개발할 수 있도록 했습니다.
[예제 난이도 안내]
난이도를 다음과 같이 별의 개수로 표현했습니다.
_ 초급 : ★☆☆
_ 중급 : ★★☆
_ 고급 : ★★★
__ 첫 번째 앱 만들기(3장) ★☆☆
__ 비만도 계산기(5장) ★☆☆
__ 스톱워치(6장) ★☆☆
__ 나만의 웹 브라우저(7장) ★☆☆
__ 수평 측정기(8장) ★★☆
__ 전자액자(9장) ★★☆
__ 지도와 GPS(10장) ★★☆
__ 손전등(11장) ★★★
__ 실로폰(12장) ★☆☆
__ Todo 리스트(13장) ★★★
이 책이 다루는 범위
[안드로이드 스튜디오]
- 앱 개발에 필수적으로 사용하는 내용을 다룹니다.
- 빠르게 코드를 작성하는 자동완성 기능을 다룹니다.
[코틀린 프로그래밍]
- 앱 개발에 필수적으로 사용하는 내용을 다룹니다.
- 예제를 완성하면서 자연스럽게 여러 문법이나 기능을 사용하게 됩니다.
[레이아웃 작성]
- 레이아웃 에디터에서 ConstraintLayout 기반의 레이아웃 작성 및 속성을 설정하는 방법을 다룹니다.
[뷰 바인딩]
- findViewById( ) 메서드를 사용하지 않아도 레이아웃의 ID에 쉽게 접근하는 기능
[안드로이드 구성요소]
- 화면을 구성하는 기본 요소인 액티비티를 다룹니다.
- 지도와 좌우 슬라이드 화면을 구성하는 UI 요소인 프래그먼트를 사용합니다.
- 프로바이더를 사용해 기기의 사진 정보를 가져오는 방법을 다룹니다.
- 손전등 앱을 만들면서 UI를 가지지 않는 컴포넌트인 서비스를 다룹니다.
[그 외]
- 어려운 개념보다는 간단한 코드를 사용해 스레드를 쉽게 다룹니다.
- Room 데이터베이스를 사용하여 쉽게 데이터베이스를 다룹니다.
- 사운드를 재생하는 방법을 다룹니다.
- 지도와 현재 위치 정보를 다루는 방법을 다룹니다.
- 구글 플레이 스토어에 앱 등록하기를 배웁니다.
예제 다운로드: https://github.com/junsuk5/kotlin-android-2rd
이 책의 구성
[1장] 안드로이드를 개발하기 전에
개발 언어(코틀린)와 플랫폼에 대해 소개하고 안드로이드 앱 개발 도구인 안드로이드 스튜디오를 설치하여 개발 환경을 설정한다.
[2장] 기기와 에뮬레이터 준비
프로젝트를 생성하는 방법을 알아보고, 개발하는 앱을 실행할 기기/에뮬레이터를 준비한다.
[3장] 첫 번째 앱 만들기
안드로이드 스튜디오에서 프로젝트 구조, 레이아웃 에디터에 대해 알아본다. 간단한 레이아웃을 작성하면서 텍스트 뷰를 배치하고 문자열 리소스, 다국어화, 레이아웃 제약 수정에 대해 배운다. 또한 화면을 구성하는 레이아웃과 액티비티 버튼을 클릭했을 때 이벤트를 처리하는 방법을 알아본다.
[4장] 코틀린
안드로이드 앱 개발에 필요한 코틀린 핵심 문법을 기능을 중심으로 알아본다. 기존 자바 개발자를 위해 자바와 비교해 코틀린에 쉽게 적응하도록 설명한다.
[5장] 비만도 계산기 (실전 앱 개발)
키와 몸무게를 입력하여 비만도를 표시하는 앱을 만들어본다. 두 화면을 전환하면서 데이터 전달 방법을 알아보고 이미지 뷰를 사용해 벡터 이미지를 표시해본다.
[6장] 스톱워치 (실전 앱 개발)
스톱워치 앱을 만들어보면서 안드로이드 UI를 조작하는 메인 스레드와 복잡한 일을 하는 워커 스레드를 어떤 함수로 구현하는지 배운다. 또한 버튼을 누를 때마다 레이아웃에 텍스트 뷰를 추가하는 방법도 살펴본다.
[7장] 나만의 웹 브라우저 (실전 앱 개발)
웹뷰를 사용하여 웹 브라우저를 만들고 웹 페이지를 표시하기 위해 인터넷 사용 권한을 추가하는 방법을 알아본다. 또한 메뉴 리소스를 작성하여 액티비티에서 메뉴를 처리하는 방법을 다루고 테마를 수정하여 앱의 분위기를 바꿔보는 실습을 진행한다. 마지막으로 이미 설치된 다른 앱을 활용하여 SMS 보내기, 이메일 보내기를 실행해본다.
[8장] 수평 측정기 (실전 앱 개발)
가속도 센서를 활용한 수평을 측정하는 앱을 만들면서 센서 사용 방법과 센서값을 이용해 나만의 커스텀 뷰를 화면에 그려본다. 또한 센서 등록 및 해제를 통해 액티비티의 생명주기를 알아보고 화면에 수평계를 그리면서 간단한 그래픽 조작 API를 사용해본다.
[9장] 전자액자 (실전 앱 개발)
기기에 저장된 사진을 자동으로 슬라이드해주는 전자액자를 만들어본다. 사진을 찍으면 자동으로 기기 내부에 데이터베이스를 생성하고 외부에 공개하는 방법을 알아본다.
[10장] 지도와 GPS (실전 앱 개발)
구글 지도와 현재 위치 정보를 토대로 이동 경로를 표시하는 지도 앱을 만든다. 구글 지도를 사용하는 데 필요한 API 키 발급 등의 준비 사항을 알아보고, 위치 정보에 접근할 때 위험 권한을 허용하는 프로세스에 대해 알아본다. 또한 위치 정보를 주기적으로 요청하여 위도, 경도 좌표를 토대로 지도 위에 이동 경로를 표시해본다.
[11장] 손전등 (실전 앱 개발)
기기의 카메라 플래시를 사용하여 손전등 앱을 만들어보면서 위젯을 제공하여 앱을 실행하지 않고도 플래시를 켜고 끄는 방법을 알아본다. 손전등은 액티비티 기능을 사용해 작성하고 위젯은 안드로이드 컴포넌트 중 서비스를 이용해 작성해본다.
[12장] 실로폰 (실전 앱 개발)
실로폰 앱을 만들어보며 안드로이드에서 음원 파일을 재생하는 여러 방법을 배우고 상황에 따라 더 적절한 방법을 선택하는 기준에 대해 배운다. 레이아웃을 작성하면서 많은 뷰를 균등하게 정렬하는 법과, 많은 수의 뷰가 있을 때 코틀린으로 효율적으로 다루는 방법을 알아본다.
[13장] Todo 리스트 (실전 앱 개발)
할 일 정보를 데이터베이스에 저장하는 Todo 리스트 앱을 만든다. Room 데이터베이스를 사용하여 할 일 정보를 저장, 수정, 삭제하는 방법에 대해 알아보고 리사이클러 뷰와 데이터베이스를 연동하여 내용을 표시하는 방법을 알아본다.
[부록] 구글 플레이 스토어에 앱을 등록하는 방법을 알아본다.
추천사
코틀린이 처음 나왔을 때 공부해보고 현업에 적용하기 어렵다는 생각이 들어서 그만두었다가 이번 기회에 다시 보게 되었습니다. 이 책을 읽어보니 간단한 앱을 만드는 데 어려움이 없도록 안드로이드 스튜디오까지 친절하게 설명해주어 좋았습니다. 안드로이드 입문 서적으로 강력히 추천합니다.
_ 유동환, 『처음 배우는 플러터』, 『RxJava 프로그래밍』 저자
코틀린이 이슈화된 지 오래인데 이제야 코틀린으로 앱 개발을 시작하게 되었습니다. 올해 초 자바로 안드로이드 앱을 개발하는 오준석 저자의 『될 때까지 안드로이드』를 정독한 지 얼마 지나지 않았는데, 이제는 코틀린으로 앱을 개발하는 서적이 줄을 잇습니다. 언어의 흐름이 참으로 빠르게 흘러가고 있음을 느낍니다. 이 서적은 초보자도 쉽게 따라 할 수 있도록 코틀린 문법부터 차근히 알려줍니다. 프로젝트 역시 레시피 구성이 훌륭하게 되어 있어 앱 개발에 큰 어려움이 없을 겁니다. 코틀린으로 안드로이드 개발에 입문하려는 모든 분께 추천합니다. 따분한 이론서가 아닌 멋진 프로젝트로 지식을 전달하는 서적입니다.
_ 이상선, 소프트웨어 교육 강사
이 책에서 처음으로 코틀린을 접했습니다. 각 장을 진행하면서 하나씩 완성된 앱을 직접 만들어볼 수 있어서 좋았습니다. 스크린 캡처도 잘 되어 있어서 따라 하는 데 어려움이 없었습니다. 하나하나 앱을 만들면서 점점 더 흥미까지 생겼습니다.
_ 황재원, 프리랜서
코틀린으로 안드로이드 앱을 만듭니다. 앱 구현에 집중할 수 있도록 안드로이드 스튜디오 기능을 그림을 곁들여 세세히 설명합니다. 빠르게 여러 앱을 만들어볼 수 있다는 건 그만큼 진입장벽과 학습곡선이 낮다는 의미입니다. 코틀린의 매력을 잘 보여주고 있으니 기대하셔도 좋습니다. 자바 개발자라면 코틀린으로 훨씬 깔끔해진 코드를 보며 기분 좋은 자극을 받게 될 겁니다.
_ 이재훈, 백엔드 개발자, 바쁠 땐 프런트엔드 개발자
안드로이드 개발자로서 현업에 코틀린을 적용하기 위해 정보를 찾던 중 이 책을 만나게 되었습니다. 이 책은 간단한 앱들을 직접 만들면서 안드로이드 앱 프로그래밍 방법을 익히도록 구성되어 있습니다. 차근차근 따라 하면 큰 어려움 없이 안드로이드와 코틀린 2가지를 동시에 습득하는 아주 유익한 서적입니다.
_ 이재환, 안드로이드 개발자(삼성전자)
안드로이드 개발을 코틀린으로 입문하기에 아주 좋은 책입니다. 개발 환경설정부터 안드로이드 스튜디오 사용법과 같은 세세한 부분까지 ‘좋은 의미의 과도한 친절’이 돋보입니다. 이 책은 코틀린 주요 문법이 깔끔하게 정리되어 있고 이를 활용해서 다양한 앱을 개발하는 과정을 담고 있습니다. 따라서 입문자는 물론 기존 안드로이드 개발자도 코틀린 학습에 큰 도움이 될 겁니다.
_ 서준수, 안드로이드 개발자(LG전자)
이 책은 저자의 친절한 설명과 단계별 화면 캡처를 사용해 누구라도 헤매지 않고 쉽게 끝까지 따라 할 수 있도록 구성되어 있습니다. 또한 앱 개발에 꼭 필요한 기능으로 이루어진 예제들을 실습하면서 코틀린 언어에 자연스럽게 익숙해지게 하여, 앱 개발에 코틀린을 활용할 수 있다는 자신감을 심어주는 책입니다.
_ 문주현, 안드로이드 개발자