2017 All Rights Reserved 초판 1쇄발행 지은이 펴낸이 펴낸곳 출판신고 주소 B 전화 / 팩스 홈페이지 www jpub kr

Similar documents
Spring Boot/JDBC JdbcTemplate/CRUD 예제

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

INDUS-8.HWP

CONTENTS.HWP


Chapter 1

PowerPoint 프레젠테이션

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

1. efolder 시스템구성 A. DB B. apache - mod-perl - PHP C. SphinxSearch ( 검색서비스 ) D. File Storage 2. efolder 설치순서 A. DB (MySQL) B. efolder Service - efolder

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

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

10.ppt

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

PowerPoint Presentation

언리얼엔진4_내지_ indd

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

표준프레임워크 Nexus 및 CI 환경구축가이드 Version 3.8 Page 1

세계 비지니스 정보

chapter1,2.doc

<C1A4C3A5BFACB1B D3420C1A4BDC5C1FAC8AFC0DAC0C720C6EDB0DFC7D8BCD220B9D720C0CEBDC4B0B3BCB1C0BB20C0A7C7D120B4EBBBF3BAB020C0CEB1C720B1B3C0B020C7C1B7CEB1D7B7A520B0B3B9DF20BAB8B0EDBCAD28C7A5C1F6C0AF292E687770>

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

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

MySQL-Ch10

PowerPoint Presentation

Microsoft PowerPoint - 10Àå.ppt

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

DE1-SoC Board

슬라이드 1

MySQL-.. 1

»ç¿ëÀÚ¸Þ´º¾ó

Interstage5 SOAP서비스 설정 가이드

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

슬라이드 1

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

( )부록

DocsPin_Korean.pages

윈도우시스템프로그래밍

Microsoft Word - src.doc

untitled

chapter4

문서의 제목 나눔고딕B, 54pt

rmi_박준용_final.PDF


<31332DB9E9C6AEB7A2C7D8C5B72D3131C0E528BACEB7CF292E687770>

Dialog Box 실행파일을 Web에 포함시키는 방법

FileMaker 15 ODBC 및 JDBC 설명서

PowerPoint Template

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드]

구축환경 OS : Windows 7 그외 OS 의경우교재 p26-40 참조 Windows 의다른버전은조금다르게나타날수있음 Browser : Google Chrome 다른브라우저를사용해도별차이없으나추후수업의모든과정은크롬사용 한

PRO1_09E [읽기 전용]

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

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

강의 개요

00-1표지

13주-14주proc.PDF

(Microsoft PowerPoint - AndroG3\306\367\306\303\(ICB\).pptx)

슬라이드 1

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper


MySQL-Ch05

표준프레임워크로 구성된 컨텐츠를 솔루션에 적용하는 것에 문제가 없는지 확인

3 S Q L A n t i p a t t e r n s Trees/intro/parent.sql CREATE TABLE Comments ( comment_id SERIAL PRIMARY KEY, parent_id BIGINT UNSIGNED, comment TEXT

2017 All Rights Reserved 초판 1쇄발행 지은이 펴낸이 펴낸곳 출판신고 주소 B 전화 팩스 홈페이지 www jpub kr

슬라이드 1

4S 1차년도 평가 발표자료

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,,,,,,,,,,,,,.,..., U.S. GOVERNMENT END USERS. Oracle programs, including any operat

Apache2 + Tomcat 5 + JK2 를 사용한 로드밸런싱과 세션 복제 클러스터링 사이트 구축

슬라이드 1

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)

슬라이드 1

PRO1_04E [읽기 전용]

FileMaker ODBC 및 JDBC 가이드

Google Maps Android API v2

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5]

MS-SQL SERVER 대비 기능

< BACFC7D1B1B3C0B0C1A4C3A5B5BFC7E228B1E2BCFABAB8B0ED D D20C6EDC1FD2035B1B32E687770>

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Solaris Express Developer Edition

MPLAB C18 C

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

Windows 8에서 BioStar 1 설치하기

표1

PowerPoint 프레젠테이션

슬라이드 1

컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로

Sena Technologies, Inc. HelloDevice Super 1.1.0

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

제목을 입력하세요.

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

윈도우시스템프로그래밍

1부

<4D F736F F D20B4EBBFF BFB5BEF7BAB8B0EDBCAD2E646F63>

