이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제
안드로이드 서비스 개발
Node.js와 오픈소스를 활용한
한동호
제이펍 2017.08.04.
베스트
모바일 프로그래밍 top20 37주
가격
26,000
10 23,400
YES포인트?
1,300원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  국내배송만 가능
  •  문화비소득공제 가능

이 분야의 이벤트

I♥Mobile

책소개

목차

섹션 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

품목정보

발행일
2017년 08월 04일
쪽수, 무게, 크기
420쪽 | 188*245*30mm
ISBN13
9791185890968

책 속으로

그래서 필자는 서비스를 조금이나마 빠르고 쉽게 만들 방법이 없을까를 고민하였다. 그 결과, 서버 쪽 지식이 많지 않아도 개발할 수 있는 Node.js를 서버 기술로 하는 책을 집필하기에 이르렀다. 이 책에서는 안드로이드와 Node.js 그리고 MariaDB를 사용하여 맛집 서비스를 구축하는 방법을 설명하고 있으며, 컴퓨터에서 소스를 보면서 책을 보는 번거로움을 방지하기 위해 소스 전문을 수록하였다.
--- p.ix

일반적으로 별도 파일이 아닌 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 응답 객체에 대한 정보를 가지고 있다.
--- p.37

프로필 이미지를 보여주는 CircleImageView다. CircleImageView는 외부 라이브러리이므로 반드시 build.gradle에 설정해야 한다. 우리는 프로젝트를 생성할 때 이미 추가하였으므로, 만약 하지 않았다면 책의 앞부분을 다시 살펴보기 바란다. 속성 중에서 civ로 시작하는 속성은 CircleImageView의 추가 속성이다. civ_border_color는 원형 이미지의 테두리 색상이고, civ_border_width는 테두리의 두께다.
--- p.98

onActivityResult( ) 메소드에 작성된 이 코드는 앨범을 선택했을 때 호출되는 코드의 일부다. 앨범의 이미지에 대한 dataUri로 이미지를 불러서 화면에 보여주고, 해당 이미지를 서버로 전송하기 전에 파일로 저장하고 있다. dataUri가 가리키는 이미지는 용량이 클 수도 있으므로 피카소의 이미지 로딩을 처리해 주는 Target 클래스를 사용하고 있다. 이를 통해 이미지가 로딩되었을 때 호출되는 onBitmapLoaded( ) 메소드에서 이미지를 파일에 저장할 수 있다.
--- p.165

loading_layout.xml은 맛집 정보 액티비티의 레이아웃 activity_bestfood_info.xml에서 사용하며, 맛집 정보를 보여주기 전에 미리 보여주는 레이아웃이다. 필요 없을 수도 있지만, 인터넷 상태가 일시적으로 느려질 수도 있고 이렇게 되면 맛집 정보를 가지고 오는 데 생각보다 오래 걸릴 수 있다. 따라서 임시 레이아웃을 먼저 보여줘야 사용자가 잠시나마 더 기다릴 수 있을 것이다.

--- p.267

출판사 리뷰

맛집 애플리케이션을 만들며 배우는 안드로이드 서비스 구성과 운영!
맛집 앱 풀 소스 제공, 카페를 통한 독자 A/S 제공!

이 책은 맛집 검색 및 등록 서비스를 제공하는 ‘베스트푸드’ 애플리케이션 개발 과정을 설명한다. 이를 통해 클라이언트와 서버 그리고 데이터베이스를 어떻게 구성하는지를 배울 수 있다. 클라이언트는 안드로이드로 개발하고, 서버는 Node.js로 개발하며, 데이터베이스는 MariaDB를 사용한다. 개발 환경 설정부터 개발 완료까지 전 과정을 설명하고 있으므로 안드로이드 서비스를 개발하고자 하는 이들에게 유익한 책이 될 것이다.

이 책의 대상 독자
본인의 서비스를 개발하고 싶은 독자
스타트업에서 빠르게 서비스를 개발해야 하는 독자
안드로이드 서비스가 어떻게 개발되는지 궁금한 독자
학생이지만 기본적인 앱 개발을 해 보고 싶은 독자
안드로이드를 학습했지만 서버 개발을 어떻게 해야 할지 막막했던 독자

추천평

안드로이드와 Node.js로 서비스 개발 방법을 설명하는 유일한 책! 이 책은 모바일 서비스를 개발하는 이들에게 유용한 책이 될 것이다. 특히 스타트업이나 본인만의 서비스를 빠르게 개발하고 시장성을 판단하고 싶다면, 이 책을 통해 원하는 바를 이룰 수 있을 것이다. 하지만 이 한 권의 책이 모든 것을 담고 있을 수는 없다. 이 책을 학습한 후에 개별 전문 서적 등을 통해 추가로 학습한다면 분명 좋은 서비스를 만들 수 있을 것이다.
장영남 (스마트택배 서비스 개발사 스윗트래커 CTO)
요즘 모바일 서비스는 안드로이드에서만 동작하지 않는다. 기본적으로 서버에 데이터를 저장하고 이를 여러 사용자와 공유한다. 안드로이드 하나를 배우는 데도 시간이 많이 걸리는데, 서버 개발까지 하게 되면 원하는 서비스를 만들기 전에 지친다. 하지만 이 책을 학습한다면 원하는 서비스를 빠르고 쉽게 구축할 수 있을 것이다. 이 책이 훌륭한 모바일 소프트웨어 개발자가 되는 첫걸음이 되기를 기대한다.
최선일 (카카오 모바일 소프트웨어 개발자)

리뷰/한줄평6

리뷰

9.0 리뷰 총점

한줄평

10.0 한줄평 총점

클린봇이 부적절한 글을 감지 중입니다.

설정