HOME > Detail View

Detail View

(스마트폰과 태블릿 PC 개발을 위한) 안드로이드 프로그래밍의 이해 : Android 2.3

(스마트폰과 태블릿 PC 개발을 위한) 안드로이드 프로그래밍의 이해 : Android 2.3 (Loan 54 times)

Material type
단행본
Personal Author
우종정
Title Statement
(스마트폰과 태블릿 PC 개발을 위한) 안드로이드 프로그래밍의 이해 : Android 2.3 / 우종정 지음
Publication, Distribution, etc
파주 :   생능출판사,   2011  
Physical Medium
540 p. : 삽화 ; 24 cm
ISBN
9788970506890
Bibliography, Etc. Note
참고문헌(p. 529-530)과 색인수록
000 00687camcc2200229 c 4500
001 000045635438
005 20110316203453
007 ta
008 110316s2011 ggka b 001c kor
020 ▼a 9788970506890 ▼g 93000
035 ▼a (KERIS)BIB000012286972
040 ▼a 211042 ▼c 211042 ▼d 211009
082 0 4 ▼a 005.268 ▼2 22
085 ▼a 005.268 ▼2 DDCK
090 ▼a 005.268 ▼b 2011z3
100 1 ▼a 우종정
245 2 0 ▼a (스마트폰과 태블릿 PC 개발을 위한) 안드로이드 프로그래밍의 이해 : ▼b Android 2.3 / ▼d 우종정 지음
260 ▼a 파주 : ▼b 생능출판사, ▼c 2011
300 ▼a 540 p. : ▼b 삽화 ; ▼c 24 cm
504 ▼a 참고문헌(p. 529-530)과 색인수록
945 ▼a KLPA

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.268 2011z3 Accession No. 121207027 Availability Available Due Date Make a Reservation Service B M
No. 2 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.268 2011z3 Accession No. 121207028 Availability Available Due Date Make a Reservation Service B M
No. 3 Location Sejong Academic Information Center/Science & Technology/ Call Number 005.268 2011z3 Accession No. 151304882 Availability Available Due Date Make a Reservation Service M
No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.268 2011z3 Accession No. 121207027 Availability Available Due Date Make a Reservation Service B M
No. 2 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.268 2011z3 Accession No. 121207028 Availability Available Due Date Make a Reservation Service B M
No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Sejong Academic Information Center/Science & Technology/ Call Number 005.268 2011z3 Accession No. 151304882 Availability Available Due Date Make a Reservation Service M

Contents information

Book Introduction

처음 안드로이드 개발에 입문한 개발자가 차근차근 따라하면서 안드로이드 앱을 개발하고 출시하는 과정까지 빠짐없이 알려주고 있다. 즉, 교차 개발 환경 구축, JDK, 안드로이드 SDK, 이클립스를 다운로드하고 설치하는 기초부터 ‘Hello1Demo’라는 이름의 프로젝트를 생성하고 에뮬레이터를 구동해보는 작업까지 세세하게 가르쳐주고 있다. 여기서 가장 기본이 되는 안드로이드 애플리케이션을 구성하는 파일은 무엇이며, 생성된 소스 코드가 무슨 의미를 가지는지를 자상하게 설명한다.

그리고 본격적으로 안드로이드 애플리케이션의 컴포넌트들을 살펴본 후 액티비티와 리소스, 위젯과 레이아웃, 메뉴와 다이어로그, 어댑터와 어댑터 뷰, 인텐트, 그래픽, 스레드와 애니메이션, 데이터 관리, 노트패드, 웹뷰와 구글 지도, 서비스와 방송 수신자에 대해 학습할 수 있도록 자세히 안내한다.

안드로이드 기반의 스마트폰과 태블릿 PC 개발

