전체 글
[Node.js_study] 서버에 GET 요청 처리 해보기
서버를 띄우기 위해 작성할 기본 템플릿 * express 라이브러리 사용법 (server.js 파일) const express = require('express'); const app = express(); app.listen(8080, function() { console.log('listening on 8080') }) * 첫 두줄은 express 라이브러리 첨부와 사용 밑에 app.listen()은 원하는 포트에 서버를 오픈하는 문법이라고 보시면 됩니다. * listen() 함수 안엔 두개의 파라미터가 필요합니다. listen(서버를 오픈할 포트번호, function(){ 서버 오픈시 실행할 코드 }) * 터미널을 켜서 node server.js를 입력하면 서버 실행된다. 브라우저에서 localho..
[Node.js_study] npm과 yarn의 차이
우선 개발에 있어서 npm과 yarn, 이 둘의 차이는 크게 없다라고 보면 된다. yarn이 npm보다 더 나은 점은 다음과 같이 요약할 수 있다. 1. 속도가 더 빠르다. (performance) 2. 보안성이 좋다. (security) 자바스크립트 패키지 매니저 (Javascript Package Manager) npm과 yarn은 자바스크립트 패키지 매니저이다. 여기서 패키지란 npm에 업로드된 노드 모듈을 말한다. 다양한 자바스크립트 프로그램이 패키지라는 이름으로 npm에 등록되어 있고, 패키지가 다른 패키지를 사용할 경우 의존 관계를 가지기도 한다. 이러한 패키지들을 사용하기 위해서는 다운로드, 설치, 업데이트, 의존성 관리, 제거 등 복잡한 상황들이 많이 생기는데 패키지 매니저는 이러한 과정들..
[Node.js_study] Node.js와 Express 라이브러리 설치하기
* 라이브러리 설치시 명령어 사용법 예시(참고) > yarn add express 1. Node.js 설치 구글에 Nodejs 검색 후 가장 먼저 나오는 사이트에 들어가 설치 (중요)10버전 이상이 필요하니 이전에 설치하셨던 분들은 신버전으로 다시 설치 (중요)설치 경로 임의로 바꾸시면 npm명령어가 안먹을 수 있음 경로는 건들지말고 C드라이브 기본 경로로 유지 2. VS code 설치 3. 작업 폴더를 만들고 에디터로 오픈합니다. 4. 터미널을 켜서 npm init을 입력합니다. VS code 에디터 상단 메뉴 Terminal - New Terminal 을 선택 혹은 Ctrl + ` npm init을 입력 - entry point : 제작할 프로젝트의 시작할 실행 파일을 지정 통상적으로는 app.js라..
[Node.js_study] Node.js에 대해서 (Non-blocking I/O)
* JavaScript 구동 엔진인 V8의 등장 내가 짠 자바스크립트, 해석은 누가할까? 크롬(V8), 파이어폭스(SpiderMonkey), 익스플로러(Chakra) 이런 브라우저들이 자바스크립트를 읽고 해석하는 역할을 한다. 자바스크립트를 빠르게 읽고 해석하면 웹사이트 렌더링 성능도 빨라지니 브라우저 개발자들은 자바스크립트를 해석할 수 있는 엔진 개발에 열성이었습니다. 그러다가 구글 사내에 있던 '크롬 브라우저 개발자'들이 자바스크립트 해석엔진인 V8이라는 프로그램을 만들었는데 성능이 너무나도 뛰어난 나머지 V8에 살을 붙여 출시하게 됩니다. 그리고 Node.js라고 이름을 짓습니다. * Node.js를 요약하자면 Node.js는 크롬의 자바스크립트 해석엔진으로 이루어져있다. 자바스크립트를 브라우저 말..
[JavaScript_study] 바벨 (Babel)
* 바벨 (Babel) 바벨을 이용해 최신문법으로 작성하고 예전 버전으로 변환이 가능하다. react, node등 최신 프레임워크는 바벨과 같은 툴들이 전부다 들어있기 때문에 우리가 신경쓰지않고 최신문법으로 개발을 하면 나중에 프로젝트를 빌드해서 사용자에게 배포하는 코드에는 예전 자바스크립트 버전으로 변환해주는 기능이 포함되어 있다. 순수 자바스크립트로 프로젝트를 진행하다가 예전 브라우저를 사용하는 유저에게까지 지원을 해야한다면 babel을 사용해서 버전을 내려서 빌드해야한다. 타입스크립트 컴파일러는 TS를 JavaScript로 변환하는 용도로도 사용한다. // 하지만 최신 JS코드를 예전 JS코드로 변환하는데 사용할 수 있다. * 바벨 실습해보기 https://babeljs.io 사이트에 들어가서 상단..
[JavaScript_study] arrow function (화살표 함수)
* arrow function (화살표 함수)의 특징 문법이 깔끔함 생성자 함수로 사용이 불가능 (무거운 프로토타입을 만들지 말것) 함수 자체 arguments객체를 가지고 있지 않다. ex) console.log(arguments[0])이 되지 않는다. 일반함수에서는 arguments라는 객체가 있어서 전달된 인자에 대한 정보를 가지고 있다. 화살표함수에서는 arguments란 함수 외부의 argument를 참조만함 화살표함수는 node환경에서는 node에서 사용하고 있는 node를 실행할 때 전달받는 인자에 대한 정보를 출력 this에 대한 바인딩이 정적으로 결정된다. 함수에서 제일 근접한 상위 스코프의 this에 정적으로 바인딩됨 * arrow function을 사용하는 이유 - 객체안에서 함수표현..