달력

5

« 2024/5 »

  • 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
  • 31

'Javascript & HTML & CSS/node.js'에 해당되는 글 25

  1. 2016.08.11 [express 프레임워크] 요약

프레임워크란?

IoC(제어의 역전) 방식으로 개발할 수 있는 라이브러리.

라이브러리는 개발자가 가져와서 사용할 수 있는 함수(모듈)의 모음이라고 한다면,

프레임워크는 골격이 이미 짜여져 있는 프로그램(컨테이너)이라고 볼 수 있다.

골격은 이미 있으니 개발자는 그것에 필요한 부분만 보충해서 작성하면 프로그램이 완성된다.


express프레임워크는 제공하는 기능이 비교적 적은 micro framework로 분류됨.


express프레임워크는 express모듈로 만든 프레임워크다.


익스프레스 프레임워크 설치

npm install -g express-generator@4

(여기서 4는 버전을 뜻함)


익스프레스 프로젝트 생성

express 프로젝트이름


외부모듈 설치

먼저 프로젝트로 들어간다.

cd 프로젝트 이름

외부모듈을 설치한다.

npm install


익스프레스 앱 실행

set DEBUG=myapp:* & npm start  (디버그 모드로 실행, DEBUG라는 이름의 환경 변수를 설정하는 것. 한번만 해줘도 이후부터는 cmd창을 닫지 않는 이상 그냥 npm start만 해도 디버그 모드로 실행 됨)

일반 모드로 실행하려면 처음부터 그냥 npm start 해도 됨   (일반 모드로 실행)


익스프레스 옵션

도움말 : express -h

버전 : express -v

ejs사용 : express -e

.gitignore파일 생성 : --git

그 외에도 --hbs(핸들바 템플릿), --hogan(호간템플릿), --css 엔진명(css엔진), --force(프로젝트 이미 존재해도 새로 생성) 등이 있음.


익스프레스 프레임워크 디렉토리 구조




<프로젝트 수행을 위한 express프레임워크 학습 가이드>

가장 먼저 디렉토리 구조를 살펴봐야 함.

중심 파일 뜯어보기(app.js)

 - 서버 생성

 - 미들웨어 설정

 - 애플리케이션 설정

 - 페이지 라우트

 - 에러 처리

 - 모듈화

템플릿파일 관리(페이지 렌더링 관련)

 - views폴더의 jade파일 살펴보기(기본파일 index, layout, error)

 - jade파일 만들기(app.js에 라우팅 정보 등록해야 함)

app.get('/product', function(req, res){

    res.render('product', {

        title: 'Product Page'

    });

});


res.render('view폴더의 파일', 뷰에 전달하고자 하는 JSON데이터);

 - view폴더에 하위폴더 생성(폴더구조 관리)

 - 레이아웃(extends태그로 레이아웃 지정, block태그는 변수 역할)

(- ejs는 jade에 익숙해지고 쓸 것이라서 일단 생략...)

실행 환경 설정(app.js)

 - 404에러 처리

 - development, production 모드

cmd에서 모드 설정

> SET NODE_ENV=production

> npm start

app.js에서 모드 설정

app.settings.env = 'production';









:
Posted by 클레잇