본문 바로가기
반응형

분류 전체보기299

[NestJS] Entity vs DTO vs VO Entity vs DTO vs VO 정리 및 차이점 정리 Entity(ORM) 1. Entity는 실제 DB 테이블과 매핑되는 핵심 클래스이다. 2. 이를 기준으로 테이블이 생성되고 스키마가 변경된다. 3. 따라서, 절대로 Entity를 요청이나 응답값을 전달하는 클래스로 사용해서는 안된다. 4. Entity는 id로 구분된다. 그리고 비즈니스 로직을 포함할 수 있다. 5. Entity는 DTO처럼 setter를 가지는 경우 가변 객체로 활용할 수 있다. DTO(Data Transfer Object) 1. 데이터 유효성 체크, 데이터를 전달하기 위한 객체이다. 2. 계층간 데이터를 주고 받을 때, 데이터를 담아서 전달하는 바구니로 여러 레이어 사이에서 DTO를 사용할 수 있지만, 주로 View와 Cont.. 2023. 3. 25.
[js] Dayjs 라이브러리 (설치방법, i18n, 객체생성, get(), set(), DateFormat 설정 등) Dayjs 라이브러리 (설치방법, i18n, 객체생성, get(), set(), DateFormat 설정 등) Dayjs 라이브러리란? Dayjs 라이브러리는 Javascript에서 날짜/시간을 쉽게 파싱하고 계산할 수 있도록 도와주는 Date 라이브러리이다. 1. Dayjs 라이브러리 설치방법 npm install dayjs --save 2. API 참조: i18n 100여개 이상의 다국어를 지원하고 사용하지 않은 것은 빌드에 포함되지 않는다. 100여개 이상의 다국어, 자세한 locale을 확인하는 링크 https://github.com/iamkun/dayjs/tree/dev/src/locale GitHub - iamkun/dayjs: ⏰ Day.js 2kB immutable date-time lib.. 2023. 3. 24.
[js] 자바스크립트 Date객체 (기간 조회 및 날짜 계산) 자바스크립트 Date객체 (기간 조회 및 날짜 계산) 자바스크립트 Date 객체 기본적으로 자바스크립트의 Date 객체는 setMonth(), setDate()를 이용하여 날짜를 직접 지정할 수 있는 기능을 제공하고, setMonth(월 + N) 과 같은 기능을 통해 날짜 계산이 가능하다. 예) // 직접 날짜를 지정하는 방식 let birthday = new Date('February 2, 1997 03:24:00') let birthday = new Date('1997-02-2T03:24:00') let birthday = new Date(1997, 1, 2) // 월은 0부터 시작 let birthday = new Date(1997, 1, 2, 3, 24, 0) // Date의 연도에 0부터 99까.. 2023. 3. 24.
[js] 콜백지옥 코드 수정 콜백지옥이란? 1. 콜백지옥은 비동기 처리 로직을 위해 콜백 함수를 연속해서 사용할 때 발생하는 문제이다. 2. 콜백함수를 이용해서 비동기 로직처리 시, 코드가 깊어지는 것을 말한다. 3. 일반적으로 콜백지옥을 해결하는 방법에는 Promise 나 async & await를 사용하는 방법이 있다. 콜백지옥 -> Promise -> async & await 순서로 수정한다. 콜백지옥 예시 코드) class UserStorage{ loginUser(id, password, onSuccess, onError){ setTimeout(() =>{ if( id === 'kfdd6630' && password === '123' ) { onSuccess(id); } else{ onError(new Error('error.. 2023. 3. 23.
[js] try...catch, finally 정리 try...catch문, finally 블록 정리 1. try...catch문이란? 실행할 코드블럭을 표시하고 예외(exception)가 발생(throw)할 경우의 응답을 지정한다. try { // 수행하고싶은 로직을 수행한다. doSomething(); } catch (error) { console.error(error); } 위 코드에서 doSomething() 부분에서 error 발생시 console에 error가 출력된다. 2. try...catch문 문법 try { try_statements } [catch (exception_var) { catch_statements }] [finally { finally_statements }] try_statements: try 블록에서 실행될 선언들이다... 2023. 3. 23.
[js] async & await 정리 async & await 사용방법, useFul Promise APIs(Promise.all(), Promise.race()) async & await란? 1. async와 await는 자바스크립트의 비동기 처리 패턴 중 가장 최근에 나온 문법이다. 2. 비동기 방식을 사용함에 있어 Promise보다 명확한 방식이라고 할 수 있다. 3. 비동기 처리 동작은 기본적으로 callback, Promise와 동일하지만 앞 둘의 단점을 보완했다. 1 .async 사용방법 동기적 실행 // 1. Sync function fetchUser() { // 네트워크 응답이 10초 걸린다고 가정한다. return 'userName'; } const user = fetchUser(); console.log(user); con.. 2023. 3. 22.
[js] Promise 정리 Promise정리 [ State, Producer, Consumer(then, catch, finally), Promise Chaining, Error Handling ] Promise란? 1. Promise는 비동기 작업에 대한 javascript 개체이다. 2. Promise는 State라는 상태값을 가지고 Promise 생상부분과 사용부분으로 나눌 수 있다. 3. 비동기 처리 동작은 기본적으로 callback과 동일하지만 단점(콜백지옥)을 보완했다. 1) State state: pending -> fulfilled or rejected (보류 중 -> 이행 또는 거부됨) pending 상태 = 값을 아직 알 수 없을 때 (data가 정확하게 할당되지 않았을 때 등) fullfilled 상태 = 반환.. 2023. 3. 22.
[js] 콜백함수(callback) 콜백함수란? 콜백함수를 매개변수로 받는 함수 만드는 방법, 콜백지옥이란? 콜백함수(Callback function)란? 1. 콜백함수는 다른 함수에 매개변수로 넘겨준 함수를 말한다. (함수에 파라미터로 들어가는 함수) 2. 함수를 명시적으로 호출하는 방식이 아니라 특정 이벤트가 발생했을 때 시스템에 의해 호출된다. 3. 함수를 순차적으로 실행하고 싶을 때 사용한다. 콜백함수를 매개변수(parameter)로 받는 함수 만드는 방법 예제코드) function sayOne(params){ console.log(1); params(); } function sayTwo(){ console.log(2); } sayOne(sayTwo); 1. sayOne은 콜백함수 필요한 함수 2. sayTwo가 콜백함수이다. 3... 2023. 3. 21.
[js] 동기적(synchronous)? 비동기적(Asynchronous)? JavaScript에서 동기적 / 비동기적의 차이 및 예제, 비동기적 실행 방식 등 자바스크립트(Javascript)는 동기적이다. 호이스팅(hoisting) 후 코드 블록을 순서대로 실행한다. 호이스팅이란? 2023.02.04 - [개발 용어 정리] - [js] hoisting(호이스팅) [js] hoisting(호이스팅) javascript_호이스팅(hoisting) 이란? = 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것이다. (var, 함수의 경우가 있다) 변수의 선언과 초기화를 분리한 후, 선언만 코드의 최상단으로 옮기는 kfdd6630.tistory.com 동기적(Synchronous)이란? 1. 어떤 작업을 요청했을 때 그 작업이 종료되고 다음 작업을 수행하는 방식이다. 2. 프로.. 2023. 3. 21.
[MongoDB] 인덱스 교차 (Index Interserction) [MongoDB] 인덱스 교차 (인덱스 접두사 교차, 인덱스 교차 및 정렬, 인덱스 교차 및 복합 인덱스) 인덱스 교차(Intersection)란? 인덱스 교차는 MongoDB 2.6부터 제공한다. 이 용어는 인덱스의 종류가 아니라 인덱스의 작동 방식을 지칭한다. 지금까지 알아본 ‘단일 인덱스’와 ‘컴파운드 인덱스’를 하나의 컬렉션 내에서 별개로 지정하더라도 쿼리가 구동 될 때에는 내부에서 교집합처럼 동작하여 성능을 높힌다. 다음과 같이 단일 인덱스 두 가지를 선언해준다. db.collection.createIndex({ qty: 1 }) db.collection.createIndex({ item: 1 }) 단일 인덱스가 별개로 두 개를 정의했다. db.orders.find({ item: 'abc123'.. 2023. 3. 20.
반응형