이때까지 C, C++, Python을 이용해 많은 코딩을 해 왔지만 웹 코딩은 안해봤습니다.
웹 특성상 코드 수정을 안해도 환경에 따라 결과가 다르게 나오는것과 같은 제 머리속 논리와는 다르게 나오는 문제 때문에 이때까지 정을 못 붙이고 있었지요...
근데 개발을 하다보니 역시 사람들에게 보여줄 수 있는건 웹이고 최근에는 웹을 통해 많은 것들을 할 수 있기 때문에 웹 공부를 하기로 했습니다.
그리고 JS도 공부해 볼겸 Node.js의 Express 엔진과 Jade, Mysql을 이용해 만들기로 하였습니다.(OS 환경은 제 맥북인 OSX 요세미티입니다)
git은 동아리 서버를 사용하고 있고, 주소는 http://yobi.newheart.kr/yumere/NodeBlog 입니다.
1. Node.js
Node.js는 확장성 있는 네트워크 애플리케이션 개발에 사용되는 소프트웨어 플랫폼이다. Node.js는 작성언어로 자바스크립트를 활용하여 Non-blocking IO와 단일 쓰레드 이벤트 루프를 통한 높은 처리 성능을 갖고 있다.
Node.js는 내장 HTTP 서버 라이브러리를 포함하고 있어 웹서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통한 웹 서버의 동장에 있어 더 많은 통제를 가능케 한다.(출처: 위키백과)
- Express Engine
- 강력한 라우팅
- 리다이렉션 헬퍼
- 동적 뷰 헬퍼
- 애플리케이션 레벨 뷰 옵션
- 컨텐츠 니고시에이션
- 애플리케이션 마운트
- 고성능에 초첨
- 뷰 그리기 및 파셜 지원
- 설정 기반 구성
- 세션기반의 플래시 알림
- Connect 모듈 내장
- 전용 명령어 지원으로 신송한 애플리케이션 생성
- 높은 테스트 범위
- Jade - template engine
Express의 경우 http://expressjs.com/ 사이트에서 설명과 API 등을 자세히 볼 수 있습니다.(영문입니다.)
블로그로 만들고자 하는 폴더를 생성하고, npm을 통해 패키지를 init을 한 후 express를 설치합니다.
- mkdir myapp
- cd myapp
- npm init
- npm install express --save
위와 같이 설치를 진행하면 아래 그림과 같이 node_modules 폴더 내에 express가 생긴것을 볼 수 있습니다.
마찬가지로 jade 또한 npm install jade 명령을 통해 설치하면 되고, node_modules 폴더내에 존재하게 됩니다.
3. 간단하게 Test
간단하게 index.js를 만들고 express를 이용해 접속하면 hello world를 출력하면 서버를 만들어 보도록 하겠습니다.
myapp 폴더내에 index.js 파일을 만들고 아래 그림과 같이 코드를 작성합니다.
이 후 node index.js 명령어를 실행하면 express가 실행이 되고 브라우저를 이용해 http://localhost:3000 으로 접속하면 정상적으로 실행되는 것을 확인할 수 있습니다.
'Programming' 카테고리의 다른 글
[Python] gevent & monkey pathcing (0) | 2015.01.28 |
---|---|
[Python] gevent & mechanize, asynchronous Scraping (1) | 2015.01.24 |
[Python] Beautiful Soup과 smtp lib 이용해 게시판 파싱 & 메일 (0) | 2013.10.30 |
[Python] 시작해봅시다 (1) | 2013.04.02 |
[perl] webhacking 4번 http get request (3) | 2012.12.10 |