ORM(Object-Relational Mapping)은 객체지향 패러다임을 활용하여 관계형 데이터베이스(RDB)의 데이터를 조작하게 하는 기술이다. 이를 활용하면 쿼리를 작성하지 않도고 객체의 메서드를 활용하는 것처럼 쿼리 로직을 작성할 수 있다. 백엔드를 구축하다가 RDB에 단순 쿼리를 날리는 것이 비효율적 => Node.js의 대표적인 ORM인 Sequelize를 사용 Sequelize는 MySQL, PostgreSQL, MariaDB 등 많은 RDBMS를 지원하고 Promise기반으로 구현되었기 때문에 비동기로직을 편리하게 작성할 수 있다. (이전에 MongoDB a.k.a noSQL 에서는 mongoose를 사용한 것처럼) 자바스크립트 구문을 알아서 SQL로 변환해주는 모듈이다. 다른 데이터베이..
Authentication (인증) `the process of verifying who someone is.` 인증은 사용자의 신원을 검증하는 행위로서 보안 프로세스에서 첫 번째 단계이다. 유저가 로그인(아이디와 패스워드 입력)하는건 인증 과정에 있는 것이다. Authorization (권한 부여) `the process of verifying what resources a user has access to.` 시스템 보안에서 인가란, 사용자에게 특정 리소스나 기능에 액세스할 수 있는 권한을 부여하는 프로세스를 말한다. JSON Web Tokens JWT는 사용자 인증(로그인 과정)이 이미 수행되었음을 확인하며, 사용자는 요청 인증 헤더에 JWT를 전송하여 REST API 엔드포인트에 대한 권한이 부여..
[명령어 순서] 1. 우선 GitHub의 저장소에 새로운 커밋이 있는 지 status 명령어로 확인해줍니다. git status #원격 리포와 로컬의 변경사항이 있는지 없는지 확인합니다. 2. fetch 명령어는 변경된 데이터를 확인만합니다. pull의 경우는 해당 최신 데이터를 가져와 로컬과 동기화시키죠. 아래의 변경사항을 로컬로 가져온다는 의미는 Git에게 원격 저장소의 최신 메타데이터를 확인하라고 지시했기 때문입니다. (Git: 어! 변경사항이 있긴하네!!! 내PC: 엇 뭐지 나도 알려줭) git fetch #pull하기 전에 원격저장소의 변경사항을 로컬로 가져옵니다. 3. diff 명령어를 통해서 로컬PC에서도 변경점을 확인할 수 있습니다. (물론 변경내용을 터미널로 보기때문에 시각적으로 좀 불편..
생활코딩 이고잉님의 유투브 `React 서버 통신에 회의가 든다면 - RTK Query`를 기반으로 작성하였습니다. Server Hook 사용법 ./app/api 의 api 객체를 이용하기 RTK Query로 서버와 통신 읽기: useGetCountQuery ({name}) 쓰기: userSetCountMutation() -첫번째 원소 함수({name, value}) 로 데이터 전송 RTK Query의 특징 1️⃣ use-Query는 읽기 전용(read-only) - 객체를 리턴 // {} - data, isFetching, isLoading 중요 isLoading은 state가 초기화되기 전(undefined)일때 첫번째 로딩시 isFetching은 loading시마다 실행 - 자동실행 2️⃣ use-..
Array.from() 해당 메서드는 유사 배열 객체(array-like object)나 반복가능한 객체(iterable object)를 얕게 복사해 새로운 Array 객체를 만든다. 첫번째 매개변수로는 `배열로 변환하고자 하는 유사 배열 객체나 반복 가능한 객체`를 넘기고 두번째 매개변수(optional)로 배열의 모든 요소에 대해 호출할 매핑 함수를 전달한다. 세번째 매개변수(optional)는 thisArg로 매핑 함수를 실행할 때 this로 사용할 값을 넘겨주면 된다. 시퀀스 생성기(range)로도 사용할 수 있다. 유사 배열 객체(array-like object) : length 속성과 인덱싱된 요소를 가진 객체 순회 가능한 객체(iterable object): Map, Set 등 객체의 요소를..
Redux Toolkit Query (RTK Query)는 웹 어플리케이션에서 데이터를 로딩하는 흔한 케이스를 간단하게 하는 진보된 데이터 패칭, 캐싱 툴이다. RTK Query는 Redux Toolkit core의 위에서 작성되었고, RTK의 API들은 `createSlice`와 `createAsyncThunk`를 확장해서 만들어졌다. RTK Query는 `@reduxjs/toolkit` 패키지의 추가적인 애드온으로 포함되어져 있다. Redux Toolkit을 사용해도 RTK Query Api를 사용하지 않아도 되지만 RTK Query의 데이터 패칭과 캐싱이 많은 사용자들에게 혜택을 가져다 줄것이라고 예상한다. 즉, RTK Query는 강력한 data fetching, caching 툴이다. 웹 어플리..
사용 Node.js 라이브러리 🌝express-async-handler Express.js에서 비동기식 요청 핸들러를 처리하기 위한 미들웨어(async error handleing middleware for Express) Express.js의 기본 요청 핸들러는 예외 처리를 하지 못하는 경우가 많기 떄문에, 이를 해결하기 위해 만들어진 미들웨어 라이브러리이다. 이 라이브러리를 사용하면 예외 처리가 가능한 비동기식 요청 핸들러를 쉽게 작성할 수 있다. async를 쉽게 사용할 수 있고, Request Handler를 처리하는데 공통적으로 오류처리를 할 수 있거나 간단하게 구현할 수 있다. 1-1. request handler의 오류처리 Q. What is request handler in Express?..
몽고디비는 유명하고 널리사용되는 noSQL 중 하나이다. node.js 서버에 mongoDB를 연결하려면, 몽고디비 공식홈페이지에서 가입 후, 클러스터를 생성해줘야 한다. 클러스터가 생성되었으면 connect 버튼을 눌러 Connect to your application의 `Drivers`를 눌러주면 된다. Connection with MongoDB Driver 스텝에서 2번째에 보면 `npm install mongodb` 라는 명령어와 함께 몽고디비 라이브러리를 설치하라고 나와있지만 `mongoose` 를 설치해주면 된다. 3번째 스텝에 Add your connection string into your application code라고 붙여넣을 코드가 있는데 복사해서 password부분만 내가 지정한 ..
- Total
- Today
- Yesterday
- float 레이아웃
- fs모듈 넥스트
- 항해99추천비추천
- 타입스크립트 DT
- nvm 설치순서
- 항해99프론트후기
- D 플래그
- ~ ^
- 형제 요소 선택자
- 프리온보딩 프론트엔드 챌린지 3월
- tilde caret
- 원티드 프리온보딩 FE 챌린지
- 원티드 FE 프리온보딩 챌린지
- 프리렌더링확인법
- 부트캠프항해
- getStaticPaths
- 타입스크립트 장점
- is()
- 항해99프론트
- Prittier
- grid flex
- reactAPI
- && 셸 명령어
- getServerSideProps
- text input pattern
- 틸드와 캐럿
- aspect-ratio
- nvm경로 오류
- 원티드 3월 프론트엔드 챌린지
- 원티드 프리온보딩 프론트엔드 챌린지 3일차
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |