2023.05.02(화) @ 2023.05.02 - 정규표현식(Regular Expression) 2023.05.02 - 정규표현식(Regular Expression) @ 정규 표현식(Regular Expression)이란? 프로그래밍에서 문자열을 다룰 때, 문자열의 일정한 패턴을 표현하는 일종의 형식 언어. 정규식이라고도 부르며, 보통 RegEx 또는 RegExp라고 쓴다. 특정한 조건 yoonsoo-space.tistory.com 2023.05.06(토) @ 2023.05.06 숙련 - sequelize 2023.05.06 숙련 - sequelize 01. Sequelize Sequelize란? ==> ORM(Object Relational Mapping)으로써 Javascript 객체(Object)..
SQL (관계형 DB) ==> 데이터를 정해진 데이터 schema에 따라 테이블에 저장 ==> 데이터는 관계를 통해 여러 테이블에 분산 ==>데이터는 테이블에 레코드로 저장된다. 각 테이블마다 명확하게 정의된 구조가 있다. 해당 구조는 필드의 이름과 데이터 유형으로 정의된다. ( schema를 준수하지 않은 레코드는 테이블에 추가할 수 없다.) ==> 이때 DB에 데이터 중복이 일어날 수도 있다. 이를 피하기 위해 '관계'를 이용한다. ==> 하나의 테이블에 중복이 없기에 다른 테이블에서 부정확한 데이터를 다룰 위험이 없다. 장점 데이터 중복이 없다. 명확하게 정의된 스키마로 데이터를 다루기에 데이터 무결성이 보장된다. 단점 유연하지 않고, 데이터 스키마를 사전에 계획해야 한다. (나중에 수정하기 힘듦)..
[Problem] Lv 4 과제를 진행 중 게시글 좋아요 API를 구성할 때 생각해보니 db의 like 컬럼에 createdAt과 updatedAt이 필요없다 생각이 들었다. 불필요한 요소를 계속해서 저장해 많은 공간을 차지할 필요없다 생각했던 것이다. [Try] 처음에는 쉽게 생각해서 migrations의 create-likes.js부분과 models의 likes.js를 수정하면 될 거라 생각하여 두 파일의 createdAt과 updatedAt 부분을 삭제했다. 삭제 후 실행 결과.... error가 발생했다. 수정 전에는 정상적으로 작동했는데...createdAt과 updatedAt만 없앴는데 error가 발생한다. error에 대한 부분을 찾기 위해 catch (error) { // 예외 케이스에서..
01. Access Token Access Token? ==> 사용자의 권한이 확인되었을 경우 해당 사용자를 인증하는 용도로 발급 ==> 예시로 Expires 기간이 지날 때 인증이 만료되게 하는 JWT Token도 Access Token이 있다. ==> Token을 생성할 때 사용한 비밀키 (Secret Key)를 가지고 인증한다. 복잡한 설계없이 코드를 구현할 수 있고, 여러 분기를 거치지 않아도 된다는 장점이 있다. ==> Stateless(무상태), Node.js 서버가 죽었다 살아나더라도 동일한 동작을 하는 방식. 즉, JWT를 이용해 사용자의 인증 여부는 확인할 수 있지만 처음 발급한 사용자 본인인지 확인할 수 없다는 단점이 있다. ==> 다시 말하면 Access Token은 그 자체로도 사용..
01. TCP / UDP TCP 란? 서버와 클라이언트간 신뢰성 있는 데이터 송수신을 위해 만들어진 프로토콜 연결 지향성 프로토콜 데이터를 나눠서 보낼 수 있으며, 데이터를 받는 쪽에서 나눠 받은 데이터를 재조립한다. ( 누락된 데이터가 존재하면 다시 요청해서 받아와 완전한 데이터를 만든다.) TCP로 연결이 된 경우 데이터를 양방향으로 주고 받을 수 있다. 데이터의 순서가 뒤바뀌는 일이 없으며 안정적이라 신뢰 가능하다. UDP에 비해 데이터 송수신 비용(부담)이 크다. 또한, UDP보다 전송 속도가 느리다. UDP 란? 비연결성 프로토콜 데이터를 보내고 확인하지 않는다. 따라서 데이터가 제대로 도착했는지 보장되지 않아 신뢰도가 비교적 낮다. 데이터를 순차적으로 보내도 받는 쪽에서는 다른 순서로 전달 받..
01. 코드 서식 코드 서식이란? ==> 코드의 형식, 다시 쉽게 말하면 우리가 코드를 작성하는 방식을 말한다. ==> Space, Tab, line break, semicolon 등을 개인마다 다르게 사용한다. ==> 한줄에 작성하는 코드 작성 길이도 포함된다. 좋은 코드는 가독성이 좋은 간결한 코드도 좋은 코드라 불리기에 코드 서식은 개발자에게는 중요한 부분 Prettier ==> 이런 부분을 Prettier로 해결할 수 있다. Prettier는 코드 서식 관리 도구다. 1. npm i prettier 설치 2. app.js가 있는 폴더에 .prettierrc.js 파일 생성 3. 생성한 파일에 기본 설정 추가하기 module.exports = { "printWidth": 80, // 줄 바꿈 할 폭..