본문내용 바로가기
MD의선택 무료배송 이벤트 한정판매 소득공제

실무에 바로 적용하는 안드로이드 프로그래밍

제이펍의 모바일 시리즈 31 | 2판
클로버 리뷰쓰기

이 책의 다른 상품 정보

  • 정가 : 36,000원
    판매가 : 32,400 [10%↓ 3,600원 할인]
  • 통합포인트 :
    [기본적립] 1,800원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2천원 추가적립 안내 [회원혜택] 실버등급 이상, 3만원 이상 구매 시 2~4% 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    12월 04일 출고 예정 배송일정 안내

알립니다.

  • 출판사 품절로 한정 수량 판매, 조기 품절 될 수 있습니다.

이 책의 이벤트 해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

  • 개발자로 입문하기: 일단 이것부터 읽어보자!
    2019.05.31 ~ 2020.12.31
  • 제이펍의 도서를 한 눈에 살펴보세요
    2017.11.23 ~ 2020.12.31
상품상세정보
ISBN 9791185890562(1185890564)
쪽수 792쪽
크기 188 * 245 * 31 mm /1366g 판형알림
원서명/저자명 Android Programming: The Big Nerd Ranch Guide(2nd ed.)/Bill Phillips

책소개

이 책이 속한 분야

안드로이드 앱을 능숙하게 개발하는 데 필요한 교육 훈련을 제공하다!

[안드로이드 프로그래밍]은 빅 너드 랜치(Big Nerd Ranch)의 유명한 안드로이드 훈련 캠프 과정의 노하우를 기반으로 한 것으로, 최신 안드로이드의 핵심적인 개념을 배울 수 있고, API에 관한 명쾌한 설명과 더불어 직접 애플리케이션을 작성하면서 안드로이드 프로그래밍의 기초부터 고급 기법까지 배울 수 있도록 구성한 책이다. 책은 안드로이드 애플리케이션 개발에 필요한 실제적인 기법을 가르치는 데 초점을 둔다. 각 장의 설명과 프로젝트는 안드로이드 애플리케이션 개발을 시작하는 데 필요한 지식과 경험을 제공하기 위해 설계되고 테스트되었다.

목차

1장 처음 만드는 안드로이드 애플리케이션 1
앱 기본사항 2
안드로이드 프로젝트 생성하기 3
사용자 인터페이스 레이아웃 만들기 10
레이아웃 XML에서 뷰 객체로 18
위젯을 코드와 연결하기 22
토스트 만들기 27
에뮬레이터에서 실행하기 29
안드로이드 앱 빌드 절차 41

2장 안드로이드와 모델-뷰-컨트롤러 45
새로운 클래스 만들기 46
모델-뷰-컨트롤러와 안드로이드 49
뷰 계층 수정하기 51
컨트롤러 계층 수정하기 54
장치에서 실행하기 59
아이콘 추가하기 62
챌린지 66
챌린지: 리스너를 TextView에 추가하기 67
챌린지: 이전 버튼 추가하기 67
챌린지: Button을 ImageButton으로 변경하기 68

3장 액티비티 생명주기 71
액티비티 생명주기 로깅하기 73
장치 회전과 액티비티 생명주기 79
장치 회전 시 데이터 저장하기 84
액티비티 생명주기 다시 알아보기 86
onSaveInstanceState(Bundle) 테스트하기 88
로깅 레벨과 관련 메서드들 90

4장 안드로이드 앱의 디버깅 91
예외와 스택 기록 92
안드로이드 특유의 디버깅 102

5장 두 번째 액티비티 만들기 107
두 번째 액티비티 준비하기 108
액티비티 시작시키기 116
액티비티 간의 데이터 전달 119
안드로이드가 액티비티를 어떻게 알까? 130
챌린지 132

6장 안드로이드 SDK 버전과 호환성 135
안드로이드 SDK 버전 135
호환성과 안드로이드 프로그래밍 137
안드로이드 개발자 문서 사용하기 143
챌린지: 빌드 버전 보여주기 146

