Notice
Recent Posts
Recent Comments
Link
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

차근차근

[nodejs & mongoDB & heroku] diary app (1) 본문

대학교/Android

[nodejs & mongoDB & heroku] diary app (1)

SWKo 2020. 3. 26. 00:54

0. 사전 지식

  • 다이어리 앱 자체만으로는 동작이 되지 않는다. 왜냐하면 일기를 썼으면 어딘가에 저장을 해야하고 불러올 수 있어야 하고 수정할 수 있어야 하기 때문이다.
  • 방법은 있다. 단말기 자체에 있는 DB를 이용하는 것이다. 그러나 다른 핸드폰을 사용하게 되면 전에 있던 데이터를 사용할 수 없다. 그래서 서버가 필요한 것이다.
  • 먼저 서버는 어떻게 만들까?
    • 일단 서버사이드 언어로는 nodejs, JSP, php, django 등이 있다. 여기서는 Nodejs 를 사용할 것이다.
    • 서버 언어는 데이터베이스에서 정보를 가져온 후 정보를 표시하는 뷰쪽으로 정보를 전달해준다. 뷰에서 사용자가 가져온 정보를 볼 수 있다.
    • Nodejs는 Client, Server 두 역할을 모두 할 수 있다.
  • 라이브러리와 프레임워크의 차이는?
    • 라이브러리는 하나의 기능을 하는 작은 단위이고 그것이 모이면 모듈을 이룬다. 라이브러리의 집합이 모듈화 된 것이 프레임워크이다.
    • Nodejs의 프레임워크로는 Express가 있다.
  • 데이터베이스는 어떻게 사용할까?
    • 일기를 저장하고 읽어오려면 데이터베이스가 필요하다.
    • 여기서는 mongoDB를 사용하겠다. mongoDB는 nodejs와 합이 잘 맞는다. 전통적인 테이블 기반인 관계형 데이터베이스가 아닌 JSON형태의 데이터베이스다. 간결하고 쉬운 장점이 있다.
  • Heroku란?
    • 개발 프레임워크(nodejs)를 탑재하여 구동시킬 수 있는 클라우드 서비스이다.
    • nodejs가 서버 역할은 하지만 그 파일을 올려서 구동시키는 서버(컴퓨터환경)가 없다. 그 환경(500MB까지)을 무료로 사용하게 해준다.
    • 헤로쿠에서는 Nodejs, Ruby, Java, PHP, Python, Go, Scala, Clojure 언어를 지원한다.
    • 다른 클라우드 서비스로는 AWS가 있다.

1. Heroku

  • 서버만 만들어놓으면 안드로이드든 아이폰이든 웹이든 접속을 할 수 있다.
  • 먼저 환경설정을 위해서 nodejs, npm, git을 설치한다.
  • 헤로쿠 사이트 가입 및 CLI 설치를 한다.
  • https://www.heroku.com/
 

Cloud Application Platform | Heroku

Heroku is a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.

www.heroku.com

  • 설치 후 heroku에 다음 명령어로 로그인한다.
    • heroku login

 

  • heroku에서 node.js 샘플 프로젝트 사용하기
    • git clone https://github.com/heroku/node-js-getting-started.git sangwon-heroku
    • git에서 샘플 프로젝트를 clone한다.

 

  • heroku 사이트에 앱 만들기 (sangwon-heroku)
    • heroku create sangwon-heroku
    • 헤로쿠 서버에 내 앱(sangwon-heroku)을 설치할 예정이니 공간을 만들어 놓는다.

 

  • 사이트 접속하기
    • heroku open
    • 다음과 같은 서버 앱이 만들어진다.

📌"센치한 개발자의 다이어리 앱"을 토대로 작성한 글입니다.

'대학교 > Android' 카테고리의 다른 글

[nodejs & mongoDB & heroku] diary app (3)  (0) 2020.03.27
[nodejs & mongoDB & heroku] diary app (2)  (0) 2020.03.26
[Kotlin] Tail Recursive Function  (0) 2020.03.25
KUBAB [마무리]  (0) 2020.01.26
KUBAB [AWS]  (0) 2020.01.26
Comments