Node.js -2

darby·2021년 7월 10일
0

Nest.js 및 Node.js

목록 보기
3/3
  • 이번엔 그냥 내가 이해한 용어 및 개념들을 올릴 것이다.

1. 구조

2. Controller

  • Controller = url+ service의 funtion함수 불러오기
    내가 이해한 컨트롤러의 역할은 HTTP의 요청을 처리해서 응답하는 역할이라고 생각이 든다.

3. Serviece

  • funtion (함수) 를 정의하는 곳이라고 생각한다.

4. DTO

  • 데이터 전송 객체이며 , 컨트롤러와 서비스에 필요하다.
  • 코드를 간결하게 해주며, Nestjs가 들어오는 쿼리에 대해 유효성을 검사할 수 있게 해준다.
  • 키워드 : readonly 를 사용 , 함수에 전달되는 배열을 변경할 수 없게하여 코드의 일관성을 유지할 수 있는 키워드이다.

5. 용어정리

  • Payload: 전송되는 데이터
  • Middeware : 클라이언트에 요청이 들어오고, 그 요청을 보내기 위해 응답하려는 중간(미들)의 목적에 맞게 처리를 하는 역할 , 즉 거쳐가는 함수들 이라 생각하면 된다.
  • OOP ( Object Oriented Programming) : 객체의 관점에서 프로그래밍 한다.
    (1) 캡슐화
    하나의 객체에 대해 그 객체가 특정한 목적을 위해 필요한 변수나 메서드를 하나로 묶는 것
    (2) 추상화
    실세계 있는 것을 본 따 클래스를 만들고, 그 클래스의 상태와 행동은 부여한 객체를 만든다. 그러나 누가 세상에 모든 클래스를 담고, 객체를 만들 수 있는가? 그래서 추상적으로 생각해 일단 큰 틀의 클래스를 구현하고, 거기에 최소한 이러한 공통적인 요소나 필수적인 요소는 들어 갔으면 하는 바램에서 만든것이 추상클래스이다.
    (3) 다형성
    상속을 통해 기능을 확장 하거나 변경하는 것을 가능게 해준다.
    이를 통해 코드의 재사용, 코드길이 감소가 되어 유지보수가 용이하도록 도와주는 개념이다. 쉽게 말해 같은 동작이지만 다른 결과물이 나올때 이를 다형성 이라한다.
    (4)상속성, 재사용 (Inheritance)
    기존 클래스에 기능을 가져와 재사용 할 수 있으면서도 동시에 새롭게 만든 클래스에 새로운 기능을 추가 할 수 있게 만들어준다.
  • Interface : 동일한 목적하에 동일한 기능을 보장하게 하기 위함
    어떻게? 자바의 다형성을 이용하여 개발코드 수정을 줄이고, 유지보수성을 높인다.
    (1) 상수
    인터페이스에서 값을 정해줄테니 함부로 바꾸지 말고, 제공해주는 값만 참조해라(절대적)
    (2) 추상 메소드
    가이드만 줄테니 추상메소드를 오버라이팅 해서 재구현 해라 (강제적)
    (3) 디폴트메소드
    인터페이스에서 기본적으로 제공해주지만, 마음에 안들면 각자 구현해서 써라 (선택적)
    (4) 정적메소드
    인터페이스에서 제공해주는 것으로 무조건 사용 (절대적)

0개의 댓글