7장 UI 프래그먼트와 프래그먼트 매니저 147
UI 유연성의 필요 148
프래그먼트 개요 149
CriminalIntent 앱 개발 시작하기 150
UI 프래그먼트의 호스팅 161
UI 프래그먼트 생성하기 165
UI Fragment를 FragmentManager에 추가하기 171
프래그먼트 사용 시의 애플리케이션 아키텍처 177
지원 라이브러리의 프래그먼트가 좋은 이유 178
각 안드로이드 버전의 표준 라이브러리 사용 179

8장 레이아웃과 위젯으로 사용자 인터페이스 생성하기 181
Crime 업그레이드하기 181
레이아웃 변경하기 183
위젯을 코드와 연결하기 185
XML 레이아웃 속성 더 자세히 알아보기 186
그래픽 레이아웃 도구 사용하기 191
챌린지: 날짜의 형식 만들기 201

9장 RecyclerView로 리스트 보여주기 203
CriminalIntent의 모델 계층 변경하기 205
프래그먼트의 호스팅을 위한 추상 액티비티 208
RecyclerView, Adapter, ViewHolder 214
리스트 항목의 커스터마이징 223
리스트 항목 선택에 응답하기 229
ListView와 GridView 231
싱글톤 231

10장 프래그먼트 인자 사용하기 233
프래그먼트로부터 액티비티 시작시키기 234
프래그먼트 인자 239
리스트를 다시 로드하기 242
프래그먼트로부터 결과 받기 244
챌린지: 효율적으로 RecyclerView를 다시 로드하기 245
프래그먼트 인자를 사용하는 이유가 뭘까? 246

11장 ViewPager 사용하기 247
CrimePagerActivity 생성하기 249
FragmentStatePagerAdapter vs. FragmentPagerAdapter 255
ViewPager가 실제로 동작하는 방법 257
코드에서 뷰의 레이아웃 처리하기 258

12장 대화상자 261
AppCompat 라이브러리 262
DialogFragment 생성하기 263
두 프래그먼트 간에 데이터 전달하기 271
챌린지: 더 많은 대화상자 만들기 282
챌린지: 응답 가능한 DialogFragment 282

13장 툴바 283
AppCompat 라이브러리 284
메뉴 287
계층적 내비게이션 활성화하기 298
대체 액션 항목 300
툴바 vs 액션 바 306
챌린지: 범죄 데이터 삭제하기 306
챌린지: 복수형 문자열 리소스 307
챌린지: 텅 빈 RecyclerView 307

14장 SQLite 데이터베이스 309
스키마 정의하기 310
데이터베이스 생성하기 312
CrimeLab의 코드 삭제 317
데이터베이스에 데이터 쓰기 318
데이터베이스의 데이터 읽기 321
애플리케이션 컨텍스트 328
챌린지: 범죄(Crime) 데이터 삭제하기 329

15장 암시적 인텐트 331
버튼 추가하기 332
모델 계층에 용의자 추가하기 335
포맷 문자열 사용하기 337
암시적 인텐트 사용하기 339
챌린지: ShareCompat 351
챌린지: 또 다른 암시적 인텐트 351

16장 인텐트를 사용한 사진 찍기 353
사진을 위한 장소 353
외부 스토리지 358
카메라 인텐트 사용하기 361
비트맵 크기 조정과 보여주기 364
사용할 장치 기능 선언하기 368
Include 사용하기 369
챌린지: 큰 사진 보여주기 369
챌린지: 효율적으로 섬네일 이미지 로드하기 370

17장 다중 패널 마스터-디테일 인터페이스 371
레이아웃의 유연성 추가하기 373
프래그먼트의 보스인 액티비티 380
장치 크기 결정에 관해 추가로 알아보기 391

18장 에셋 393
리소스 형태가 아닌 에셋 394
BeatBox 생성하기 394
에셋 가져오기 399
에셋 알아내기 401
에셋 사용 코드 추가하기 404
에셋 파일 액세스하기 407
openNonAssetFd(...) 메서드 407

