01-01-token > 6자리 토큰의 한계점 다른 프로젝트에선 4자리, 8자리 등으로 사용하고 싶은데, 일일히 수정해줘야하는 불편함이 있다. 매개변수를 통해서 해결 > 그런데 만약 매개변수가 음수거나 말도안되게 길다면? 예외처리를 통해 함수의 안정성을 높힌다. !
02-01-welcome-template >Template Literal ES6에서 새로 도입된 문자열 표기법ES6에서 새로 도입된 문자열 표기법 +연산자를 사용하지 않아도 표현할 수 있다. 1일차에 그렇게 표현함 > 회원가입 환영 메세지 getWelcomeTempl
데이터 타입에 따른 저장방식 차이 > #### 문자열 복사 숫자 복사 복사본이란 원본의 값을 그대로 가져오기만 할뿐, 그 자체로 서로 완전히 다른 존재 객체 복사 왜 그러는가? String, Number, Boolean은 값 그 자체가 저장 O
04-01-rest-api-with-express > #### express : node에서 쉽게 웹 서버를 개발할 수 있도록 도와주는 프레임워크 설치 : yarn add express nodemon : 코드를 수정할 때마다, 서버를 종료하고 다시 시작하기를 반복하는
05-01-rest-api-with-frontend >#### Apollo 서버를 활용해 GraphQL-API를 제공하는 서버 개발하기 Apollo 서버 : GraphQL-API를 제공하는 서버를 개발할 수 있게 도와주는 패키지로서 기존에 Node.js에서 사용하는 E
Axios > : 브라우저, Node.js를 위한 HTTP 비동기 통신 라이브러리 운영 환경에 따라 브라우저의 XMLHttpRequest 객체 또는 Node.js의 HTTP API 사용 Promise(ES6) API 사용 Async/Await(ES7) API 사용 요청
07-01-docker >#### index.js 파일 작성 > Dockerfile 작성 Dockerfile : 가상컴퓨터를 만드는 설명서 > > docker build build: 만들어진 설명서를 가지고 하나로 묶여진 이미지로 만들어 주는 것 명령어 : dock
: 문서지향(Document-Oriented) 저장소를 제공하는 NoSQL 데이터베이스 시스템스키마 제약 없이 자유로움BSON(Binary JSON) 형태로 각 문서가 저장됨배열이나 날짜 등 기존 RDMS에서 지원하지 않던 형태로도 저장이 가능관계를 연결하는 JOIN이
스크래핑 > : 특정 웹 사이트나 페이지에서 필요한 데이터를 자동으로 추출해 내는 것 > 글의 내용에 http가 포함된 URL이 있다면, 그 사이트에 접속해서 og(open graph)가 있는 내용을 긁어와서 저장 > 크롤링 > 스크래핑을 정기적, 주기적으로 여러번
: 객체 지향 프로그래밍에서 특정 객체를 생성하기 위해 변수와 메소드를 정의하는 일종의 틀로, 객체를 정의하기 위한 상태(멤버 변수)와 메서드(함수)로 구성즉, 물건 만드는 설명서라고 생각하면 된다.index.js결과index.js실제 DB와 연결은 안되지만, expr
Tight-coupling(강한 결합) & Dependency(의존) > ### 강한 결합(Tight Coupling) : 클래스와 객체가 서로 의존(Dependency)하고 있는 것 특징 하나의 객체를 변경하게 되면, 다른 객체들도 변경을 요구되어 변경점들을 확인하고
Nest는 GraphQL 애플리케이션을 빌드하는데 스키마 우선(schema first) 및 코드 우선(code first)방법을 제공: graphql의 schema를 먼저 정의하고, 그 schema 정의에 맞게 코드를 작성하는 방법schema를 작성하기 위해서는 gra
데이터 정규화 > > : 데이터를 중복 저장하지않기 위해 분리하는 것 데이터 정규형(Normal Form) > > : 정규화가 된 결과 실무에서는 일부(노란색 상자)만 사용하게 된다.. > 정규형의 종류 비정규화 : 모든 데이터가 하나의 테이블에 다 담겨져있음 =
코로나 재확진으로 골골거리다 드디어 부활,,,, 갓생가즈아,,, 16-01-mysql-relation > ### 1(상품):1(상품거래위치) 테이블 생성 상품 테이블 > 상품거래위치 테이블 > 테이블 연결 > > ![](https://velog.velcdn.com
파일 구조productCategory.module.tsproductCategory.resolver.tsproductCategory.service.tsProductCategory.entity.tsapp.module.ts결과product.module.tscreateProd
: 예기치 못한 일에 대한 에러가 발생될 때(갑자기 컴퓨터 통신이 끊기는 등), 어디서 어떤 에러가 발생 하였는지 확인 가능: try ~ catch를 모든 함수에 작성하면 코드가 너무 길어지는 단점이 있음이럴 때 NestJS에서 제공하는 ExceptionFilter을
상품 판매 위치처럼 상품을 등록할 때 같이 만들어 주기createProduct.input.tsproduct.service.tsproduct.module.ts결과product.service.ts결과: 유저 정보를 담은 객체를 암호화를 통해 문자열로 만들어 암호화된 키(a
암호화(양방향 암호화)와 해싱(단방향 암호화) > 백엔드 복습-Day20에서 회원 가입을 할 땐, DB에 비밀번호가 그대로 저장됨 > > 이렇게 되면 DB가 해킹을 당하게 되면, 헤당 서비스 사이트의 이메일과 비밀번호를 가져감 => 일반적으로 다른 사이트에도 동일한
Web Storage(브라우저 저장소) > : HTML5부터 제공하는 기능 해당 도메인과 관련된 특정 데이터를 서버가 아니라 클라이언트 웹브라우저에 저장할 수 있도록 제공하는 기능 쿠키(cookie)와 비슷한 기능이며, Web Storage의 개념은 키/값 쌍으로 데이
구매자가 구입할 옷에 대한 정보와 금액을 판매자에게 전달판매자는 전달받은 금액을 PG사에게 결제해줄 것을 요청PG사는 요청받은 정보를 은행사에게 다시 결제 요청은행사는 요청받은 금액을 구매자의 계좌에서 출금 후 PG사로 전달 PG사는 판매자에게 금액을 전달 (일정량의
결제 완료 => 2. frontend에서 결제된 데이터를 요청 받음 => 3. backend에서 결제정보 저장과, 동시에 사용자가 결제한 금액을 누적 결제에 더해서 컬럼에 최신화 시켜줌결제정보는 저장했는데 중간에 에러가 생겨 로직이 끝났을 때, 결제정보만 저장하고 사용
GCP-Cloud Storage 생성 > Google Cloud Storage 생성 > > > > Storage 생성 > ![](https://velog.vel
Trigger > #### 특정 테이블에 INSERT, DELETE, UPDATE같은 DML문이 수행되었을 때, 데이터베이스에서 자동으로 동작하도록 작성된 프로그램 특징 사용자의 직접 호출이 아닌, 데이터베이스에서 자동적으로 호출 Big Query > #### 엄청나