책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 애플/아이폰/안드로이드 프로그래밍
· ISBN : 9791185890968
· 쪽수 : 420쪽
· 출판일 : 2017-08-04
책 소개
목차
섹션 1 시작하기 전에 1
1.1 이 책의 대상 독자 및 선수 지식 1
1.2 이 책의 구성 2
1.3 학습 방법 3
섹션 2 베스트푸드 앱 소개 6
2.1 안드로이드 앱 화면 및 기능 소개 6
섹션 3 개발 환경 구성하기 11
3.1 전체 구성 살펴보기 11
3.2 프로젝트 디렉터리 구성하기 12
3.3 MariaDB 설치하기 12
3.4 MariaDB 데이터베이스 생성하기 15
3.5 MariaDB 테이블 생성하기 18
3.6 노드 설치하기 21
3.7 노드 환경 구성하기 23
3.8 노드 실행하기 27
3.9 자바 JDK 설치하기 28
3.10 안드로이드 스튜디오 설치하기 31
섹션 4 노드 프로젝트 살펴보기 32
4.1 프로젝트의 기본 디렉터리 살펴보기 32
4.2 프로젝트의 기본 파일 살펴보기 34
4.3 노드 라우트 파일 설정하기 39
4.4 데이터베이스 연동하기 39
섹션 5 안드로이드 프로젝트 생성하기 42
5.1 프로젝트 패키지 구성하기 47
5.2 전체 프로젝트 패키지 49
5.3 관련 라이브러리 설정하기 49
5.4 베스트푸드 앱 아이콘 변경하기 51
섹션 6 권한 화면 구성하기 52
6.1 안드로이드 권한 액티비티 작성하기 54
섹션 7 시작 화면 구성하기 62
7.1 안드로이드 시작 액티비티 작성하기 64
7.2 노드와 통신하기 위한 자바 코드 작성하기 71
7.3 노드 시작 화면 코드 작성하기 73
7.4 안드로이드 시작 화면 실행하기 76
섹션 8 메인 화면 구성하기 78
8.1 안드로이드 메인 액티비티 작성하기 79
섹션 9 프로필 화면 구성하기 92
9.1 안드로이드 프로필 액티비티 작성하기 93
9.2 노드 프로필 입력 내용 저장 코드 작성하기 109
9.3 안드로이드 프로필 화면을 메뉴에 연동하기 111
섹션 10 프로필 아이콘 이미지 등록 화면 구성하기 113
10.1 안드로이드 프로필 아이콘 이미지 등록 액티비티 작성하기 114
10.2 노드 프로필 아이콘 이미지 저장 코드 작성하기 123
섹션 11 안드로이드 맛집 등록 화면 구성하기 126
11.1 안드로이드 맛집 등록 액티비티 작성하기 127
11.2 안드로이드 맛집 위치 등록 프래그먼트 작성하기 132
11.3 안드로이드 맛집 정보 등록 프래그먼트 작성하기 142
11.4 노드 맛집 정보 입력 내용 저장 코드 작성하기 153
11.5 안드로이드 맛집 이미지 등록 프래그먼트 작성하기 155
11.6 노드 맛집 이미지 저장 코드 작성하기 165
11.7 안드로이드 맛집 등록 액티비티를 메뉴에 연동하기 166
11.8 AndroidManifest.xml에 구글 맵 관련 설정 설정하기 166
섹션 12 안드로이드 맛집리스트 화면 구성하기 169
12.1 안드로이드 맛집리스트 프래그먼트 작성하기 170
12.2 노드 맛집리스트 조회 및 즐겨찾기 관련 코드 작성하기 190
섹션 13 안드로이드 맛집 정보 화면 구성하기 195
13.1 안드로이드 맛집 정보 액티비티 작성하기 196
13.2 노드 맛집 정보 조회 코드 작성하기 211
섹션 14 안드로이드 지도리스트 화면 구성하기 214
14.1 안드로이드 지도리스트 프래그먼트 작성하기 215
14.2 노드 지도리스트 조회 코드 작성하기 233
14.3 안드로이드 지도리스트 프래그먼트를 메뉴에 연동하기 235
섹션 15 안드로이드 즐겨찾기 화면 구성하기 237
15.1 안드로이드 즐겨찾기 프래그먼트 작성하기 238
15.2 노드 즐겨찾기 조회 및 삭제 코드 작성하기 252
15.3 안드로이드 즐겨찾기 프래그먼트를 메뉴에 연동하기 254
마치면서 256
부록 A 베스트푸드 안드로이드 코드 257
A.1 안드로이드 리소스 258
A.2 베스트푸드 아이템 276
A.3 상태 저장을 위한 Application 클래스 281
A.4 베스트푸드 원격 서비스 283
A.5 베스트푸드 라이브러리 287
A.6 베스트푸드 커스텀 클래스 309
A.7 베스트푸드 상수 314
A.8 베스트푸드 AndroidManifest.xml 314
A.9 베스트푸드 build.gradle 316
부록 B 안드로이드 Tip & Tech, 라이브러리 318
B.1 안드로이드 Tip & Tech 318
B.2 안드로이드 라이브러리 342
부록 C 베스트푸드 노드 코드 360
C.1 기본 파일 360
C.2 라우팅 파일 363
부록 D 노드 Tip & Tech, 모듈 372
D.1 노드 Tip & Tech 372
D.2 노드 모듈 387
찾아보기 405
저자소개
책속에서
그래서 필자는 서비스를 조금이나마 빠르고 쉽게 만들 방법이 없을까를 고민하였다. 그 결과, 서버 쪽 지식이 많지 않아도 개발할 수 있는 Node.js를 서버 기술로 하는 책을 집필하기에 이르렀다. 이 책에서는 안드로이드와 Node.js 그리고 MariaDB를 사용하여 맛집 서비스를 구축하는 방법을 설명하고 있으며, 컴퓨터에서 소스를 보면서 책을 보는 번거로움을 방지하기 위해 소스 전문을 수록하였다.
일반적으로 별도 파일이 아닌 app.js에서 라우트를 처리할 때는 app.get( )이나 app.post( ) 함수를 사용하면 되지만, 별도 파일에서 라우트 함수를 작성할 때는 express.Router( ) 함수를 통해 호출해야 한다. 그리고 별도 파일에서 작성한 함수를 사용할 수 있도록 module.exports = router;를 추가해야 한다. index.js에 작성된 router.get( ) 함수는 URL 경로가 /일 때 호출되는 함수이며, 실제로 호출되어 실행될 코드는 function(req, res, next) { } 함수에 작성하면 된다. function은 req, res, next 인자를 가지고 있으며, req는 HTTP 요청 객체에 대한 정보이며, res는 HTTP 응답 객체에 대한 정보를 가지고 있다.
프로필 이미지를 보여주는 CircleImageView다. CircleImageView는 외부 라이브러리이므로 반드시 build.gradle에 설정해야 한다. 우리는 프로젝트를 생성할 때 이미 추가하였으므로, 만약 하지 않았다면 책의 앞부분을 다시 살펴보기 바란다. 속성 중에서 civ로 시작하는 속성은 CircleImageView의 추가 속성이다. civ_border_color는 원형 이미지의 테두리 색상이고, civ_border_width는 테두리의 두께다.