19장 SoundPool을 사용한 오디오 재생 409
SoundPool 생성하기 410
음원 로드하기 411
음원 재생하기 413
음원 클린업하기 415
장치의 방향 회전과 객체의 지속성 416
유보를 할 것인가 말 것인가 421
장치 회전 처리 시의 추가 고려 사항 421

20장 스타일과 테마 425
색상 리소스 426
스타일 426
테마 430
테마 색상 추가하기 432
테마 속성 오버라이드하기 434
버튼 속성 변경하기 439
스타일 상속을 추가로 알아보기 442
테마 속성 사용하기 442
챌린지: 적합한 기본 테마 443

21장 XML drawables 445
균일한 버튼 만들기 446
형태 drawable 447
상태 리스트 drawable 449
레이어 리스트 drawable 451
XML drawable을 사용해야 하는 이유 452
9-patch 이미지 453
Mipmap 이미지 458

22장 인텐트와 태스크 461
NerdLauncher 준비하기 462
암시적 인텐트 해결하기 465
런타임 시에 명시적 인텐트 생성하기 470
태스크와 Back 스택 472
NerdLauncher를 홈 화면으로 사용하기 477
챌린지: 앱 아이콘 사용하기 478
프로세스 vs. 태스크 479
동시 문서 482

23장 HTTP & 백그라운드 태스크 485
PhotoGallery 생성하기 487
네트워킹 기본 490
AsyncTask를 사용해서 백그라운드 스레드로 실행하기 492
Main 스레드 494
플리커에서 JSON 가져오기 497
AsyncTask로부터 main 스레드로 돌아오기 505
AsyncTask 클린업하기 509
AsyncTask에 관해 추가로 알아보기 510
AsyncTask의 대안 511
챌린지: Gson 512
챌린지: 페이징 513
챌린지: 열의 개수를 동적으로 조정하기 513

24장 Looper, Handler, HandlerThread 515
이미지를 보여주기 위해 RecyclerView 준비하기 515
다운로드 관련 고려 사항들 518
main 스레드와 소통하기 519
백그라운드 스레드 만들기 521
메시지와 메시지 핸들러 524
AsyncTask vs. Threads 536
챌린지: 프리로딩과 캐싱 536
이미지 다운로딩 관련 문제 해결하기 537

25장 검색 539
플리커 검색하기 540
SearchView 사용하기 545
공유 프레퍼런스를 사용한 간단한 데이터 보존 551
앱 다듬기 555
챌린지: 다듬기 한 번 더! 556

26장 백그라운드 서비스 557
IntentService 생성하기 557
서비스의 필요성 561
새로운 결과 찾기 563
AlarmManager를 사용한 지연 실행 565
알람 제어하기 570
통지(알림) 573
챌린지: 안드로이드 웨어의 통지 577
서비스 자세히 알아보기 578
JobScheduler와 JobServices 582
동기 어댑터 585
챌린지: JobService 사용하기 587

27장 브로드캐스트 인텐트 589
일반 인텐트 vs. 브로드캐스트 인텐트 589
장치 부팅 시 앱 깨우기 590
포그라운드 통지의 필터링 596
수신자와 오래 실행되는 태스크 608
로컬 이벤트 609
프래그먼트의 가시성 검출하기 611

28장 웹과 웹뷰의 브라우징 613
플리커 데이터에서 하나 더 알아둘 사항 614
쉬운 방법: 암시적 인텐트 616
더 어려운 방법: WebView 618
WebView에서의 올바른 방향 전환 처리 625
자바스크립트 객체 추가하기 627
킷캣의 WebView 기능 향상 628
챌린지: 브라우저 검색 기록에 Back 버튼 사용하기 629
챌린지: Non-HTTP 링크 지원하기 629

29장 커스텀 뷰와 터치 이벤트 631
DragAndDraw 프로젝트 설정하기 632
커스텀 뷰 생성하기 634
터치 이벤트 처리하기 637
onDraw(...) 내부에서 렌더링하기 642
챌린지: 상태 정보 저장하기 645
챌린지: 박스의 방향 회전 645