웹과 함께 성장한 웹 기반의 IT 전문지인 와이어드(Wired)는 2010년 10월 “월드와이드웹은 죽었다.”고 선언했다. 소비자들은 이제 데스크톱에서 웹브라우저 주소창에 ‘www’로 시작하는 주소를 입력해야 하는 불편한 웹보다 언제 어디서나 화면을 터치하면 서비스받을 수 있는 편리한 모바일 앱을 선호하고 있으며, 콘텐츠 기업들도 유료화가 어려운 웹보다 요금을 부과하기 쉬운 앱에 주목하고 있다.
스마트폰은 음성·문자 전송과 같은 기능 외에 인터넷과 메일 등을 사용할 수 있는 보다 향상된 성능과 다양한 앱을 사용할 수 있도록 만들어진 모바일 단말기를 말하며, ‘손 안의 PC’라 불리며 일반 대중의 생활필수품으로 빠르게 확산되고 있다. 또한 태블릿 PC는 스마트폰과 노트북의 기능이 중복되지만 신문, 잡지 등과 같은 도서 열람이 용이하며, 게임이나 동영상 및 음악과 같은 엔터테인먼트 용도로 적합하다. 아울러 이메일 및 서류 작성 등과 같은 사무용 등으로도 간편하게 사용할 수 있기 때문에 모바일 단말기의 새로운 영역을 정의하고 창조하고 있다.
안드로이드의 최대 강점은 플랫폼의 개방과 무료이다. 안드로이드는 모든 소스를 오픈하여 어떤 모바일 단말기 제조사도 안드로이드 SDK를 사용하고 수정해도 라이선스에 문제가 없다. 따라서 일개 회사에 종속적인 애플 아이폰과는 달리 안드로이드는 모든 모바일 단말기뿐만 아니라 임베디드 단말기를 위한 플랫폼으로 널리 사용될 수 있다.
안드로이드의 또 다른 강점은 개발 도구인 안드로이드 SDK의 편의성이다. 개발자를 제대로 지원하지 못하면 성공하기 어렵다. 아이폰 개발 도구는 사용하기 어렵고 주관적일 수 있는 애플리케이션 등록 과정으로 인하여 개발자를 점차 망설여지게 만든다. 모바일 컴퓨팅의 미래가 사용자가 원하는 콘텐츠에 달려 있다면 안드로이드가 모바일 시장에서 승리할 가능성은 매우 크다. 안드로이드 개발 도구의 편의성과 강력함으로 인해 많은 콘텐츠가 개발될 수 있기 때문이다.
이 책은 스마트폰과 태블릿 PC를 이처럼 강력한 안드로이드를 기반으로 개발하기 위해 만들어진 교재로, ‘교차 개발 환경 구축’부터 사용자의 위치에 근거한 정보를 제공하는 매력적인 ‘위치 기반 서비스’까지 기초부터 응용까지 다양하게 제공하고 있다.

안드로이드 2.3에 기반한 안드로이드 프로그래밍 지침서

이 책은 처음 안드로이드 개발에 입문한 개발자가 차근차근 따라하면서 안드로이드 앱을 개발하고 출시하는 과정까지 빠짐없이 알려주고 있다. 즉, 교차 개발 환경 구축, JDK, 안드로이드 SDK, 이클립스를 다운로드하고 설치하는 기초부터 ‘Hello1Demo’라는 이름의 프로젝트를 생성하고 에뮬레이터를 구동해보는 작업까지 세세하게 가르쳐주고 있다. 여기서 가장 기본이 되는 안드로이드 애플리케이션을 구성하는 파일은 무엇이며, 생성된 소스 코드가 무슨 의미를 가지는지를 자상하게 설명한다. 그리고 본격적으로 안드로이드 애플리케이션의 컴포넌트들을 살펴본 후 액티비티와 리소스, 위젯과 레이아웃, 메뉴와 다이어로그, 어댑터와 어댑터 뷰, 인텐트, 그래픽, 스레드와 애니메이션, 데이터 관리, 노트패드, 웹뷰와 구글 지도, 서비스와 방송 수신자에 대해 학습할 수 있도록 자세히 안내한다.
참고로 이 책에서 사용하는 최신 버전인 2.3의 향상된 안드로이드 환경을 살펴보면 다음과 같다.
- 빠른 텍스트 입력, 즉 멀티 터치 키코딩 방식을 적용할 수 있기 때문에 입력 모드를 변경하지 않고서 [Shift]+글자 혹은 [?123]+심볼을 눌러 숫자 혹은 기호 등을 입력할 수 있다.
- 간편해진 선택 및 복사/붙여쓰기, 즉 한 번 터치로 단어를 선택하여 복사 및 붙여쓰기 기능을 사용할 수 있다.
- 향상된 전원 관리, 즉 시스템이 백그라운드 애플리케이션의 전력 소모를 관리하여 성능이 향상되고 배터리 사용 시간이 늘어났다.
- SIP 계정 기능을 제공하여 인터넷 전화 기능을 강화하였다.
- 약 10cm 거리에서 1/10초 만에 안전하게 데이터를 양방향으로 교환할 수 있는 NFC 기능을 지원한다. 따라서 모바일 주문 및 결제와 모바일 마케팅 등 스마트 상거래가 가능하다.
- 자이로스코프와 다양한 종류의 센서와 같은 입력 장치를 지원한다.
- 동시 가비지 컬렉션 기능을 지원함으로써 화면 멈춤 현상을 제거했다.
- NDK에 의해 접근할 수 있는 영역이 확대되어 센서, 오디오, 그래픽 등도 C 혹은 C++로 직접 접근할 수 있어 게임을 위한 시스템 성능이 향상되었다.
- 전면 카메라를 지원한다.
- 태블릿 PC와 같은 큰 화면을 가진 단말기를 위하여 새로운 화면 크기와 밀도를 지원한다.