Assign an IP Address and Access the Video Stream - Installation Guide

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

쉽게 풀어쓴 C 프로그래밊

OM2M 기반의 OHP-M2M 오픈소스설치가이드 2015 년 8 월 경북대학교통신프로토콜연구실 최예찬, 강형우 요약 사물인터넷 (Internet of Things: IoT) 이이슈가되면서다양한사

Transcription:

2017 All Rights Reserved 초판 1쇄발행 2017 8 4 지은이 펴낸이 펴낸곳 출판신고 2009 11 10 406 2009 000087 주소 159 3 3 B 전화 070 8201 9010 / 팩스 02 6280 0405 홈페이지 www jpub kr / 원고투고 jeipub@gmail com 독자문의 readers jpub@gmail com / 교재문의 jeipubmarketer@gmail com 편집부 / 소통 기획팀 / 회계팀 표지디자인 / 본문디자인 용지 / 인쇄 / 제본 ISBN 979 11 85890 96 8 93000 값 26 000 제이펍은독자여러분의아이디어와원고투고를기다리고있습니다. 책으로펴내고자하는아이디어나원고가있으신분께서는책의간단한개요와차례, 구성과저 ( 역 ) 자약력등을메일로보내주세요. jeipub@gmail.com

드리는말씀 이책에기재된내용을기반으로한운용결과에대해저자, 소프트웨어개발자및제공자, 제이펍출판사는일체의책임을지지않으므로양해바랍니다. 이책에기재한회사명및제품명은각회사의상표및등록명입니다. 이책에서는 TM, c, R 등의기호를생략하고있습니다. 이책에서사용하고있는실제제품버전은독자의학습시점에따라책의버전과다를수있습니다. 책의내용과관련된문의사항은저자가운영하고있는카페나출판사로연락주시기바랍니다. - 지은이 : http://cafe.naver.com/jandev - 출판사 : readers.jpub@gmail.com

머리말 ix 베타리더후기 xi SECTION 01 시작하기전에 1 1. 1 1 1.2 2 1.3 3 SECTION 02 베스트푸드앱소개 6 2. 1 6 SECTION 03 개발환경구성하기 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 SECTION 04 노드프로젝트살펴보기 32 4. 1 32 4.2 34 4.3 39 4.4 39 차례 v

SECTION 05 안드로이드프로젝트생성하기 42 5. 1 47 5.2 49 5.3 49 5.4 51 SECTION 06 권한화면구성하기 52 6. 1 54 SECTION 07 시작화면구성하기 62 7. 1 64 7.2 71 7.3 73 7.4 76 SECTION 08 메인화면구성하기 78 8. 1 79 SECTION 09 프로필화면구성하기 92 9. 1 93 9.2 109 9.3 111 SECTION 10 프로필아이콘이미지등록화면구성하기 113 10. 1 114 10.2 123 SECTION 11 안드로이드맛집등록화면구성하기 126 11. 1 127 11.2 132 11.3 142 11.4 153 11.5 155 11.6 165 vi 차례

11.7 166 11.8 AndroidManifest xml 166 SECTION 12 안드로이드맛집리스트화면구성하기 169 12. 1 170 12.2 190 SECTION 13 안드로이드맛집정보화면구성하기 195 13. 1 196 13.2 211 SECTION 14 안드로이드지도리스트화면구성하기 214 14. 1 215 14.2 233 14.3 235 SECTION 15 안드로이드즐겨찾기화면구성하기 237 15. 1 238 15.2 252 15.3 254 256 APPENDIX 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 차례 vii

APPENDIX B 안드로이드 Tip & Tech, 라이브러리 318 B.1 Tip & Tech 318 B.2 342 APPENDIX C 베스트푸드노드코드 360 C.1 360 C.2 363 APPENDIX D 노드 Tip & Tech, 모듈 372 D.1 Tip & Tech 372 D.2 387 찾아보기 405 viii 차례

2008 OS ios 2008 Node js Node js MariaDB Node js 1 옮긴이머리말 ix

한동호 x 옮긴이머리말

강경구 DB 김종욱 (KAIST) 박두현 ( 마블러스 ) 베타리더후기 xi

