-
140402 NodeJSWEB/NodeJS 2014. 4. 2. 17:28반응형
* 개발 팁
- Nodejs는 한달씩 걸리는 다른 언어들에 비해서 학습곡선이 적음. 2주면 됨
- IT 3개월 차이 -> 3년 차이
- 다른 언어를 공부하면 내가 잘하는 언어의 단점이 보임 !! 꾸준히 고웁해야한다.
- 기획자의 생각/디자이너와의 협업/클라이언트의 니즈 파악
-> 주변지식을 늘리면
↓ 내 지식/경험이 늘어남
* NodeJS
- V8엔진 향상될수록 NodeJS 엔진도 빨라짐
- 싱글쓰레드 : 이벤트가 발생할 때마다 처리
- Blocking("하나만" 처리, 다른게 읽고 있으면 다른게 와도 중지를 못함),
비동기 Non-Blocking I/O : java.io(io: input output) : Block이 일어나지 않고 "동시"에 읽고 쓸 수 있음
- TCP : Transfer Control Protocol 전송을 컨트롤 하는 프로토콜
- 장점 : 사용자 1명 당 "콜백"을 등록 -> 싱글쓰레드/이벤트 방식으로 처리 -> 속도 빨라짐
객체(자바스크립트의 프로토타입)보다는 함수 위주
객체 위주로 묶으면 편하지만, 상속/다형성 등은 그렇게 많이 쓰지 않음
단점 : 하나 잘못되면 다 같이 다운 됨
-
. JS / JAVA
. JS
- function divide(a,b){
return a/b;
}
. JAVA
- public double divide(int a, int b){
double c = (double)a/(double)b;
return c;
}
* Javascript
var 안붙이면 전역변수됨.
* AJAX
<script>
var xhr;
// 객체를 얻어옴
function getXMLHttpRequest(){
// 지원하면
if(window.getXMLHttpRequest){ // IE7 이상, 모든 브라우저
return new XMLHttpRequest();
} else {
return new ActiveXObject("Microsoft.XMLHTTP"); // 옛날 브라우저들
}
}
function sendProcess(){
debug.value="";
xhr = getXMLHttpRequest(); //상태가 변할 때마다 콜백 함수를 등록
xhr.onreadystatechange = viewData; // 콜백함수 이름
xhr.open("GET", "http://localhost:1337", true); // get, 비동기 방식
xhr.send(null);
}
function viewData(){ // 4번 호출 됨
// console.log("viewData 호출됨");
var debug = document.getElementById("debug");
switch(xhr.readyState) {
case 1:
debug.value += "1. Loading\n";
break;
case 2:
debug.value += "2. Loaded\n";
break;
case 3:
debug.value += "3. Interactive\n";
break;
case 4:
debug.value += "4. Completed\n";
if( xhr.status == 200 ){
debug.value += "서버 응답 성공!!!";
}else{
debug.value += shr.status + ":" + xhr.statusText;
}
break;
}
}
</script>
------------------------------- server.js
var http = require('http');
http.createServer(function(req, res){
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
Nodejs -> http 서버 띄움
0. 크롬의 크로스도메인 문제 해결해야 됨 : 크롬 속성 -> 대상 -> ...chrome.exe" --disable-web-security 추가
1. cmd 창에서 node server.js 실행
2. ajax01.html 실행시키면 ajax 실행 됨
3.
아래 처럼 뜸.
1. Loading
2. Loaded
3. Interactive
4. Completed
서버 응답 성공!!!
반응형'WEB > NodeJS' 카테고리의 다른 글
20140414 아마존 서버 생성 / GCM (2) 2014.04.14 20140411 Socket (0) 2014.04.11 20140407 mysql nodejs게시판 (0) 2014.04.07 140404 Mysql, Nodejs (0) 2014.04.04 20140403 서버설명/NodeJS (0) 2014.04.03