전체 글

1. 모듈화? app.js 하나에 코드를 다 때려박아 놓으면 분석하기가 매우 어려워진다. 기능별로 코드를 구분한 후 독립된 파일로 분리시키는 것이 효율적이다. 기본적으로 js 파일을 새로 만드는 것부터 모듈화는 시작된다. exports와 module.exports를 사용할 수 있다. module.exports를 사용하면 객체를 그대로 뽑아 쓸 수 있어서 훨씬 좋다. 심지어는 module.exports와 exports를 같이 쓰면 module.exports의 우선순위가 높아서 exports로 꺼내온 것은 무시된다. ==> module.exports를 쓰면 된다. 2. 모듈을 분리할 때 사용하는 전형적인 패턴 함수를 할당하는 경우 모듈 안에서 함수를 만들어 할당. 모듈을 불러온 후 소괄호를 붙여 모듈을 실행..
현재 요약하고 있는 책에는 mongoDB, MySQL의 연결방식이 쓰여 있지만 나는 postgresql을 실무에서 쓰고 있기 때문에 postgresql 연결방법에 대하여 적도록 하겠다. 1. postgresql을 지원하는 pg 모듈 설치 npm install pg 쉘에 이렇게 입력하여 일단 pg 모듈을 설치한다. 2. pg 모듈과 knex 모듈을 이용하여 db연결 var { Pool } = require('pg'); const pool = new Pool({ user: "User Name", host: "Host Name", database: "Database Name", password: "Password", port: 5432, }); pool.connect(); pool.query("쿼리 입력", ..
1. 기본 http 모듈로 서버 만들기 http 모듈에 기본적으로 정의되어 있는 createServer() 메서드를 이용하여 서버 객체 만들기 var http = require('http'); // 웹 서버 객체 생성 var server = http.createServer(); // 웹 서버를 시작하여 3000번 포트에서 대기 var port = 3000; server.listen(port, function() { console.log('웹 서버 시작. : %d', port); }); 클라이언트가 웹 서버에 요청할 때 발생하는 이벤트 처리하기 웹 브라우저에 이 서버에 데이터를 요청하면 그때마다 이벤트가 발생하므로 상황에 맞추어 콜백 함수를 각각 등록해주면 된다. 주요 발생 이벤트는 아래와 같다. conn..
1. 주소 문자열과 요청 파라미터 다루기 노드에서는 url 모듈을 사용 예를 들어 주소 문자열이 https://google.co.kr/?adfasf=123 이렇게 있다 하면 url 모듈이 주소를 파싱하여 protocol: 'https' host: 'google.co.kr' query: '?뒤의 것들' 처럼 읽어준다. 이 때 주로 사용하는 메서드는 parse(), format()이 있다. parse(): 주소 문자열을 파싱하여 URL 객체를 만들어 준다. format(): URL 객체를 주소 문자열로 반환한다. 쿼리스트링을 더 쉽게 표현할 수 있는 querystring 모듈도 있다. 2. 이벤트 이해하기 노드는 이벤트 기반으로 비동기로 처리한다. 이벤트? -> 한쪽에서 다른 쪽으로 어떤 일이 발생했을을 알..
1. 자바스크립트의 객체와 함수 js는 자료형을 명시하지 않는다. (-> 자료형을 명시하는 TypeScript가 있긴 함.) js에서는 자료형을 알아서 판단하는데 자료형으로는 Boolean, Number, String, undefined, null, Object 가 있다. 타입을 확인하고 싶을 때는 typeof 연산자를 사용한다. 문자열을 숫자로 변환하고 싶을 땐 parseInt()로 정수형으로, parseFloat()로 부동소수점 형태로 바꿀 수 있다. js의 객체는 변수 = {} 로 할당한다. 아래와 같이 객체의 속성은 대괄호를 통해서 할당하거나 . 연산자를 통해 할당할 수 있다. let Person = {}; Person['age'] = 20; Person['name'] = pure; Person...
전역 객체? 전역 객체는 언제 어디에서나 사용이 가능하다. 함수 안에서 선언한 변수는 그 함수 안에서만 유효하다. 하지만 전역 객체는 함수 안과 밖 모두에서 사용할 수 있도록 범위가 제한되어 있지 않은 객체다. 따라서 어디에서나 사용이 가능하다. 대표적인 전역 객체로는 console, process, exports가 있다. 전역 변수? 전역 변수 또한 마찬가지로 어디에서나 사용이 가능하다. 예) console.log('현재 실행한 파일 이름 : %s', __filename); console.log('현재 실행한 파일의 폴더 경로: %s', __dirname); 여기서의 __filename과 __dirname이 전역 변수이다. *console.dir() 메서드는 객체 안에 들어있는 모든 속성을 콘솔에 출력..
http://www.yes24.com/Product/Goods/36886447 Do it! Node.js 프로그래밍 - YES24 지금 당장 서버가 필요하다면? 실제 서버로 구동 가능한 코드로 배워라! 웹 서버, 채팅 서버, 모바일 서버, 위치 기반 서비스 서버, JSON-RPC 서버까지 한 권으로 끝낸다! 이 책은 누구나 쉽게 접근 www.yes24.com **위의 책을 공부하면서 정리하는 내용입니다. 01-1 노드란 무엇일까? 노드는 자바스크립트를 이용하여 서버를 만들 수 있는 개발 도구이다. 노드가 태어난 배경은? 노드는 09년에 만들어졌다. 그 당시에는 웹 서버에 파일을 업로드 하면 업로드가 완료되기 전까지 웹 서버에서 데이터를 조회한다거나 하는 다른 작업을 할 수 없었다. 이를 해결하기 위해 나..
find : 파일 찾기 현재 디렉토리에서 이름이 .java로 끝나면서 파일 크기가 1 바이트 이상인 것을 찾기 ~$ find ./ -name *.java -size +1c cat : 파일의 상세 내용 확인하기 $ cat Hello.java head: 파일 내용의 위에서부터 조건에 맞게 잘라서 출력 tail: 파일 내용의 아래에서부터 조건에 맞게 잘라서 출력 grep: 파일에서 특정 문자열을 찾기
Purewater
프로그램 공부 일기장