이아름 이요셉 Node js Express js 한홍근 ( 서울옥션블루 ) BestFood 제이펍은책에대한애정과기술에대한열정이뜨거운베타리더들로하여금출간되는모든서적에사전검증을시행하고있습니다. xii 베타리더후기

S E C T I O N 01 시작하기전에 1.1 이책의대상독자및선수지식 Node js MariaDB 이책의대상독자 본인의서비스를개발하고싶은독자 스타트업에서빠르게서비스를개발해야하는독자 1.1 이책의대상독자및선수지식 1

안드로이드서비스가어떻게개발되는지궁금한독자 학생이지만기본적인앱개발을해보고싶은독자 안드로이드를학습했지만서버개발을어떻게해야하는지궁금했던독자 Node js 이책을학습하기위해필요한선수지식 자바스크립트기본문법 안드로이드기초지식 웹서버의이해 1.2 이책의구성 Node js Java MariaDB Android Studio ' 베스트푸드앱소개 개발환경구성하기 단계별로안드로이드와노드개발하기 소스코드와 Tip & Tech, 주요라이브러리 2 SECTION 01 시작하기전에

1.3 학습방법 개발예정서비스 그림 1-1 서비스에필요한기술 자바 (JAVA) 안드로이드 (Android) 1.3 학습방법 3

노드 (Node.js) 마리아디비 (MariaDB), 에스큐엘 (SQL) SQL SELECT INSERT UPDATE JOIN ORDER BY WHERE 이책의학습방법 1. 책의내용을보면서처음부터하나씩코드를작성하면서학습한다. 2. 부록 에있는베스트푸드관련소스코드를살펴본다. 3. 부록 의 Tip & Tech 와관련라이브러리를살펴본다. 책의소스및이미지다운로드방법 GitHub GitHub 4 SECTION 01 시작하기전에

URL https://github.com/kairo96/and_node app 안드로이드소스코드 ( 안드로이드스튜디오프로젝트 ) web 노드소스코드 그림 1-2 GitHub GitHub Clone or download ZIP GIT GIT 문의사항 URL http://cafe.naver.com/jandev 1.3 학습방법 5

S E C T I O N 02 베스트푸드앱소개 2.1 안드로이드앱화면및기능소개 시작화면 Splash 1 2 3 그림 2-1 6 SECTION 02 베스트푸드앱소개

왼쪽메뉴 NavigationView 맛집리스트맛집정보를보여주는화면이며, 거리순, 인기순, 최근순으로맛집리스트를볼수있다. 지도리스트구글맵에맛집정보를보여주는화면이며, 지도화면에서리스트형태로맛집을볼수도있다. 즐겨찾기 즐겨찾기 버튼을클릭해사용자가즐겨찾기한맛집만을볼수있는화면이다. 맛집등록맛집을직접등록할수있는화면이다. 위치를선택하고기본적인정보를등록할수있다. 프로필설정프로필사진과이름, 성별, 생일을등록할수있는화면이다. 그림 2-2 맛집리스트 그림 2-3 1 그림 2-4 2 2.1 안드로이드앱화면및기능소개 7

맛집정보 그림 2-5 1 그림 2-6 2 지도리스트 그림 2-7 그림 2-8 8 SECTION 02 베스트푸드앱소개

즐겨찾기 그림 2-9 맛집등록 그림 2-10 그림 2-11 그림 2-12 2.1 안드로이드앱화면및기능소개 9

프로필설정 그림 2-13 그림 2-14 10 SECTION 02 베스트푸드앱소개

S E C T I O N 03 개발환경구성하기 3.1 전체구성살펴보기 Android Node js Express js MariaDB SQL 그림 3-1 3.1 전체구성살펴보기 11

3.2 프로젝트디렉터리구성하기 C: bestfood android web DB MariaDB bestfood android MariaDB 10.2 web 그림 3-2 bestfood 3.3 MariaDB 설치하기 MariaDB MySQL 1 MariaDB URL https://downloads.mariadb.org/ 그림 3-3 MariaDB 12 SECTION 03 개발환경구성하기

2 OS 64 mariadb 10 2 6 winx64 msi 그림 3-4 MariaDB 3 No thanks 그림 3-5 MariaDB 3.3 MariaDB 설치하기 13

