개발 관련 책 읽기(46)
-
4장 - 프로바이더
✅ 아래 내용들에 대해서 알아보자 - 프로바이더 - 프로바이더 등록과 사용 프로바이더 비즈니스 로직을 수행하는 역할을 한다. 프로바이더는 서비스, 저장소, 팩터리, 헬퍼 등 여러 가지 형태로 구현이 가능하다. 프로바이더는 @Injectable() 데커레이터를 사용하는데 @Injectable을 클래스 위에 지정하면, 해당 클래스는 NextJS가 어플리케이션 실행 할 때 로드되며, NextJs의 DI 컨테이너에서 사용가능한 하나의 Provider로 등록된다. 따라서, 어떤 클래스에서든 UserService를 DI 받아 사용가능하고, 별도의 스코프를 지정해주지 않으면 싱글톤으로 생성된다.(스프링과 유사하다) import { Injectable } from '@nestjs/common'; @Injectable..
2023.04.04 -
3장 - Hello NestJS
✅ 아래 내용들에 대해서 알아보자 - 컨트롤러 - - 컨트롤러 사용자 요청과 응답을 가공하고 처리하는 역할을 한다. 아래의 사용자와 관련된 컨트롤러 예제 소스를 참고하자. import { Body, Controller, Get, Param, Post, Query } from '@nestjs/common'; import { CreateUserDto } from './dto/CreateUserDto'; import { VerifyEmailDto } from './dto/VerifyEmailDto'; import { UserLoginDto } from './dto/UserLoginDto'; import { UserInfo } from './entity/UserInfo'; @Controller('user') ..
2023.04.04 -
1장 - Hello NestJS
✅ 아래 내용들에 대해서 알아보자 - NestJS - Node.JS - 패키지 의존성 관리 NestJS NestJS는 Node.js에 기반을 둔 웹 API 프레임워크로서 Express 또는 Fastify 프레임워크를 래핑 하여 동작한다. Express 또는 Fastify는 모두 Node.js를 쉽게 사용하기 위해 만들어진 프레임워크이다. NestJS는 기본 설치 시 Express를 사용하는데 속도면에서 Fastify가 Express보다 2배 더 빠르다. 하지만 Express를 사용하는 이유는 Express가 널리 사용되고 있고 수많은 미들웨어가 NesgJS와 호환되기 때문이다. NestJS는 DB, ORM, 설정, 유효성 검사 등 Node.js에 비해 많은 기본 기능을 제공하고 필요한 라이브러리를 쉽게..
2023.04.03 -
모던 자바스크립트 Deep Dive - 8
✅ 아래 내용들에 대해서 알아보자 - let 키워드 - const 키워드 - 객체 생성 - 일급 객체 let 1. 변수 중복 선언 금지 let 키워드는 이름이 같은 변수를 중복 선언하면 문법 에러가 발생하여 변수 중복을 방지해 준다. //1. let은 동일한 이름의 변수를 중복 선언하면 문법 에러를 발생시켜 변수 중복을 방지해준다. let foo=123; let foo=456; //SyntaxError: Identifier 'foo' has already been declared 2. 블록 레벨 스코프 let 키워드로 선언된 변수는 블록 레벨 스코프를 따른다. /** * var 키워드로 선언한 변수는 오로지 함수 코드 블록만 지역 스코프로 인정하였다. * 하지만 let 키워드로 선언한 변수는 모든 코드..
2023.03.31 -
모던 자바스크립트 Deep Dive - 7
✅ 아래 내용들에 대해서 알아보자 - 스코프 - 스코프 종류 - 전역 변수 - 전역 변수의 생명주기와 문제점 스코프 스코프(유효 범위)는 변수, 함수와 깊은 관련이 있으므로 주의 깊게 봐야 할 것 중 하나이다. var 키워드로 선언한 변수와 let/const 키워드로 선언한 변수의 스코프도 다르게 동작한다. 변수는 자신이 선언된 위치에 따라 유효 범위, 즉 다른 코드가 변수 자신을 참조할 수 있는 범위가 결정된다. 변수뿐 아니라 모든 식별자는 자신이 선언된 위치에 의해 자신을 참조할 수 있는 유효 범위가 결정된다. 이를 스코프라 한다. var var1=1; if(true){ var var2=2; //코드 블록 내 선언 변수 if(true){ var var3=3; //중첩된 코드 블록 내에서 선언한 변수 ..
2023.03.30 -
모던 자바스크립트 Deep Dive - 6
✅ 아래 내용들에 대해서 알아보자 - 함수 - 함수의 여러 가지 종류 - 정리 함수 함수는 JS에서 가장 중요한 핵심 개념으로 잘 이해하고 넘어가자. 쉽게 이야기하면 입력 -> 연산 -> 출력하는 일련의 과정을 말한다. 함수 선언문 방식 함수 선언문은 함수 이름 생략 불가 함수 선언문은 표현식이 아닌 문이다. 따라서 크롬 개발자 도구에서 undefined로 출력된다. function add(x,y){ return x + y; } function empty(){ return; //반환문 생략 시 undefined 반환 } console.log(empty()); //undefined JS에서는 생성된 함수를 호출하기 위해 함수 이름과 동일한 식별자를 암묵적으로 생성하고, 거기에 함수 객체를 할당한다. 즉, ..
2023.03.29