목록개발/알쓸코잡 (30)
포스팅을 읽기 전 읽어보면 좋을 포스팅 2023.02.02 - [코딩/알쓸코잡] - Cookie / Local storage & Session storage JWT (JSON Web Token) JWT 는 유저를 인증 / 식별하기 위한 토큰 기반의 인증이라고 볼 수 있다. JWT 는 토큰 자체에 [사용자의 권한 정보 / 서비스를 사용하기 위한 정보] 가 포함되어 있는데, 이 JWT 는 서버가 아닌 '클라이언트'에게 저장되기 때문에 서버의 부담을 덜 수 있다는 장점을 가진다. JWT 을 쓰는 이유 JWT을 사용하는 이유는 두 이유가 있다. (서버 기반 인증의 문제점 & JWT의 장점) 서버 기반 인증 방식의 문제점 세션 : 세션이란, 유저가 인증을 할 때 해당 인증에 대한 정보들을 서버가 가지고 있는 것을..
Schema schema 는 DB 의 활용을 편리하게 하기 위해 데이터 간의 연결고리 및 형식을 정의하는 것을 말한다. 특정 데이터 모델을 이용해 만들어지고, 데이터 구조적 특성을 의미한다고 볼 수 있다. Schema 의 3계층 Schema 는 외부 스키마 / 개념 스키마 / 내부 스키마 3가지로 분류된다. 외부 스키마 사용자가 보는 개인적인 DB이며, 일반사용자 또한 SQL을 이용하여 사용 가능 스키마의 일부를 볼 수 있기때문에 서브 스키마라고도 하며, 여러 개가 존재할 수 있음 개념 스키마 DB의 전체적 논리적 구조 시스템 전체를 관장하는 스키마로 하나만 존재 개체 간의 연결고리와 제약 조건을 나타내며, DB의 접근 권한, 보안, 조건 등 규칙에 관한 내용을 정의 내부 스키마 물리적인 저장 장치로써의..
원시자료형과 참조자료형은 자료형에 대한 분류 기준이다. 둘은 비슷한 듯하나, 각기 다른 특징을 가지고 있다. 원시자료형 원시자료형은 객체가 아니며, 메소드를 가지지 않는 6가지 타입이다. string / number / boolean(true & false) / undefined / bigint(너무 큰 수) / symbol(유일 식별자) / (null) 원시자료형의 특징은 변수 하나에 각 하나의 정보만 갖게 되는데(재할당하지 않는 이상), 그 이유는 옛 컴퓨터 메모리의 제한으로 여러가지 자료를 담기 힘들었기 때문이다. (때문에, '원시'자료형) 참조자료형 참조자료형은 배열과 객체, 함수가 대표적인데, 특징을 하나 가진다. 변수는 그 값 자체를 저장하는 것이 아니라, 그 값이 있는 곳의 주솟값을 저장하는..
Set 은 유일한 값을 저장할 수 있는 객체다. 배열의 형태를 갖는 객체 데이터로, 형태는 아래와 같다. const newSet = new Set() typeof newSet // 'object' Array.isArray(newSet) // false newSet // Set(0) { __proto__: { ...중략 }} set 은 중복 데이터 없이 고유한 값만 저장이 가능하다. // 예시 const newSet = new Set([1,2,3,2,2]) console.log(newSet) // Set(3) { // 1, // 2, // 3, __proto__: {}} 2를 중복으로 포함하고 있는 배열을 Set 객체에 집어넣게 되면, Set은 위와 같이 중복된 값 없이 한번씩만 저장하게 된다. 그리고 아..
Git git은 '분산 버전관리 시스템'으로 파일의 변경사항을 추적(파악)하고, 여러 명의 개발자들 간 작업을 조율하는 것에 도움을 준다. 쉬운 말로는 여러 명이서 하나의 프로젝트를 작업할 때, 소스 코드를 관리하기 편하게 해주는 것이 바로 git. 분산 버전관리 시스템 분산 버전관리 시스템은 다음의 예시를 들면 편하다. 내가 날마다 작업한 소스 코드를 저장한다고 한다면, 한 파일에 작업한 내용이 모두 덮어지는 것이 아니라, 엊그제 / 어제 / 오늘이 모두 각기 작업한 내용이 저장된다는 것이다. 이는 작업의 변경 사항을 보기 편할 뿐더러 백업에도 유용하다. 자주 사용하는 git 명령어 git init : 깃 명령어 사용 전 필수로 활용해줘야 하는데 명령어. 깃 저장소를 초기화한다는 의미다. git hel..
지난 nestJS 포스팅에서 OOP와 FP에 대해 잠깐 언급한 적 있다. 이름으로 보아 대략적으로 무슨 의미인지는 알 것 같기는 하나, 알 것 같은 것과 아는 것은 다르기에 포스팅을 해보려 한다. OOP (객체지향 프로그래밍) 객체지향 프로그래밍은, 그 말마따나 객체를 중심으로 하여 객체 간의 상호 작용을 통해 로직을 구성하는 방법을 의미한다. 여기서 객체란 실제 사물을 프로그래밍에서 모델링하는 것으로 각각의 속성과 메서드를 갖는다. * 속성 : 상태, 성질, 데이터 // 메서드 : 객체의 기능, 데이터를 조작하기 위한 연산을 의미한다. 사실 무슨 말인지 모르겠지만, 아래와 같은 느낌이 아닐까 싶다. let 개 = { 속성 : { 상태 : 건강함, 성질 : 사나움, 데이터 : 털이 김 }, 메서드 : {..