ivory's Log
그게 무엇이라도 항상 쉬운 일이다.
반응형

Til 20

JWT(JSON Web Token)

이 글은 JWT(JSON Web Token)에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! 토큰 인증과 인가에 대해 공부하다가, JWT까지 오게 되었다. 갑자기 내용이 심화되어 많이 어렵고 당황스러웠으며, 포스팅하는 지금도 아직 헷갈린 부분이 많다. 하지만, 훗날 뼈와 살이 되고...(?) 반드시 알아둬야 할 개발 지식이기에 미리 정리를 해보았다. 부족한 글이므로 언제나 태클은 환영이다. JWT JSON Web Token JWT란 JSON 포맷을 이용하여 사용자에 대한 속성을 저장하는 클레임(Claim) 기반의 Web Token이다. JWT의 특징은 가볍고, 토큰 자체를 정보로 사용하는 자가 수용적인(Self-Conta..

ivory's DevLog 2020.12.19

[React] - React Router

이 글은 React의 React Router에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! React Router React는 SPA 방식 React는 SPA 방식이다. SPA란 Single Page Application의 약자로 페이지가 1개인 어플리케이션을 말한다. 전통적인 웹 어플리케이션은 SPA와 반대인 MPA(Multi Page Application) 방식 여러 페이지로 구성되어 있었다. MPA의 동작 방식은 어떤 데이터를 요청할 때마다 페이지가 새로고침 되면서 서버로부터 자원(Resource)을 전달받고 렌더링 되는 방식이다. 반대로, SPA는 새로운 페이지를 로드하지 않고 하나의 페이지 안에서 필요한 데이터..

ivory's DevLog 2020.11.22

Git 폭파범이 정리한 Git에 관한 기본 개념

이 글은 Git에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! 개인의 실수로 폭파된 Git은 책임지지 않습니다!!! 들어가기 전에, 나는 Git으로 정말 많이 사고를 쳐본 경험이 있다. 프로젝트를 할 때도, 개인적으로 리팩토링을 할 때도, 혼자 Git을 활용하다 코드를 날려버린 적도, repository를 다시 생성한 적도 많았다. 때문에 난, 독보적인 Git 폭파범이란 꼬리표가 달렸었고, 한 때는 Git에 대한 트라우마(?)가 생겨 push를 하기 전에 반드시 옆에 동기나 멘토님을 끼고 push를 했던 기억이 있다. 그래서 이번에 정리하는 Git에 대한 내용은 내 개인적인 공부를 위함도 있지만, 동시에 하나의 반성문(..

ivory's DevLog 2020.11.04

Webpack

이 글은 Webpack에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! Webpack이란? Webpack이란, 오픈 소스 자바스크립트 모듈 번들러(Module Bundler)로써 여러 개로 나눠진 파일들을 하나의 자바스크립트 코드로 압축하고 최적화한다. 간단한 정의부터 알아보려고 했더니, 뜬금없이 모듈 번들러라는 녀석이 등장했다. 지금부터 모듈 번들러의 개념을 이해하고 Webpack을 파헤쳐보자!! Module Bundler Module 먼저 모듈(Module)이란, 특정 기능을 갖는 작은 코드 단위를 말한다. 즉, 프로그램을 구성하는 구성 요소의 일부다. 모듈은 관련 데이터와 함수들을 묶어 파일 단위로 나누는 것이 일반..

ivory's DevLog 2020.10.28

Babel

이 글은 Babel에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! Babel이란? JavaScript Compiler Babel 공식문서에 따르면, Babel은 JavaScript(이하 JS) Complier(이하 컴파일러)라고 정의되어 있다. 다시 정리하면, Babel은 JS의 컴파일러로서, 최신 JS 문법을 이전 단계의 JS문법으로 변환 가능하게 해주는 도구다. Babel, 왜 필요할까??? 끊임없이 발전하는 브라우저와 ES6 몇 년 전만 해도 가장 인기가 많고 많은 개발자들이 선호했던 jQuery가 빠르게 잊혔던 것처럼 프론트엔드 개발언어(다른 개발 분야도 마찬가지다.)는 빠르게 발전한다. 그와 동시에 브라우저 역..

ivory's DevLog 2020.10.18

[JavaScript] - this

이 글은 JavaScript의 this에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! 내가 JavaScript를 처음 공부할 때, 가장 어려워했고 이해하기 힘들어했던 개념 중 하나다. 여담으로 정말 이 개념이 어려워서 부트캠프 진행하는 내내 구시렁댔던 기억이 난다. 그래서 오늘은 this에 대해 깊이 있는 공부를 해보려고 한다. this 사전적 의미와 비슷한 JavaScript의 this this는 사전적 의미로 '이것'이라는 뜻을 가졌는데, 지금부터 알아볼 this는 사전적 의미와 비슷한 기능을 가졌다. JavaScript의 this는 함수 내에서 호출 맥락(Context)을 의미하고 있다. 조금 말이 어려운데 쉽게 ..

ivory's DevLog 2020.10.04

CORS란?

이 글은 CORS에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! 예전에 React를 이용하여 프로젝트를 진행하다 팀원 중 한 명이 CORS와 관련된 이슈와 마주한 적이 있었다. 당시 개발 초보자였던 우리에겐 이 이슈는 너무 강적이었기에 오로지 이슈 해결에만 집중하였고, CORS에 대한 개념을 정리하지 못했었다. 오늘은 그때 간과했던 부분들을 되짚어보고자 CORS에 대해 포스팅해보겠다. CORS Cross-Origin Resource Sharing CORS는 W3C에서 서로 다른 Origin에서 자원(Resource)을 공유할 수 있도록 하기 위해 내놓은 정책을 말한다. 여기서 서로 다른 Origin이라는 것은 도메인 또..

ivory's DevLog 2020.10.02

SSR(Sever Side Rendering)과 CSR(Client Side Rendering)

이 글은 SSR(Sever Side Rendering)과 CSR(Client Side Rendering)에 대해 적은 글입니다. 이 포스팅을 포함해 게시된 모든 포스팅의 큰 주제는 순차적인 흐름을 지키지 않습니다. 혼란에 주의해 주세요! Rendering 렌더링의 개념부터 다시 짚고 넘어가자! 서버로부터 HTML 파일을 받아 브라우저 화면에 표시하고 그리는 작업을 렌더링이라고 한다. 렌더링의 과정은 아래를 참고하자! - 서버로부터 데이터를 응답받아 HTML을 Parsing 하여 DOM트리를 생성한다. - DOM트리가 구축되는 동안 브라우저는 Render트리를 구축한다. - CSS설정 및 위치를 설정한다. - Render트리가 그려지고 브라우저 화면에 표시된다. SSR Server Side Renderin..

ivory's DevLog 2020.09.30
반응형