Interview Cookie 무상태성을 가지고 있는 HTTP임에도 정보가 유지될 수 있는 것이 Cookie이다. 쿠키 안에는 작은 데이터들이 담겨 있으며 쇼핑몰 장바구니 정보, 로그인 유지 정보 등에 관한 것들이 담겨져 있다. 쿠키를 이용하여 연결이 끊기더라도 다음에 연결했을 떄 쿠키를 통해 정보를 불러올 수 있다. 쿠키는 탈취가...
Interview 15장 - cookie
Interview 14장 - 네트워크
Interview IP 프로토콜의 한계 IP 프로토콜은 복잡한 인터넷 망 속 수많은 노드들을 지나 클라이언트와 서버가 정확하게 데이터를 전달하고 무사히 통신할 수 있게 해준다. IP 패킷에는 데이터를 무사히 전송하기 위한 출발지 IP, 목적지 IP와 같은 정보가 담겨있다. IP 프로토콜은 비연결성이기 때문에 서버의 상태를 파악할 수 없...
Interview 13장 - 웹표준과 웹접근성
Interview Semantic HTML 시맨틱 요소는 구조를 만드는 것을 넘어 요소 자체에 의미를 갖게 한다. div와 span만으로도 충분히 화면 구조를 만들 수 있지만, 요소가 어떤 역할을 하는지 알 수 없다. 시맨틱 요소는 이름만 보고도 해당 요소가 어떤 역할을 하는지 알 수 있기 때문에 유지보수 등에 필요한 시간 소모를 줄일...
Interview 12장 - Redux
Interview Redux 상태관리 라이브러리의 필요성에 대한 설명 상태 관리 없이 리액트를 사용할 경우, 상위 컴포넌트에서 하위 컴포넌트로 props를 전달해주는 과정이 반복되어 일어난다. 하나의 상태 값을 공유하는 컴포넌트들의 상태 값은 상위 컴포넌트에 작성되기 때문에 끊임없이 props를 통해 전달되어야 하며 props지옥이 펼쳐...
Interview 11장 - Custom Component와 useRef
Interview styled component의 장점 스타일에 대한 고유 클래스명을 생성하여 중복이나 오타 걱정이 없다. 페이지에서 렌더링되는 요소에 맞춰 해당 스타일을 삽입하기 때문에, 상황마다 필요한 스타일을 로드한다. 동적 스타일링이 편해지는데, props를 받아 개별적인 스타일링이 가능하다. useRef React에...
Interview 10장 - UI/UX
Interview UI/UX 사용자를 위한 최상의 최종 제품을 제공하기 위함이라는 공통 분모를 가진다. UI (User Interface) 사용자가 제품/서비스를 사용할 때 마주하게 되는 면이다. 사용자가 제품이나 서비스와 상호작용할 수 있도록 만들어진 매개체이다. 폰트,칼라,레이아웃 등 모든 시각적인 디자인을 말한다. ...
Interview 9장 - 재귀
Interview 재귀적 호출 일정 조건을 만족할 경우 자기 자신을 호출하는 것을 말한다. 재귀함수 사용 알고리즘 자체가 재귀적인 표현이 자연스러운 경우, 재귀 함수를 쓰는 것이 큰 도움이 된다. 변수 사용을 줄여주며 변수가 가질 수 있는 값의 종류 또는 범위를 정확히 제한한다. 변수의 수를 줄여 재귀 호출을 도와주고 사이드...
TypeScript 6장 - 러닝 타입스크립트(5)
TypeScript Part.2 chapter.7 인터페이스 7.1 타입 별칭 vs. 인터페이스 born: number와 name: string을 가진 객체를 타입 별칭으로 구현하는 간략한 구문이다. type Poet = { born: number; name: string; }; 인터페이스로 ...
TypeScript 5장 - 러닝 타입스크립트(4)
TypeScript Part.2 chapter.6 배열 자바스크립트의 배열은 매우 유연하고 내부에 모든 타입의 값을 혼합해서 저장할 수 있다. 그러나 대부분의 배열은 하나의 특정 타입의 값만 가진다. const elements = [true, null, undefined, 42]; elements.push("eve...
TypeScript 4장 - 러닝 타입스크립트(3)
TypeScript Part.2 chapter.5 5.1 함수 매개변수 함수의 매개변수 또한 타입을 선언할 수 있다. 타입을 선언하지 않은 매개변수는 any타입으로 간주되어 무엇이든 될 수 있다. function sing(song) { console.log(`Singing: ${song}`); } // 선언되지 않은 매개...