기초와 실무를 아우르는 대학교재

2007년 애플은 스마트폰인 아이폰을 출시하였고, 2008년 구글은 모바일 플랫폼인 안드로이드를 발표했다. 세계 1위의 모바일 단말기 업체인 노키아도 심비안 플랫폼을 공개하고 적극 공세에 나서고 있다. 노키아뿐이 아니라 내로라하는 모바일 업계는 모두 스마트폰 시장에 뛰어들고 있다.
우리나라의 스마트폰 시장도 모두 안드로이드에 촉각을 곤두세우고 있다. 그러나 국내에 소개된 대부분의 안드로이드 서적은 번역서이며, 초보자부터 실무자에게 도움이 될 만큼 변변하지 못하다.
따라서 일반 휴대폰 분야의 강국이지만 스마트폰에서 한발 늦은 국내 모바일 분야에 일조하고, 또한 급격한 변화와 사회적 요구에 따라 대학생부터 실무 개발자에 이르기까지 기초와 실무에 쉽게 접할 수 있는 교재의 필요성으로 이 책이 나오게 되었다.

이 책의 내용과 특징

이 책은 사회적 요구와 기술의 변화를 능동적으로 반영하여 이론과 실습을 함께 다루며, 자바(Java) 프로그래밍 언어에 대한 기초 지식만 있어도 이해할 수 있도록 저술하였다.
안드로이드에 대한 개념과 개발 환경부터 액티비티, 컨텐트 공급자, 서비스 및 방송 수신자에 이르기까지 각종 애플리케이션을 통하여 쉽게 설명하고 있다. 특히, 모든 장마다 충분한 예제를 제공하고 있으며, 각 예제는 다른 장의 예제와 독립적으로 수행할 수 있는 애플리케이션이기 때문에 앞장을 건너뛰고 학습하더라도 이해할 수 있도록 편집했다.
1장에서는 스마트폰을 위한 인프라인 무선 인터넷과 모바일 플랫폼에 대해 알아보고, 전쟁터가 된 모바일 시장의 현황과 각 업체의 전략을 살펴본다. 또한 현재 가장 유망한 모바일 플랫폼인 안드로이드 플랫폼의 의미와 특징 그리고 아키텍처 등을 살펴보고, 안드로이드의 미래를 조명해본다. 2장에서는 안드로이드 애플리케이션 개발에 필요한 소프트웨어를 알아본 후 웹 사이트에서 다운로드하여 교차 개발 환경을 구축해본다. 개발 환경이 구축되면 간단한 프로젝트를 생성하고 에뮬레이터에 구동시켜본다. 또한 설치한 안드로이드 SDK의 내부 구성 요소의 의미를 알아본다. 3장에서는 애플리케이션 개발을 위한 교차 개발 환경 아래에서 간단한 예제 프로젝트를 생성한 후 프로젝트를 구성하는 파일을 살펴본다. 프로젝트에 포함된 각종 소스 코드의 의미와 구성 파일들의 관계를 알아본다. 또한 외부 리소스를 사용하지 않고 코드로만 문자열을 출력하는 애플리케이션을 작성하고 이를 이해하며 확장 및 응용해본다. 4장에서는 애플리케이션 컴포넌트 중 핵심 요소인 액티비티에 대하여 살펴본다. 액티비티와 애플리케이션의 관계, 프로세스와 태스크에 대한 개념 등을 알아본다. 특히 액티비티에서 사용할 수 있는 메소드의 종류와 액티비티의 생명주기를 살펴본다. 또한 리소스와 R 클래스와의 관계를 서술하며, 코드에서 리소스를 접근하는 방법에 대하여 실습을 통하여 공부하고, 모든 개발자가 직면하는 오류 문제를 효과적으로 대처하기 위하여 안드로이드가 제공하는 DDMS에 대하여 살펴본다.
5장에서는 완전하게 구현된 사용자 인터페이스 객체인 위젯과 위젯을 화면에 배치하는 컨테이너 역할을 하는 레이아웃에 대해 배운다. 6장에서는 메뉴와 다이어로그라는 사용자 인터페이스에 대해 배운다. 메뉴와 다이어로그는 일반적인 위젯과는 달리 화면에 제공된 공간을 희생시키지 않고 사용자와 상호작용할 수 있는 기능을 제공한다. 7장에서는 유사한 데이터 집단을 특별한 방식으로 반복해서 화면에 표시할 수 있는 어댑터라는 인터페이스와 뷰 컨테이너인 어댑터 뷰를 살펴본다. 8장에서는 애플리케이션의 경계를 허무는 인텐트와 한 번에 다수 작업의 수행을 가능하게 하는 스레드 기능을 학습한다. 9장에서는 안드로이드의 그래픽 API를 이용하는 방법과 표준 위젯을 수정하는 방법에 대하여 살펴본다.
10장에서는 한 번에 다수의 작업을 수행할 수 있게 하는 스레드 기능을 학습한다. 또한 앞 장에 이어서 안드로이드의 그래픽 API를 이용하는 애니메이션과 SurfaceView 클래스에 대하여 살펴본다. 11장에서는 안드로이드가 제공하는 영구적인 애플리케이션 데이터를 저장하는 방법인 프레프런스와 데이터베이스를 살펴본다. 또한 안드로이드가 애플리케이션 전용 데이터를 외부에 공개하는 방법인 컨텐트 공급자에 대하여 살펴본다. 12장에서는 앞 장에서 구축한 DB를 SQLite3 명령어를 통해 접근한 후 안드로이드가 제공하는 투토리얼을 위한 대표적 예제인 노트패드 프로젝트에 대하여 분석하고 학습한다. 13장에서는 웹 검색에 대한 기초적 내용과 구글이 제공하는 지도 서비스, 위치 기반 서비스에 대하여 살펴본다. 14장에서는 사용자와 직접적으로 상호작용하진 않지만 모바일 단말기에서 사용자 지원을 위하여 필수적인 컴포넌트인 서비스와 방송 수신자에 대하여 살펴본다. 아울러 서비스와 방송 수신자와 유사하게 백그라운드 프로세스를 이용하여 실행하는 노티피케이션과 알람에 대하여 살펴본다.


