일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 자바스크립트의 역사
- 모던 자바스크립트
- 백준
- graphql
- tr명령어
- 자바스크립트
- Bandit
- 프로그래머스
- vanila js
- node
- javascript
- nestjs
- mutation
- 실패율
- ROT13
- 카카오
- typeorm
- 코딩테스트
- typescript
- kakao
- REST API
- js
- linux
- await
- html
- 코딩태스트
- JavaStritp
- Query
- 피보나치 수
- RestAPI
- Today
- Total
목록javascript (26)
꿀 떨어지는 코딩 양봉장
이번에 새로운 토이 프로젝트를 하게 되면서 DB를 SQL로 가야 할지 NoSQl로 가는 게 좋을지에 대해 고민하게 되었습니다. 일단 SQL과 NoSQL이 무엇인지에 대해서 확실한 정의부터 알아보겠습니다. DBMS란? DBMS란 Data Base Management System으로 사용자와 데이터베이스 사이에서 사용의 요구에 따라서 정보를 생성해 주고 데이터 베이스를 관리해주는 소프트웨어입니다. RDBMS란 Relational Data Base Management System으로 관계형 데이터베이스 시스템입니다. 이름과 같이 RDBMS는 RDB를 관리하는 시스템입니다. RDB는 관계형 데이터 모델을 기초로 두고 모든 데이터를 2차원 테이블 형태로 표현하는 데이터베이스입니다. SQL 이란? SQL은 Stru..
ORM이란? Object Relation Mapping에 약자입니다. 객체와 관계형 데이터베이스의 데이터를 자동으로 Mapping(연결)해주는 것을 말합니다. 객체지향 프로그래밍은 클래스를 사용합니다. 관계형 데이터베이스는 테이블을 사용합니다. 객체 모델과 관계형 데이터베이스 사이에는 모델 간에 불일치가 존재합니다. ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결합니다. 데이터베이스객체(class) TypeORM이란? 그럼 TypeORM이란 무엇일까요? express와 관계형 데이터베이스를 조합할 때 같이 사용되는 ORM으로 Sequelize라는 라이브러리가 있지만, 타입스크립트의 확대와 같이 인기가 높아지는 ORM이 바로 TypeORM입니다. TypeScript에서도 ..
📕📗GraphQL의 핵심 요소📙📒 GraphQL은 서버에 query, mutation 등 사용자가 원하는 Schema를 직접 구축한 다음, 클라이언트로부터 해당 요청을 받을 시, Resolver를 통해 데이터를 반환하는 구조입니다. 1. Query query란 데이터베이스에 정보를 요청하는 것입니다. type Query{ (쿼리명):([)(반환 타입){]}(!) ] 의 형태로 선언합니다. 옵션 [ ]을 붙인 경우 배열 타입으로 반환 해당 요청이 들어온 경우 필수로 해당 타입을 반환해야 합니다. 아래는 Movie라는 반환 type을 생성한 다음 Query를 작성한 것입니다. #반환 타입 생성 type Movie{ id:Int! name:String! score:Int! } #Query 생성 type Que..
과거 RestAPI에 대해서 설명했던 적이 있었습니다. https://nayoon030303.tistory.com/25 Rest API에 대해서 GraphQL에 대해서 공부하기 이전에 REST API에 대해서 간단하게 알아보겠습니다. 📕REST API란 소프트웨어 간 정보를 주고받는 방식입니다. GraphQL이전부터 사용 '다른' 방식 - 용도와 작업 특성에 따라 nayoon030303.tistory.com 이번 시간에는 GraphQl에 대해서 공부해보도록 해보겠습니다! GraphQL이란 페이스북에서 만든 2012년에 개발되어서 2015년에 오픈소스로 공개된 데이터 쿼리 언어입니다. 기존 데이터로 된 쿼리를 수행하기 위한 서버 측 런타임입니다. GraphQL API는 엔드포인트가 아닌 유형과 필드로 구성..
async와 await async와 await라는 특별한 문법을 사용하면 프라미스를 조금 더 편하게 사용할 수 있습니다. async 함수 async는 function앞에 위치합니다. async function f(){ return 1; } function 앞에 async를 붙이면 해당 함수는 항상 프라미스를 반환합니다. 위 코드처럼 프라미스가 아니 값을 반환해도 이행 상태의 프라미스로 값을 감싸 이행된 프라미스가 반환되도록 합니다. async function f(){ return 1; } f().then(alert); 위 코드처럼 result가 1인 이행 프라미스가 반환됩니다. await await는 async function안에서만 사용이 가능합니다. let value = await promise 자바..
프라미스 API Promise 클래스에는 5가지 정적 메서드가 있습니다. 이번 시간에는 5가지의 메서드를 알아보도록 하겠습니다. Promise.all 여러 개의 프라미스들을 동시에 실행시킵니다. 모든 프라미스가 준비가 될 때까지 기다립니다. 문법 let promise = Promise.all([..promises...]); 예시 let promise = Promise.all([ new Promise(resolve=>setTimeout(()=>resolve(1),3000)), new Promise(resolve=>setTimeout(()=>resolve(2),2000)), new Promise(resolve=>setTimeout(()=>resolve(3),1000)), ]).then(response=>{ ..
저번 글에 이어서 이번에도 프라미스에 대해서 공부해 보도록 하겠습니다. 프라미스 체이닝 스크립트를 불러오는 것과 같이 순차적으로 처리해야 하는 비동기 작업이 여러 개 있을 수 있습니다. 만약 콜백만을 사용한다면 '콜백 지옥' 혹은 '멸망의 피라미드'가 만들어질 수 있습니다. 더 자세히 콜백에 대해서 알고 싶다면 아래 사이트를 참고하세요 https://ko.javascript.info/callbacks 콜백 ko.javascript.info 만약 이럴떄 프라미스를 사용한다면 여러 가지 해결책을 만들 수 있습니다. 이번 시간에는 프라미스 체이닝(promise chainnig)을 이용한 비동기 처리에 대해서 알아보도록 하겠습니다. 프라미스 체이닝이란? 프라미스 체이닝은 아래와 같이 생겼습니다. new Prom..
콜백 프라미스가 나오게 된 배경을 설명해줍니다. 콜백 함수란 쉽게 설명해서 나중에 호출되는 함수입니다. 프라미스 프라미스란? ES6에 도입된 기술입니다. 프라미스란 제작코드와 소비 코드를 연결해주는 특별한 자바스크립트 객체입니다. 프라미스는 시간이 얼마나 걸리든 상관없이 약속한 결과를 제작코드가 준비되었을 때, 모든 소비 코드가 결과를 사용할 수 있도록 해줍니다. 콜백함수가 해주는 일과 비슷하다고 할 수 있습니다. let promise = new Promise(function(resoleve, reject){ //executor 제작 코드 }); new Promise에 전달되는 함수는 executor(실행자, 실행함수)라고 부릅니다. executor는 new Promise가 만들어질 때 자동으로 실행되고..