4 C: bestfood 그림 3-6 MariaDB 5 root New root password: bestfood Confirm: bestfood UTF 8 Use UTF8 as default server's character set 그림 3-7 MariaDB root 14 SECTION 03 개발환경구성하기

Next Next 3.4 MariaDB 데이터베이스생성하기 1 HeidiSQL 그림 3-8 HeidiSQL 2 Unnamed bestfood bestfood Rename 그림 3-9 HeidiSQL 3.4 MariaDB 데이터베이스생성하기 15

23 bestfood 그림 3-10 1 24 bestfood 그림 3-11 2 16 SECTION 03 개발환경구성하기

25 그림 3-12 1 26 SQL 그림 3-13 2 3.4 MariaDB 데이터베이스생성하기 17

3.5 MariaDB 테이블생성하기 4 bestfood_info bestfood_info_image bestfood_keep bestfood_member 그림 3-14 맛집정보테이블 (bestfood_info) bestfood_info member_seq name tel address latitude longitude description keep_cnt reg_date seq AUTO_INCREMENT 18 SECTION 03 개발환경구성하기

그림 3-15 bestfood_info bestfood_info create heidisql bestfood_info 테이블생성문 CREATE TABLE IF NOT EXISTS bestfood_info ( seq int(11) NOT NULL AUTO_INCREMENT, member_seq int(11) NOT NULL, name varchar(20) NOT NULL, tel varchar(20) NOT NULL, address varchar(50) NOT NULL, latitude double NOT NULL, longitude double NOT NULL, description varchar(500) NOT NULL, keep_cnt int(11) NOT NULL DEFAULT '0', reg_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (seq) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 맛집이미지정보테이블 (bestfood_info_image) bestfood_info_image info_seq filename image_memo reg_date 그림 3-16 bestfood_info_image 3.5 MariaDB 테이블생성하기 19

bestfood_info_image create bestfood_info_image 테이블생성문 CREATE TABLE IF NOT EXISTS bestfood_info_image ( seq int(11) NOT NULL AUTO_INCREMENT, info_seq int(11) NOT NULL, filename varchar(30) NOT NULL, image_memo varchar(100) NOT NULL, reg_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (seq) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 즐겨찾기테이블 (bestfood_keep) bestfood_keep member_ seq info_seq reg_date bestfood_keep 그림 3-17 bestfood_keep bestfood_ keep create bestfood_keep 테이블생성문 CREATE TABLE IF NOT EXISTS bestfood_info_image ( seq int(11) NOT NULL AUTO_INCREMENT, info_seq int(11) NOT NULL, filename varchar(30) NOT NULL, image_memo varchar(100) NOT NULL, reg_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (seq) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 20 SECTION 03 개발환경구성하기

회원정보테이블 (bestfood_member) phone name sextype birthday member_icon_filename reg_date 그림 3-18 bestfood_member bestfood_ member create bestfood_member 테이블생성문 CREATE TABLE IF NOT EXISTS bestfood_member ( seq int(11) NOT NULL AUTO_INCREMENT, phone varchar(30) NOT NULL, name varchar(30) DEFAULT NULL, sextype varchar(10) DEFAULT NULL, birthday varchar(30) DEFAULT NULL, member_icon_filename varchar(50) DEFAULT NULL, reg_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (seq) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 3.6 노드설치하기 1 URL https://nodejs.org/ko/ 3.6 노드설치하기 21

2 v8 10 8 1 0 6 11 0 LTS 그림 3-19 3 4 그림 3-20 1 그림 3-21 2 그림 3-22 3 그림 3-23 4 22 SECTION 03 개발환경구성하기

그림 3-24 5 그림 3-25 6 그림 3-26 7 3.7 노드환경구성하기 npm express generator [ ] 375 npm npm install [ 모듈명 ] -g g global express generator nodemon 3.7 노드환경구성하기 23

npm install [ 모듈명 ] - - save save package json npm install package json package json 1 ConEmu bestfood 7 cmd 10 Windows cmd ConEmu ConEmu [ ] 377 C: bestfood> 2 express generator C: bestfood>npm install express-generator g express generator express h ejs C: bestfood>express -h Usage: express [options] [dir] Options: -h, --help output usage information --version output the version number -e, --ejs add ejs engine support --pug add pug engine support --hbs add handlebars engine support -H, --hogan add hogan.js engine support -v, --view <engine> add view <engine> support (ejs hbs hjs jade pug twig 24 SECTION 03 개발환경구성하기

vash) (defaults to jade) -c, --css <engine> add stylesheet <engine> support (less stylus compass sass)(defaults to plain css) --git add.gitignore -f, --force force on non-empty directory 3 bestfood ejs e C: bestfood>express -e web warning: option `- -ejs' has been renamed to `- -view=ejs' create : web create : web/package.json create : web/app.js create : web/public/images create : web/public/stylesheets create : web/public/stylesheets/style.css create : web/public/javascripts create : web/public create : web/routes create : web/routes/index.js create : web/routes/users.js create : web/views create : web/views/index.ejs create : web/views/error.ejs create : web/bin create : web/bin/www install dependencies: > cd web && npm install run the app: > SET DEBUG=web:* & npm start express generator package json c: bestfood web package json { "name": "web", "version": "0.0.0", "private": true, "scripts": { 3.7 노드환경구성하기 25

"start": "node./bin/www" }, "dependencies": { "body-parser": "~1.17.1", "cookie-parser": "~1.4.3", "debug": "~2.6.3", "ejs": "~2.5.6", "express": "~4.15.2", "morgan": "~1.8.1", "serve-favicon": "~2.4.2" } } 4 C: bestfood web public images -> img javascripts -> js stylesheets -> css 5 package json npm install package json web C: bestfood web>npm install 6 save package json package json formidable mysql mysql MariaDB MariaDB MySQL mysql C: bestfood web>npm install formidable mysql - -save web@0.0.0 C: bestfood web +- - formidable@1.1.1 `- - mysql@2.13.0 +- - bignumber.js@3.1.2 +- - readable-stream@1.1.14 +- - core-util-is@1.0.2 +- - inherits@2.0.3 +- - isarray@0.0.1 26 SECTION 03 개발환경구성하기

`- - string_decoder@0.10.31 `- - sqlstring@2.2.0 3.8 노드실행하기 Nginx Nginx 노드서버실행하기 npm start CTRL + C C: bestfood web>npm start > web@0.0.0 start C: bestfood web > node./bin/www N O T E nodemon npm start로노드를실행하면소스코드를수정한것이반영되지않는다. 그래서이런경우를위한여러모듈이있는데, 그중에서간단히사용할수있는게노드몬이다. 설치 : npm install nodemon g ( 어떤프로젝트에서도사용할수있게하기위해전역으로설치한다 ) 프로젝트디렉터리에서 nodemon이라고실행하면된다. 그러면소스코드가수정될경우수정을감지하고다시시작되는것을확인할수있다. 따라서우리는소스코드를변경할때마다서버를재시작해야하는번거로움을줄일수있다. 다음은 nodemon을실행한화면이다. C: bestfood web>nodemon [nodemon] 1.11.0 [nodemon] to restart at any time, enter `rs` [nodemon] watching: *.* [nodemon] starting `node./bin/www` 3.8 노드실행하기 27

결과확인하기 http://localhost:3000 localhost localhost 그림 3-27 ip 3000 80 C: bestfood web bin www 3.9 자바 JDK 설치하기 OS JDK URL https://www.oracle.com/downloads/ JDK URL http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151. html N O T E OpenJDK 안드로이드스튜디오 2.2 버전부터는 OpenJDK 8이함께설치된다. 그래서자바를별도로설치해서사용할수도있고함께설치된 JDK를사용할수도있다. 별도로설치하고싶지않다면프로젝트에서 File Project Structure SDK Location 에있는 Use embedded JDK 를체크하면된다. 이렇게할경우, 이장에서설명하는 3.9 자바 JDK 설치하기 내용은건너뛰어도된다. 28 SECTION 03 개발환경구성하기

21 Accept License Agreement OS 그림 3-28 JDK 64 jdk 8u131 windows x64 exe 2 그림 3-29 JDK 3.9 자바 JDK 설치하기 29

23 그림 3-30 24 JDK 그림 3-31 30 SECTION 03 개발환경구성하기

3.10 안드로이드스튜디오설치하기 21 URL https://developer.android.com/studio/ 그림 3-32 2 그림 3-33 1 그림 3-34 2 3.10 안드로이드스튜디오설치하기 31