Information Provided By: : Aladin

Author Introduction

우종정(지은이)

경북대학교 컴퓨터공학과에서 학사 과정을 마친 후 University of Texas at Austin 에서 공학 석사 및 공학 박사를 취득했다. 산업연구원에서 연구원 및 책임연구원으로 재직했으며, 미국 IBM 에서 PowerPC 개발에도 참여했다. 현재 성신여자대학교 컴퓨터공학과 교수로 재직 중이다. 저서로는 『IT CookBook, 컴퓨터 아키텍처』(한빛아카데미, 2014), 『CDMA 이동통신을 위한 휴대폰 프로그래밍』(홍릉과학출판사, 2007) 등이 있고, 역서로는 『디지털 시스템 설계 및 VHDL』(인터비젼, 1999), 『Java 프로그래밍의 이해』(피어슨에듀케이션, 2002 ) 등이 있으며, 임베디드시스템과 모바일 기술 분야의 논문이 다수 있다.

Information Provided By: : Aladin

Table of Contents

목차
CHAPTER 01 안드로이드 둘러보기
 1.1 모바일 단말기와 무선 인터넷 = 12
 1.2 모바일 플랫폼 = 17
 1.3 모바일 시장은 전쟁터 = 19
 1.4 안드로이드 개요 = 27
 1.5 안드로이드 아키텍처 = 29
 1.6 안드로이드 애플리케이션 = 32
 1.7 안드로이드의 발전과 미래 = 37
 연습문제 = 41
