Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

체대출신 코더의 개발자 성장기

TIL- 서버2 본문

카테고리 없음

TIL- 서버2

미토콘크리트 2019. 6. 19. 20:20

1) package.json

- npm install은 package.json의 dependency에 설정된 것들만 다운받는 것이다.

따라서 다같이 하는 프로젝트를 할때 어떤 모듈을 다운받아 사용한다면, 다른 사람들이 내가받은 모듈이 무엇인지 알 수 있도록, npm install --save를 해줘야 함. 

그래야 dependency에 저장되어 다른 사람이 내가 작성한 코드를 이어서 작업할 때, npm install로 내가 작업할때 사용한 모듈을 손쉽게  다운 받을 수 있다.

 

-npm start은 이 객체 안에 설정된 주소의 파일을 실행시켜줄때 사용한다.

 start :"/index.js" 이런 식으로 적으면, node /index.js 라고 길게 적어줄 필요없이 npm start라고 적어주면 index.js파일이 실행될 수 있다.

nodeman을 실행시키고 싶다면 이곳에 들어가 주소를 바꿔주면 된다.

 

-npm init 명령어는 package.json 을 생성하게 해주는 명령어이다.

 

2) rest 

기억나는 개념은 

http이라는 약속을 망가뜨리지 않고 데이터를 보내는 것이다.

총 6가지 규칙이 있는데, 5가지는 http측에서 지켜져서 보내지지만, 사용자가 설정해서 보내야하는게 있는데 그게바로 

uniform interface이다. 

항상 균일(통일)한 상태로 데이터를 보내는것이다. 따라서 따른 API를 사람들도 쉽게 이 데이터가 무엇인지 해석할 수 있도록 형태를 지켜서 만들어져야한다.

이 형태는 암묵적인 약속이 있는데

  - 계층구조를 나타낼때는 상위/하위/더하위 이런식은 '/'을 이용해 상위와 하위의 계층 구조를 만들어주고

  - url의 끝에는 '/'을 사용하지 않는다 .  상위/하위/더하위/ ==> x 

                                                                         상위/하위/더하위  ==> o

- 띄어쓰기를 표시할때는 대문자를 이용하는 Carmel케이스 보다는 '-'로 이어준다.

 - 언더바 '_' 사용은 되도록 하지 말것

 - 소문자를 사용할것

 - 파일 확장자 사용하지 말것

 - crud(POST,GET,PUT..)의 이름은 url내에 사용하지 말것

 - 뭔가를 구분해서 가져오고 싶을때는 쿼리컴포넌트를 이용해야 한다.

   ex )  유튜브 api에서 ?q="검색어"?max="3" 이런식으로 사용한게 쿼리 컴포넌트라고 한다.

 

3)Common JS 

 module.exports  vs exports

exports는 module안에 있는 객체로서 

module = {exports: []}  이런식으로 들어가있는 것과 마찬가지이다. 

이걸 exports로 축약해서 사용하는건데 

exports.x = 3 이것은 곧 module.exports = 3과 같다.

require을 이용해서 가져오는것은 결국 module.exports 객체라는 것 잊지 말자

하지만 exports와 module.exports를 다른 개념으로 생각하고 같이 사용해서는 안된다.

둘다 같은 module.exports 를 가리킨다!

 

3) PUT 

업데이트 할때 사용하는 메소드이다.

 

4)http 201, 200 messeage 차이 

http에서 200메시지는 서버측에서 데이터를 잘전송받았다는 메시지이고

201은 데이터를 잘전송받았고, 업데이트도 잘완료했다는 뜻이다.

 

5)  setTimeOut 실행에 대하여

기존에 비동기는 코드의 진행순서에 따라 큐에 들어간다고만 생각했다.

하지만 오늘 체크포인트 문제를 풀면서 코드순서대로 읽히긴하지만 비동기함수는 먼저 wep api에 들어가 거기서 시간 순서에 따라 그 시간순서에 따라 차례대로 큐에 들어가는 것을 알아냈다.

Comments