전체 글

이거 웨 않 되?
Service 역할과 생성방법을 배우다. 1. NestJS에서 Service 서비스 안에서는 데이터베이스 관련 로직을 처리한다. 데이터베이스에서 데이터를 가져오거나 데이터베이스 안에 정보를 넣어주는 등의 로직을 처리한다. nest g service 서비스명 --no-spec 위와 같은 nestjs/cli 명령어를 사용하면 서비스 파일을 생성할 수 있다. 나는 boards 서비스를 cli를 이용해서 Service를 생성했더니 boards.service.ts 파일이 생성됐다. service파일 안에는 @Injectable 데코레이터가 있으며 다른 컴포넌트에서 이 서비스를 사용할 수 있게 만들어준다. cli로 Service 생성 시 module에도 자동으로 providers로 생성한 Service가 추가된다는..
NestJS 프로젝트 시작과 아키텍처 구조를 파악하다 1. NestJS 시작하는 명령어 NestJs는 명령어를 사용해서 프로젝트 구조를 만든다. 처음 프로젝트를 생성할 때, 특정 기능을 담을 모듈을 생성할 때. NestJS 프로젝트를 생성하는 명령어는 다음과 같다. npm i -g @nestjs/cli nest new 프로젝트명 nestjs 클라이언트를 npm 명령어를 사용해서 다운받아준다. yarn 명령어로도 사용할 수 있는데 난 npm이 좋다. Controller는 Express에서 라우터? 비슷한 기능을 하는 것 같다. Get(Handler) 안에 아무것도 없으니 '/'로 끝나는 주소에 요청을 보낸다. 그리고 appService의 getHello 함수에 접근한다. appService의 getHell..
Node.js를 기반으로 하는 서버 프레임워크 NestJS를 배우다. 1. NestJS 란 Nest.js는 Node.js를 기반으로 한 서버 개발을 위한 프레임워크이다. 내부적으로는 Express와 Fastify을 선택해서 사용할 수 있다. Express와 달리 정형화된 아키텍처를 지니고 있다. Controller, Service 등의 개념이 있다. 정해진 아키텍처가 없다면 서로 다른 개발자마다 다른 구조로 작성하게 된다. 다른 사람의 코드를 분석할 때 아키텍처부터 파악해야 하는 번거로움이 있다. Nest.js는 TypeScript 언어를 기반으로 작성되어 있다. 따라서 TypeScript를 배우고 있는 현재의 나의 상황에 맞춰 배우기 적합하다고 판단하여 배워야겠다고 생각했다. 그리고 TypeScript..
타입 종류를 더 알아보다.1. 커스텀 타입type World = 'world'타입을 'world'라고 사용자가 마음대로 정의할 수 있다. 이런 식으로 정의한 타입을 백틱(`)을 사용해서 대입할 수 있다. type World = 'world' | 'hell'type Greeting = `hello ${World}`const c: Greeting = 'hello world' or 'hello hell' // 자동완성 됨이런 식으로 자바스크립트에서 사용하던 문법이 적용된다. 자바스크립트 기반이니까. 2. enumconst enum EDirection { Up, // 0 Down, // 1 Left, // 2 Right, // 3 } const ODirection = { Up: 0..
타입스크립트 타입 표기법을 배우다. 1. 타입스크립트에 대한 설명 타입스크립트는 변수, 매개변수, 리턴값에 타입을 지정해 주는 것이다. 타입을 지정하지 않고 변수에 커서를 가져다 대면 타입스크립트 내에서 자체적으로 타입을 추론하여 알려주기도 하는데, 자체적으로 추론한 타입은 항상 내가 원하는 타입으로 추론하지는 않는다. 우리가 타입스크립트에서 타입을 지정할 때 기본적으로 해야 하는 것은 변수의 타입을 최대한 좁혀야 하는 것이다. 이것도 되고 저것도 되는 포괄적인 타입이 보다는 하나만 확실하게 가리키는 타입을 지정해줘야 한다. 최대한 타입스크립트의 추론을 믿고 타입스크립트의 타입 추론이 올바르다면 직접 작성한 타입을 지워주고 타입스크립트의 추론이 이상하면 직접 타입을 작성한다. 2. 타입스크립트의 기본적인..
TypeScript를 시작하다. 1. 타입스크립트에 들어가기 자바스크립트 변수에 타입 값을 지정하여 오류를 줄여주는 타입스크립트를 배우려고 한다. 타입스크립트는 자바스크립트 변수에 타입을 지정하는 문법을 추가해서 작성한다. 브라우저와 노드는 모두 자바스크립트 코드만 읽을 수 있기 때문에 우리가 타입스크립트로 코드를 작성해도 타입스크립트 내부의 tsc라는 것이 작성한 코드에 타입의 이상은 없는지 확인하면서 타입스크립트 코드를 자바스크립트 코드로 변경한다. 여기서 타입에 이상이 있든 없든 tsc는 타입스크립트 코드를 자바스크립트 코드로 변경한다는 것이다. 타입 검사에 실패하여도 변환은 된다. 타입을 지정하는 코드만 추가로 작성한다는 것을 반대로 생각하면 타입 지정 문법만 지워주면 자바스크립트 코드로 정상 작..
1. 정규표현식 코드를 작성할 때 문자열의 패턴일 일정한 경우가 있다. 나 같은 경우에는 실전프로젝트에서 회원가입 폼에 있는 회원의 휴대전화 번호를 입력받을 때 모두 "010-0000-0000"과 같은 패턴으로 받고 싶었다. 01012345678이 모두 010-1234-5678로 입력되게 바꾸고 싶었다. 나의 경우에는 전화번호가 "XXX-XXXX-XXXX"라는 일정한 패턴으로 이루어져 있다. 이러한 경우에 저 패턴을 표현하는 방식을 정규표현식이라고 한다. 정규표현식은 특정 패턴의 문자열을 찾기 위한 표현 방식이다. 이것을 형식 언어, formal Language라고 한다. 참고하면 좋은 블로그는 링크로 걸어놨다. 더보기 https://inpa.tistory.com/entry/JS-%F0%9F%93%9A-..
객체 리터럴을 이용해 객체를 만들 때 key에 대괄호를 사용하는 이유와 용도에 대해 배우다. 0. 글 작성 이유 프로젝트를 진행하던 도중 구글링하다 본 코드에서 객체 리터럴 방식으로 객체를 만들 때 key에 대괄호([key])를 씌우는 것을 봤다. 보통 같으면 이유없이 따라쳐서 코드가 잘 작동 되는지 확인하고 넘길텐데 내 성격은 그렇지않다. 나는 코드를 쓸 때 이 코드를 사용한 이유, 코드의 원리, 의도를 파악해야 직성이 풀린다. 그렇기때문에 key에 대괄호를 씌워서 사용하는 것에 대해 궁금해지기 시작했다. 1. 객체 리터럴 let object = { key1 : 'value', key2 : 'value2' } 객체 리터럴이란 객체를 표현할 때 중괄호 ( { } )를 사용하여 나타내는 방식이다. 객체를 ..
이뮨01
KEEP GOING