CHAPTER 02 개발 환경 구축
 2.1 교차 개발 환경 = 44
 2.2 툴체인 다운로드 = 46
 2.3 JDK와 안드로이드 SDK 설치 = 50
 2.4 이클립스 설치 및 설정 = 56
 2.5 가상 단말기 AVD = 66
 2.6 안드로이드 SDK 둘러보기 = 71
 2.7 안드로이드 에뮬레이터 조작하기 = 73
 연습문제 = 76
CHAPTER 03 안드로이드 프로그램의 첫걸음
 3.1 프로젝트 생성하기 = 78
 3.2 프로젝트 파일 및 소스 코드 이해 = 84
 3.3 코드로 문자열 표시하기 = 96
 3.4 문자열 출력 프로그램 응용 = 100
 연습문제 = 109
CHAPTER 04 액티비티와 리소스
 4.1 액티비티의 이해 = 112
 4.2 리소스의 이해 = 118
 4.3 리소스의 응용 = 127
 4.4 애플리케이션 디버깅 = 137
 연습문제 = 147
CHAPTER 05 위젯과 레이아웃
 5.1 뷰 = 150
 5.2 위젯 = 154
 5.3 레이아웃 = 171
 연습문제 = 186
CHAPTER 06 메뉴와 다이어로그
 6.1 메뉴 = 188
 6.2 다이어로그 = 205
 연습문제 = 220
CHAPTER 07 어댑터와 어댑터 뷰
 7.1 어댑터 = 222
 7.2 어댑터 뷰 = 227
 7.3 리스트 뷰 = 229
 7.4 어댑터 응용 = 246
 연습문제 = 261
CHAPTER 08 인텐트
 8.1 프로젝트에 액티비티와 퍼미션 추가 = 264
 8.2 인텐트 개요 = 271
 8.3 인텐트 객체와 인텐트 필터 = 277
 8.4 인텐트의 활용 = 284
 연습문제 = 300
CHAPTER 09 그래픽
 9.1 개요 = 302
 9.2 캔버스에 그리기 = 303
 9.3 뷰 객체에 그리기 = 316
 9.4 위젯의 수정 = 331
 연습문제 = 337
CHAPTER 10 스레드와 애니메이션
 10.1 스레드 = 340
 10.2 애니메이션 = 356
 10.3 서피스 뷰 = 370
 연습문제 = 378
CHAPTER 11 데이터 관리
 11.1 프레퍼런스 = 380
 11.2 데이터베이스 = 385
 11.3 컨텐트 공급자 = 400
 연습문제 = 414
CHAPTER 12 노트패드
 12.1 SQLite3 명령어 = 416
 12.2 노트패드 개요 = 418
 12.3 노트패드 프로젝트 버전 1 = 418
 12.4 노트패드 프로젝트 버전 2 = 430
 12.5 노트패드 프로젝트 버전 3 = 441
 연습문제 = 448
CHAPTER 13 웹뷰와 구글 지도 
 13.1 웹뷰 = 450
 13.2 맵뷰와 맵액티비티 = 457
 13.3 위치 기반 서비스 = 468
 13.4 지도 응용 = 476
 연습문제 = 489
CHAPTER 14 서비스와 방송 수신자 
 14.1 노티피케이션 = 492
 14.2 방송 수신자 = 503
 14.3 알람 = 516
 14.4 서비스 = 520
 연습문제 = 528
참고문헌 = 529
찾아보기 = 530

New Arrivals Books in Related Fields

한국정보기술연구원 (2022)
한국정보기술연구원 (2021)
Lerner, Reuven (2021)
천인국 (2022)