Upload
etribestg
View
225
Download
0
Embed Size (px)
DESCRIPTION
2014-07-25 Node.js 웹어플리케이션 아키텍처 구축에 관련한 연구 - 정병헌
Citation preview
Node.js 웹어플리케이션 아키텍처 구축에 관련한 연구
이트라이브 STG 정병헌 대리
무엇을 해 나아갈 것인가 ?!
1. Node.js 알아보자 !
1. Node.js 가 뭔데 ?
2. Node.js 가 뭐가 좋은데 ?
3. Node.js 는 어떻게 하는데 ?
4. Node.js… 근데 말이지 이거 참 ..;;
2. Node.js 로 만들어보자 !
3. Node.js 로 구축해보자 !
4. Node.js 로 적용해보자 !
• 연말까지 바라본 Long-term 계획일 뿐 일정은 아닙니다 . ( 결코 아니라고 !!) 오해 없으시길 바랍니다 .
• 이번 시간에는 Node.js 라는 녀석에 대해 두리뭉실하게 알아보는 취지로 얘기해보도록 하죠 .
1. Node.js 알아보자 !
Javascript 를 서버 사이드로…
“ 브라우저에 살고 있던 자바스크립트를 서버사이드에서 알아먹게끔…그리하여 우린 서버단 코딩을 자바스크립트 언어로 짜는 거야 !!”
1. Node.js 가 뭔데 ?
“Node.js” 물론 이 또한 옛날옛적 얘기입니다 !!
제가 풍문으로만 들었던 node.js 기원도 어언 ~~ 몇 년 쯤 전 이야기 같은데…혹시나 실무는 뭐 더욱 더 아니더라도 , 그저 호기심만으로 한 번 쯤 발을 담가보면 어떨까요 ?
2. Node.js 가 뭐가 좋은데 ?
1. Single Thread!!
2. Event Driven!!
사실상 1 번 , 2 번 등의 다소 고리타분한 얘기를 꺼내지 않더라도…(1 번은 왠지 느낌상으로도 단점일거라고 생각되지 않나요 ?;;)
자 !! 웹개발 어느 정도껏 해먹은 짬에서
자바스크립트 다들 아주 징그럽게 많이들 짜보셨지 않습니까 ??!!( 다들 자바스크립트 코딩으로 거의 소설 한 두 편 씩은 쓰신 분들이시라 믿고… 또는 앞으로 반드시 !! 그리하게 되실 분들이기에… )
어플리케이션 성능 상의 장점을 고려하지 않더라도 웹개발자 입장에서는 데이터 파일 I/O 를 만들건 네트워크 통신 모듈을 만들건 자바스크립트 코딩만으로 만들어 본다는 것… 퍼포먼스 측면은 물론이고 왠지 엄청난 호기심이 생기지 않으십니까 ??
3. Node.js 는 어떻게 하는데 ?
자 !! 웹개발을 하기로 했습니다 . 물론 Node.js 를 써서 말입니다 .
뭔가 도구가 ( 연장 ?) 필요하겠죠 ?
개발환경도 필요하고 (IDE.. 일단 이 부분은 키핑해두시고 ;;;)웹서버도 필요하고 .. 등등입니다 !!
Node.js 를 처음 접하는 우리 웹개발자들에게 아 ~~ 주 아주 유용한 문서 페이지가 있더랍니다 .
http://www.nodebeginner.org/index-kr.html#javascript-and-nodejs
번역문서이지만 깨나 잘 되어 있는 듯해요 . 읽어 내려가기만 해도 왠지 재미가 쏙쏙 !!
어디서 뭐 받아서 설치하나 ??
읽다보면 똮 !!! 하고 튀어 나옵니다 !!
https://github.com/joyent/node/wiki/Installation#installing-without-building
문서에 나오네요 . 친절하게도 깃허브 다운로드 링크가…
( 과연 친절할까요 ? To be continue!!)
3. Node.js 는 어떻게 하는데 ?
node.exe 파일 실행하면 쭈르르륵 ~ 설치가 되겠죠 .전 여기다 깔았네요…
자 이제 뭘 할까요 ?
뭔가 새로운 (?) 프로그래밍 환경이 만들어졌습니다 !!
뭐 할까요 ?
“Hello World” 를 찍어야 하지 않겠습니까 ???!!!!
3. Node.js 는 어떻게 하는데 ?
전 앞으로 이 디렉토리를 내 app root 로 삼겠습니다 .
var http = require("http");
http.createServer(function(request, response) { response.writeHead(200, {"Content-Type": "text/plain"}); response.write("Hello World"); response.end();}).listen(8888);
server.js 라고 제가 서버로 사용할 자바스크립트 파일을 하나 만들었고요 ..
생소해 하실 것 없습니다 . 이건 분명 자바스크립트 언어라구요 !!제발 그렇다고 믿어줘요 !!!
3. Node.js 는 어떻게 하는데 ?
코드를 딱 보면 왠지 웹브라우저에http://localhost:8888/ 을 때려보고 싶어지시죠 ??
한 번 때려봅시다 !!
서버에게 일을 하라고 오다 (order!!) 를 줘야 일을 하겠죠 ?
자 서버 구동을 시작해봅시다 !!
3. Node.js 는 어떻게 하는데 ?
음 .. 아주 적은 노력으로 우린 node.js 라는 뭔가 센세이셔널한 뉴타입 프로그래밍 렝귀지 (?) 로 인사말을 뽑아냈습니다 .!
전 앞으로 이 자바스크립트 코드를 좀 더 멋지게 !!! 변형을 시킬 계획입니다 !!
과연 이 한낮 js 코드가 어떤 그림을 그려줄 것인지 적당히만 기대해주시면 좋겠네요…
그럼 오늘은 여기서 이만…
4. Node.js… 근데 말이지 이거 참 ..;;
안 끝났습니다…
오늘 얘기 안하고 넘어가면 나중에 후회하실 것 같아서…
오픈소스라는 것들은 참 아쉽게도 말이죠… node.js 라는 녀석을 손 대는 초기부터 저 같은 그저 그런 개발자에게 좌절을 줄 수 있을 만한 요인을 찾아보니…
1. Window 환경과 안 친하다 ;;
2. 한글과 안 친하다 ;;
아까 알려드렸던 번역문서 기준으로 나름 연구 진행을 해보고 체험한 결과 ( + 구글링 결과 )
위와 같은 좀 .. 안 그랬으면 하는 문제들이 벌써부터 막 겁을 주고 있습니다 .
일단 그러하다는 것만 참고해주시구요…
진짜로 오늘은 이만… !