¾Èµå·ÎÀÌµå ³¹Àå-Åë.PDF

Similar documents
°æÁ¦Àü¸Á-µ¼º¸.PDF

09 강제근로의 금지 폭행의 금지 공민권 행사의 보장 중간착취의 금지 41 - 대판 , 2006도7660 [근로기준법위반] (쌍용자동차 취업알선 사례) 11 균등대우의 원칙 43 - 대판 , 2002도3883 [남녀고용평등법위


INDUS-8.HWP

CONTENTS.HWP

<BFDCB1B9C0CE20C5F5C0DAB1E2BEF7C0C720B3EBBBE7B0FCB0E82E687770>

세계 비지니스 정보

C++ Programming

언리얼엔진4_내지_ indd

<C1A4C3A5BFACB1B D3420C1A4BDC5C1FAC8AFC0DAC0C720C6EDB0DFC7D8BCD220B9D720C0CEBDC4B0B3BCB1C0BB20C0A7C7D120B4EBBBF3BAB020C0CEB1C720B1B3C0B020C7C1B7CEB1D7B7A520B0B3B9DF20BAB8B0EDBCAD28C7A5C1F6C0AF292E687770>

untitled


< BACFC7D1B1B3C0B0C1A4C3A5B5BFC7E228B1E2BCFABAB8B0ED D D20C6EDC1FD2035B1B32E687770>

C++ Programming

00-1표지

<3036C7E2BCF6C3D6C1BEBABB2E687770>

표1

경제통상 내지.PS

°æÁ¦Åë»ó³»Áö.PDF

우루과이 내지-1

제 출 문 중소기업청장 귀하 본 보고서를 중소기업 원부자재 구매패턴 조사를 통한 구매방식 개선 방안 연구 의 최종보고서로 제출합니다 한국산업기술대학교 산학협력단 단 장 최 정 훈 연구책임자 : 이재광 (한국산업기술대학교 부교수) 공동연구자 : 노성호


영암군 관광종합개발계획 제6장 관광(단)지 개발계획 제7장 관광브랜드 강화사업 1. 월출산 기( 氣 )체험촌 조성사업 167 (바둑테마파크 기본 계획 변경) 2. 성기동 관광지 명소화 사업 마한문화공원 명소화 사업 기찬랜드 명소화 사업 240

[96_RE11]LMOs(......).HWP

사물인터넷비즈니스빅뱅_내지_11차_ indd

13Åë°è¹é¼Ł

법학박사학위논문 실손의료보험연구 2018 년 8 월 서울대학교대학원 법과대학보험법전공 박성민



À̶õ°³È²³»Áö.PDF

워드프레스(김대중)_내지_최종.indd

iOS ÇÁ·Î±×·¡¹Ö 1205.PDF

改正稅法 企劃財政部

통신1310_01-도비라및목차1~9

C O N T E N T S 목 차 요약 / 1 I. 중남미화장품시장현황 / 3 Ⅱ. 주요국별시장정보 / 9 ( 트렌드 유통망 인증 ) 1. 브라질 / 9 2. 멕시코 / 콜롬비아 / 칠레 / 64 Ⅲ. 우리기업진출전략 / 79 # 첨부. 화장품관

*통신1802_01-도비라및목차1~11




<5BC6EDC1FD5DBEEEBEF7C0CCC1D6B3EBB5BFC0DAC0CEB1C7BBF3C8B2BDC7C5C2C1B6BBE7C3D6C1BEBAB8B0EDBCAD28BAB8C0CCBDBABEC6C0CC292E687770>

<4D F736F F D20B4EBBFF BFB5BEF7BAB8B0EDBCAD2E646F63>

< B3E22032BAD0B1E220C4DCC5D9C3F7BBEABEF7B5BFC7E2BAD0BCAEBAB8B0EDBCAD28C3D6C1BE292E687770>

< B3E220C7CFB9DDB1E2BACEC5CD20C0CCB7B8B0D420B4DEB6F3C1FDB4CFB4D E687770>

israel-내지-1-4

이상한 나라의 앨리스.pages

저작자표시 - 비영리 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 이차적저작물을작성할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물

2005 중소기업 컨설팅 산업 백서

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

<BCADBFEFBDC3BFA9BCBAB0A1C1B7C0E7B4DC5FBCADBFEFBDC320B0F8B5BFC0B0BEC6C1F6BFF8BBE7BEF7C0C720C1F6BCD3B0A1B4C9BCBA20B9E6BEC8BFACB1B828BCF6C1A E687770>


교육정책연구 2005-지정-52 공무원 채용시험이 대학교육, 노동시장에 미치는 영향분석 및 공무원 채용제도 개선방안 연구책임자 : 오 호 영 (한국직업능력개발원 부연구위원) 이 정책연구는 2005년도 교육인적자원부 인적자원개발 정책연구비 지원에 의 한

ÄÄÅõ½º_ÃÖÁ¾ IR00609

Microsoft PowerPoint - chap01-C언어개요.pptx

JVM 메모리구조

<BAD2B9FDBAB9C1A620BAB8B0EDBCAD5FC5EBC7D55F FB9DFB0A3BBE7C6F7C7D45F33C2F720B1B3C1A428B1D7B8B22020C3DFC3E2292E687770>

<5B33B9F8B0FAC1A65D20B9E6BCDBBDC9C0C7BDC3BDBAC5DB20B0B3BCB1B9E6BEC8BFACB1B82DC3D6C3D6C1BE2E687770>

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할

연구요약 1. 서론 연구의 목적 본 연구는 청소년 교육정책의 바람직한 방향을 설정하고, 미래지향적인 정책과제와 전략, 그리고 비전을 도출하기 위해 수행되었다. 이를 위해 지 난 15년간의 청소년 교육 환경 및 정책의 변화를 분석하고, 향후 15년간 의 청소년 교육 환경

그린홈이용실태및만족도조사

직업편-1(16일)

제 출 문 환경부장관 귀하 본 보고서를 폐기물관리 규제개선 방안연구 에 관한 최종보고서로 제출합니다 연구기관 한국산업폐기물처리공제조합 연구책임자 연 구 원 연구보조원 이 남 웅 황 연 석 은 정 환 백 인 근 성 낙 근 오 형 조 부이사장 상근이사 기술팀장 법률팀장 기

*통신1604_01-도비라및목차1~12

<C0FCB9AE20B1E2BCFA20BFDCB1B9C0CEB7C220B3EBB5BFBDC3C0E520BAD0BCAE2E687770>

정책연구개발사업 2010-위탁 대학 등록금의 합리적 책정을 위한 실행방안 연구 연 구 책 임 자 공 동 연 구 자 송동섭(단국대학교) 이동규(충남대학교) 이창세(재능대학) 한창근(인하공업전문대학) 연 구 협 력 관 장미란(교육과학기술부) 교육과학기술부 이 연구는 201

태평양도서국 개황.PS

<BEC6BFF4BCD2BDCCBAB8B0EDBCAD28C3D6C1BE E687770>


untitled

Àç°¡ »êÀçÀå¾ÖÀÎÀÇ ÀçÈ°ÇÁ·Î±×·¥¿¡ °üÇÑ¿¬±¸.HWP

02-출판과-완성

*통신1510_01-도비라및목차1~12

차세대창의발명교육모델구축연구 특허청 한국발명진흥회

PHI Research Paper PHI 연구보고서 건강검진은 어떻게 산업 이 되었나? 출판일 2015년 9월 20일 편집인 박 유 경 (시민건강증진연구소 연구원) 공동저자 김 명 희 (시민건강증진연구소 연구원) (가나다 순) 김 창 엽 (

99-18.hwp

미얀-내지-8차

서현수

i


SIGIL 완벽입문

0


2010회계연도 결산시정요구사항 조치결과 분석

장애인통계-0110-최종.hwp

,702 16,576 16, ,967 2,890 2, ,768 18,655 18,

본책- 부속물


장애인건강관리사업

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.


제 출 문 노동부 장관 귀하 본 보고서를 노동부 수탁연구과제 문화 예술산업 근로실태 조사 및 근로 자 보호방안 의 최종보고서로 제출합니다 한국노동연구원 원장 박 기 성

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할


저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할

<C0FCB9AEB1E2BCFA20BFDCB1B9C0CEB7C220B3EBB5BFBDC3C0E520BAD0BCAE2E687770>

슬라이드 1

세계 비지니스 정보

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할

U-Korea 선도사업 평가


Transcription:

초판 1 쇄발행 2011 년 3 월 11 일 지은이박승제 펴낸이장성두 책임편집안주연 본문디자인초심디자인 표지디자인미디어픽스 주소경기도파주시교하읍파주신도시에이 15-1 블록한빛마을휴먼빌 201-502 전화 070-8201-9010 팩스 02-6280-0405 홈페이지 www.jpub.kr 펴낸곳제이펍 출판신고 2009 년 11 월 10 일제 406-2009-000087 호 용지신승지류유통 인쇄해외정판사 제본춘산제본 ISBN 978-89-94506-13-5 (13560) 값 27,000 원 이책은저작권법에따라보호를받는저작물이므로무단전재와무단복제를금지하며, 이책내용의전부또는일부를이용하려면반드시저작권자와제이펍의서면동의를받아야합니다. 잘못된책은구입하신서점에서바꾸어드립니다. 제이펍은독자여러분의책에관한아이디어와원고투고를기다리고있습니다. 책으로펴내고자하는아이디어나원고가있으신분은책에대한간단한개요와차례, 구성과저 ( 역 ) 자약력등을메일로보내주세요. ( 보내실곳 : jeipub@gmail.com)

차례 1 시작하기 1 1.1 시작하기에앞서 2 1.2 스무고개 3 1.2.1 프로그램요구사항 4 1.2.2 프로그램의구현에필요한요소 4 1.2.3 새로운프로젝트시작 4 1.2.4 View 디자인 6 1.2.5 Main Activity 영역의구분 8 1.2.6 난수발생하기 9 1.2.7 버튼의리스너작성 10 1.2.8 프로그램작성 11 1.3 제비뽑기 14 1.3.1 프로그램요구사항 14 1.3.2 프로그램구현에필요한요소 14 1.3.3 View 디자인 14 1.3.4 버튼의리스너공유 16 1.3.5 버튼의 Tag 속성활용 18 1.4 윷놀이 (1) 20 1.4.1 윷놀이경우의수와발생확률 20 1.4.2 프로그램요구사항 21 1.4.3 프로그램의구현에필요한알고리즘 21 1.4.4 View 디자인 22 1.4.5 프로그램작성 25 1.5 윷놀이 (2) 26 1.5.1 처리조건 26 1.5.2 View 디자인 27 1.5.3 프로그램작성 29 iv

차례 2 Canvas 와 Bitmap 다루기 31 2.1 사용자 View 만들기 32 2.1.1 사용자 View 의영역구분 33 2.1.2 단말기의해상도구하기 34 2.2 화면의해상도표시 35 2.3 캐릭터그리기 37 2.3.1 캐릭터의기준위치설정 38 2.3.2 캐릭터그리기 39 2.4 캐릭터움직이기 41 2.4.1 Handler 사용 42 2.4.2 캐릭터와벽과의충돌처리방법 42 2.4.3 충돌후캐릭터의반사 43 2.4.4 캐릭터가벽을통과하는경우 46 2.4.5 캐릭터의애니메이션 47 2.5 Touch로캐릭터제어하기 50 2.5.1 소스프로그램에 Touch Event 삽입하기 50 2.5.2 Touch 로캐릭터의위치이동하기 52 2.5.3 Touch Move로이동방향과속도바꾸기 53 2.6 Canvas의 Method 55 2.6.1 Canvas 변형메서드 57 2.6.2 비트맵회전 60 2.6.3 아날로그시계만들기 64 2.6.4 오뚝이 71 2.6.5 Touch Move 로오뚝이회전방향바꾸기 76 2.7 캐릭터 Touch 여부의판정 77 2.7.1 사각형영역 Touch 판단하기 77 2.7.2 원의내부 Touch 판단하기 83 2.7.3 부채꼴영역의안쪽판별하기 84 2.8 이미지의가공 91 2.8.1 이미지자르기 91 2.8.2 사진섞기 96 v

3 Class 와 ArrayList 99 3.1 Class 의사용목적 100 3.2 Record형의자료 100 3.2.1 Object로서의 Class 101 3.3 ArrayList 105 3.3.1 Class의생성과제거 106 3.3.2 천천히사라지는이미지 114 4 SurfaceView 와 Thread 121 4.1 SurfaceView 는무엇인가? 122 4.2 SurfaceView 만들기 125 4.3 Thread 만들기 128 4.3.1 SurfaceView 와 Thread의연결 129 4.3.2 Thread의본체 130 4.3.3 main.xml에서설정할내용 131 4.4 SurfaceView 와 Thread 에서의작업 132 4.4.1 Thread 안전하게끝내기 138 4.5 SurfaceView 에서새로운 Class 사용하기 139 4.5.1 풍선터뜨리기 140 4.5.2 SurfaceView 에서두개이상의 Class 사용하기 149 4.6 메뉴로게임제어하기 156 4.6.1 메뉴의종류 156 4.6.2 옵션메뉴만들기 157 4.6.3 Thread의일시정지 / 재시작 / 완전종료 160 4.7 예외상황에대한대책 172 4.7.1 Activity 생명주기 172 4.7.2 예외상황처리 175 vi

차례 5 슈팅게임의기본원리 177 5.1 캐릭터의충돌판단 178 5.2 슈팅게임의공통요소 179 5.3 총알의발사와충돌판정 179 5.4 점수표시방법 190 5.5 점수에그래픽폰트사용하기 194 5.6 제한시간의도입 199 5.7 적과의충돌판정, 무적상태 203 5.8 스테이지넘어가기 224 5.8.1 블록디자인 224 5.8.2 스테이지디자인 226 5.8.3 Block() Class 만들기 227 5.8.4 Ball() Class 228 5.8.5 Paddle() Class 229 5.8.6 볼과벽돌의충돌판정 229 5.8.7 볼과패들의충돌 230 6 실전앱만들기 1 - 슬라이딩퍼즐 247 6.1 프로그램의개발목표 248 6.1.1 프로젝트의시작 249 6.1.2 프로그램의구성 249 6.1.3 변수명과메서드작성규칙 252 6.1.4 View 디자인 253 6.2 프로젝트기본틀만들기 254 6.2.1 새로운프로젝트시작 254 6.2.2 옵션메뉴작성 259 6.3 게임의기본흐름 261 6.3.1 사진의비율맞추기 261 6.3.2 사진섞기와치환 262 6.3.3 배열사용하기 263 6.3.4 준비물과스테이지진행순서 264 vii

6.4 프로그램작성 264 6.4.1 프로그램작업영역의구분 264 6.4.2 기본변수설정과배경이미지읽기 265 6.4.3 Slice 번호섞기 270 6.4.4 Slice() Class 만들기 272 6.4.5 Slice() Class를배열에넣고출력하기 275 6.4.6 Touch 로 Slice 이동하기 276 6.5 Slice의이동횟수, 경과시간표시 280 6.5.1 그래픽폰트준비 280 6.5.2 Score() Class 작성 281 6.5.3 Score() Class 를 View에표시하기 284 6.6 배경화면애니메이션 287 6.6.1 눈애니메이션 287 6.6.2 풍선애니메이션 292 6.7 게임의 Save와 Load 298 6.7.1 Game Save 298 6.7.2 Game Load 300 6.8 게임마무리 303 6.8.1 메시지표시 303 6.8.2 다음스테이지로이동 305 6.8.3 옵션메뉴의완성 306 6.9 Application 레벨의전역변수사용 309 6.9.1 전역변수 Class 작성 309 6.9.2 MyGameView() 의마지막손질 313 6.10 게임도입부분만들기 341 6.10.1 StartGameActivity 341 6.10.2 Options Activity 344 6.10.3 PhotoGallery 350 6.10.4 기타 Activity 353 6.11 게임을마무리하며 354 6.12 예외상황에대한처리 355 viii

차례 7 실전앱만들기 2 - 슈팅게임 359 7.1 프로젝트의시작 360 7.1.1 스토리보드 360 7.1.2 프로그램의기본모델 360 7.1.3 캐릭터의움직임과맵 (Map) 361 7.1.4 게임의전체적인구성 362 7.1.5 캐릭터의이동방향 363 7.1.6 캐릭터의이동방향과속도 365 7.2 맵의구성 366 7.2.1 경로 368 7.2.2 Selection 370 7.2.3 Delay 371 7.2.4 Position 373 7.2.5 Shield 374 7.2.6 맵파일읽기 375 7.3 Class 의구성 376 7.3.1 MapTable() Class 작성 376 7.3.2 Path() Class 작성 385 7.3.3 MapTable() 에서의작업 390 7.3.4 Selection() Class 392 7.3.5 DelayTime() 395 7.3.6 Position() 396 7.3.7 Shield() 400 7.3.8 MapTable() 의전체내용 401 7.4 캐릭터의움직임제어 404 7.4.1 캐릭터의동작패턴 405 7.4.2 Sprite() Class 작성 407 7.4.3 공격대형위치로이동 416 7.4.4 부대이동과싱크유지 419 7.4.5 공격 424 7.4.6 탈영병복귀 430 ix

7.5 미사일과게임난이도 433 7.5.1 적군의미사일 433 7.5.2 게임의난이도 436 7.5.3 아군미사일 439 7.5.4 Boss 미사일 440 7.6 아군우주선의제어 442 7.6.1 아군우주선만들기 442 7.6.2 미사일발사, 우주선의이동 446 7.6.3 아군기의이동 448 7.6.4 디버깅을위한설계 450 7.6.5 Score 표시 452 7.7 충돌판정과폭파처리 454 7.7.1 폭파처리 454 7.7.2 보너스아이템처리 457 7.7.3 충돌의판정 460 7.7.4 프로그램디버깅 467 7.8 스테이지 Clear 와 Game Over 처리 468 7.8.1 Stage Clear 468 7.8.2 Boss 의등장 483 7.8.3 배경음악과사운드처리 491 7.8.4 옵션메뉴작성 495 7.9 오프닝화면의구성 498 7.10 속도가빠른프로그램을작성하기위한조언 500 7.11 프로젝트전체 Source 502 덧붙이는말 590 찾아보기 592 x

추천사 2011년 2월현재, 안드로이드는국내시장에서그리고세계시장에서가장주목받는모바일 OS이다. 프로스트앤설리반 (Frost&Sullivan) 이나가트너 (Gatner) 등의시장조사기관은안드로이드에대해낙관적인조사결과를발표하고있으며, 이조사결과가아니더라도우리는주변에서개발자와사용자가안드로이드에많은관심을가지고있는것을쉽게볼수있다. 필자가안드로이드개발정보를공유하는커뮤니티인 안드로이드사이드 를 2008년 11월에개설했을때안드로이드가자바만큼많은인기를얻을것이라예상은했지만, 그시점이이렇게빨리다가올줄은몰랐다. 현재안드로이드마켓에는정말많은애플리케이션이등록되어사용자들의선택을기다리고있다. 이많은애플리케이션중사용자들이가장관심있어하는애플리케이션은단연게임이다. 그런데안드로이드마켓에서는국내심의문제로게임카테고리접근이막혀있기때문에사용자들은국내통신사마켓에서만게임을접할수밖에없다. 그래도게임개발자들에게희소식은국내통신사마켓의게임다운로드수가최상위를기록하고있다는것이다. 그리고지금은안드로이드마켓에서게임을접할수는없지만, 머지않은시일에곧접할수있게될것이므로더늦기전에지금부터라도준비해야할것이다. 안드로이드개발자라면누구나게임개발에관심을가지고있을것이다. 하지만게임개발은일반애플리케이션개발보다더많은지식이있어야하며, 이미지작업등이반드시필요하여쉽게접근하지못하는영역이기도하다. 그럼에도불구하고많은개발자들이게임을개발하기위해노력하고있으며, 안드로이드사이드에서시작한 저녁놀 님의게임강의는안드로이드사이드에서도당연히인기있는강좌중하나가되었다. 이러한많은관심을받으며게임강좌를좀더체계화하고자세히설명하여한권의책이나왔으니, 그책이름이바로 실전앱프로젝트안드로이드게임개발편 이다. 국내최초의안드로이드게임개발책이다. 이책의저자는이책에서다루지못한추가내용을안드로이드사이드에서도강좌형식으로연재하고있으므로이책을모두학습한독자들은안드로이드사이드에서추가학습을할수있을것이다. 이책은게임개발에관심있는모든사람에게게임개발을쉽게시작할수있게해주는국내유일의안드로이드게임책이될것이다. 마지막으로, 안드로이드가개발자에게직업을넘어즐겁게공부하고즐길수있는하나의장난감이되기를바란다. 안드로이드사이드운영자 _ 한동호 xi

머리말 안드로이드게임프로그래밍의세계에오신여러분을환영합니다. 여러분이게임개발의기초적인내공을쌓을수있도록도와드릴 저녁놀 이지면을빌어인사드립니다. 게임! 재미있죠. 인류의문명과함께발전한것이게임이고, 앞으로도게임이라는장르는결코없어지지않을것입니다. 생사를넘나드는로마시대의검투사들의대결도그것을구경하는사람의입장에서는하나의게임입니다. 그게임이게임기에서 PC를지나스마트폰까지왔습니다. 이제여러분은게임을즐기는사용자 (User) 입장에서한발나아가그것을설계하고만드는개발자 (Developer) 로서게임을생각하게되었습니다. 저는여러분을순수한 Java 언어를사용하여게임을만드는과정을기초부터고급과정까지차근차근안내해드릴것입니다. 그런데여러분이먼저알아두셔야할것이있습니다. 이책은안드로이드운영체제에서실행되는게임만드는법을가르쳐주는것이지, 여러분을대신해서직접게임을만들어주는것은아니라는점입니다. 물론이책에는많은예제들이있으며, 필자인제가직접디자인하고프로그램을작성했지만, 중요한것은그게임이아니라그것을만들기위해거쳐야할일련의과정입니다. 게임은대부분다음과같은요소로구성됩니다. 1 스토리보드 2 스토리보드를구현하기위한프로그램 3 프로그램제작에필요한각종리소스 ( 그래픽, 사운드등 ) 4 기타여러가지요소이책에서핵심으로다루고있는것은 2에해당하는게임을구현하는알고리즘입니다. 그렇기때문에 2를제외한나머지부분을만드는법은대부분생략하고있습니다. 다시말하면, 게임개발에배경화면과캐릭터디자인이필수적인요소이기는하지만, 이책은프로그램에중점을두고있기때문에포토샵에서캐릭터디자인하는방법등은별도로설명하지는않는다는의미입니다. xii

머리말 이책의주요내용 이책은다음과같이구성되어있으므로각장의내용을충실히학습하면이책의내용을모두마스터한후에는어지간한게임정도는쉽게만들수있을것으로생각합니다. 1 장, 시작하기 이장에서는안드로이드위젯을이용한텍스트기반의간단한게임제작원리와난수사용법, 버튼의리스너사용법, 이미지리소스사용법등을배울수있다. 2 장, Canvas 와 Bitmap 다루기 이장에서는사용자 View 만들기, Canvas와 Bitmap 다루기, Bitmap을이용한간단한애니메이션, Touch 이벤트처리등을배울수있다. 3 장, Class 와 ArrayList 이장에서는 Class와 ArrayList를이용한객체처리방법과 Class의설계와운용방법등을배울수있다. 4 장, SurfaceView 와 Thread 이장에서는 SurfaceView와 Thread 사용방법, 옵션메뉴및 Thread 제어방법등을배울수있다. 5 장, 슈팅게임의기본원리 이장에서는총알발사와충돌판정, 스테이지처리, 점수표시및그래픽폰트사용방법등슈팅게임의기본원리를배울수있다. xiii

6 장, 실전앱만들기 1 - 슬라이딩퍼즐 실전프로그램인슬라이딩퍼즐에대한코드전문을수록하여퍼즐류의게임에대한이해도를높이고나아가직접제작해볼수있도록한다. 7 장, 실전앱만들기 2 - 슈팅게임 실전프로그램인슈팅게임에대한코드전문을수록하여슈팅게임류의게임에대한이해도를높이고나아가직접제작해볼수있도록한다. 이책의대상독자 이책은 Java 언어및안드로이드의입문서가아닙니다. 이책을읽는독자들은다음사항중적어도두세가지는해당되는분이라는가정을하고, 설명또한어느정도프로그램의기초를아는분의수준에맞췄습니다. Java 언어에대한기초지식이있다. Java 언어는잘모르지만 C/C++, Delphi, Visual Basic, PHP 중어느한가지는다룰줄안다. 게임은잘모르지만다른분야의프로그램기초지식이있다. 간단한삼각함수등중고등학교과정의기본수학공식은이해할수있다. 게임프로그램에대해서는잘모르지만게임개발은꼭배우고싶다. 그렇기때문에제가아무리쉽게설명해도이제막안드로이드나 Java 언어에입문한분들에게는꽤어려운내용일수밖에없습니다. 그렇다고그런분들에게이책이전혀도움이되지않는다는것은아닙니다. 단, 이책은 Java 언어의문법적인부분은설명하지않는경우가더러있으므로, 이해하기어려운부분은인터넷강좌나관련책등을이용해서함께학습해가는노력이필요할것입니다. xiv

머리말 이책의독자 A/S 모쪼록이책이여러분의프로그래밍실력향상에많은도움이되길바라며, 지면상설명하지못한부분이많이있으므로책의내용에대한궁금한사항들은아래사이트의독자 Q&A를통해해결해갈수있을것으로생각합니다. 여건이허락하는대로되도록여러분의입장에서성심껏답변을해드리겠습니다. 되도록개인메일보다는독자 Q&A 코너를활용해주시기바랍니다. 더불어이책에실린모든 Source 프로그램과 Resource 파일은아래사이트에서다운받을수있습니다. 프로젝트파일다운로드 : http://book.androidside.com 독자 Q&A: http://book.androidside.com 온라인강좌 : http://www.androidside.com 개발정보 게임강좌 저녁놀게임강좌 저자블로그 : http://foxmann.blog.me 저자이메일 : foxmann@naver.com 여러분이안드로이드사이드 (http://androidside.com) 에오시면비단저뿐만아니라많은안드로이드고수분들이여러분의어려움을도와드릴수있을것입니다. 당부의글 어떤일이든지시작이있기마련이고, 누구나초심자시절이있습니다. 처음부터고수인사람이있을수없듯, 현재고수의반열에올라와있는모든사람들이여러분처럼초심자시절을겪고지금의위치에서있는것입니다. 제가여러분에게당부드리고싶은말씀은이한마디입니다. 피할수없거든즐겨라. 천재는노력하는사람을따라갈수없고, 노력하는사람은즐기는사람을능가할수없다. 즐거운마음으로게임프로그래밍의세계에입문을한만큼, 앞으로게임개발을하면서겪게되는여러가지어려움또한 ( 어차피해결해야할일이므로 ) 즐거운마음으로헤쳐나가시기를당부드립니다. xv

끝으로 실전앱프로젝트 시리즈를직접기획하고, 제가이책을쓸수있도록많은도움을주신안드로이드사이드의대표관리자한동호 ( 카이로 ) 님과제이펍출판사의모든분들께깊은감사를드립니다. 2011 년 2 월하순 박승제 ( 필명저녁놀 ) xvi