30장 속성 애니메이션 647
장면 생성하기 647
간단한 속성 애니메이션 651
여러 애니메이터를 함께 사용하기 659
다른 애니메이션 API 661
챌린지 662

31장 위치와 플레이 서비스 663
위치와 라이브러리 664
Locatr 프로젝트 생성하기 665
플레이 서비스와 위치 테스트를 위한 에뮬레이터 준비하기 666
Locatr 만들기 671
구글 플레이 서비스 설정하기 674
구글 플레이 서비스 사용하기 676
플리커 사이트 이미지의 지리 데이터 검색 679
위치 데이터 얻기 679
플리커 이미지를 찾아 보여주기 682
챌린지: 진척도 보여주기 685

32장 구글 맵 687
플레이 서비스 맵 라이브러리 import하기 687
안드로이드의 맵 사용 688
맵 API 설정하기 689
맵 설정하기 694
더 많은 위치 데이터 얻기 696
맵 사용하기 699

33장 머티리얼 디자인 705
머티리얼 서피스 706
애니메이션 도구 711
뷰 컴포넌트 717

34장 책을 마무리하며 723
마지막 챌린지 723
부담 없는 연락처 724
감사합니다 724

부록 A 에뮬레이터에서 한글 사용하기 725
한글 출력하기 725
한글 입력하기 729
애플리케이션에서 한글 입출력하기 732

찾아보기 735

추천사

마이크 쉐이버(페이스북 모바일엔지니어링 임원)

빅 너드 랜치에서는 수많은 개발자가 안드로이드 앱을 능숙하게 개발하는 데 필요한 교육 훈련을 제공하고 있다. 이 책은 그 교육의 진수를 모아놓은 것이며, 자신의 실력을 향상하고자 하는 누구에게나 큰 도움을 줄 것이다.

제임스 스틸(작가)

안드로이드에 입문하려는 개발자는 물론이고 어느 정도 경험 있는 개발자도 꼭 읽어야 할 책이다. 나는 이 책의 명쾌함에 감명을 받았다. 안드로이드의 쉽고 어려운 주제 모두를 정말 이해하기 쉽게 설명하고 있다. (《Android... 더보기

책 속으로

안드로이드 애플리케이션을 실행하려면 스마트폰이나 태블릿 등과 같은 실제 장치나 안드로이드 가상 장치(Android Virtual Device, AVD) 중 하나가 필요하다. AVD는 안드로이드 SDK에 포함되어 함께 배포되며, 각 실제 장치와 동일한 런타임 환경으로 실행될 수 있도록 에뮬레이터로 생성되어야 한다. 즉, 에뮬레이터는 실제 장치에서 실행되는 안드로이드 운영체제와 거의 유사하며, 쉽게 말해 개발 컴퓨터에서 안드로이드 운영체제가 따로 실행된다고 보면 된다.
_29

지금부터는 우리가 액티비티 사이를 이동할 때 안드로이... 더보기

출판사 서평

책 소개
아마존 No. 1 안드로이드 서적!

이 책은 빅 너드 랜치(Big Nerd Ranch)의 유명한 안드로이드 훈련 캠프 과정의 노하우를 기반으로 집필되었다. 따라서 안드로이드 프로그래밍에 필요한 지식이나 기법을 단순히 나열하고 알려주는 것이 아니라, 여러분이 직접 앱을 만들어가면서 관련 지식이나 기법들을 단계적으로 이해하고 배울 수 있도록 이끌어준다.

출판사 서평
아마존 No. 1 안드로이드 서적!
8개의 앱을 직접 만들며 배우는 안드로이드 프로그맹!

이 책은 빅 너드 랜치(Big Nerd Ranch)... 더보기

Klover 리뷰 (0)

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면
결제 90일 이내 300원, 발송 후 5일 이내 400원, 이 상품의 첫 리뷰 500원의 포인트를 드립니다.

포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
북로그 리뷰는 본인인증을 거친 회원만 작성 가능합니다.
(※ 외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외) 안내
  • 해당도서의 리뷰가 없습니다.

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품