전체 글119 [Network] 브라우저에서 주소창에 url 입력 시 어떤일이 일어날까 총 여덟 단계로 정리될 수 있습니다. 브라우저 주소창에 URL을 입력한다. 브라우저가 URL의 IP 주소를 찾기 위해 캐시에서 DNS 기록을 확인한다. 만약 요청한 URL이 캐시에 없다면, ISP의 DNS 서버가 DNS 쿼리로 URL을 호스팅하는 서버의 IP 주소를 찾는다. 브라우저가 해당 서버와 TCP 연결을 시작한다. 브라우저가 웹서버에 HTTP 요청을 보낸다. 서버가 요청을 처리하고 응답을 보낸다. 서버가 HTTP 응답을 보낸다. 브라우저가 HTML 컨텐츠를 보여준다. 1. 브라우저 주소창에 URL을 입력한다. 2. 브라우저가 URL의 IP 주소를 찾기 위해 캐시에서 DNS 기록을 확인한다. DNS(Domain Name System)는 인터넷 전화번호부와 같다. DNS는 웹사이트의 IP 주소와 도메.. 2022. 6. 9. [네트워크] TCP, UDP TCP, UDP 전송계층에서 사용하는 프로토콜. 목적지 장비까지 전송한 패킷을 상위의 특정 응용 프로토콜에게 전달하는 것에 목적 TCP? Transmission Control Protocol 두 개의 호스트를 연결하고 데이터 스트림을 교환하게 해주는 중요한 네트워크 프로토콜. TCP는 데이터와 패킷이 보내진 순서대로 전달하는 것을 보장해준다. 일반적으로 TCP와 IP를 함께 사용합니다. IP : 데이터의 배달을 처리 TCP : 패킷을 추적 및 관리합니다. TCP는 연결형 서비스를 지원하는 프로토콜로 인터넷 환경에서 기본으로 사용합니다. TCP 특징 연결형 서비스로 가상 회선 방식을 제공한다. 3-way handshaking과정을 통해 연결을 설정하고 4-way handshaking을 통해 해제한다. 흐름.. 2022. 6. 9. [네트워크] HTTPS를 알아보자 HTTPS HTTPS 개념 Hyper Text Transfer Protocol Secure Socket layer 의 약자. 기존 HTTP는 암호화되지 않은 방법으로 데이터를 전송하기 때문에 서버와 클라이언트가 주고 받는 메시지를 감청하는 것이 매우 쉽습니다. 이를 보완한 것이 HTTPS입니다. HTTPS는 HTTP 요청을 SSL(Secure Sockets Layer) 혹은 TLS(Transport Layer Security) 라는 알고리즘을 이용해, HTTP 통신을 하는 과정에서 내용을 암호화하여 데이터를 전송하는 방법입니다. SSL: 보안 소켓 계층(Secure Sockets Layer, SSL) SSL은 웹사이트와 브라우저(혹은, 두 서버) 사이에 전송된 데이터를 암호화하여 인터넷 연결을 보안을 유.. 2022. 6. 9. [OS] 프로세스와 쓰레드 프로세스와 쓰레드 요약 프로세스? 프로세스는 CPU에 의해서 현재 실행되고 있는 프로그램이다. PCB(Process Control Block, 프로세스 제어 블록)의 존재로서 명시되는 것 프로세서가 할당되는 개체로서 디스패치(Dispatch)가 가능한 단위 비동기적 행위를 일으키는 주체 CPU가 할당되는 실체 운영체제가 관리하는 최소 단위의 작업(프로그램) task란 용어와 함께 사용되며, 다양한 정의를 가짐 프로그램과 달리 메모리에 주소 공간을 갖는 능동적인 객체 프로세스 메모리 구조 프로세스는 스택, 힙, 데이터, 코드로 구성되어 있다. 스택 (Stack) 데이터를 일시적으로 저장하는 영역이다. 지역변수를 저장하는데 사용되고 해당 변수가 범위를 벗어나면 공간이 해제된다. 호출한 함수의 반환 주소, 반.. 2022. 6. 9. [JavaScript] 호이스팅(Hoisting)에 대해 알아보자 호이스팅(Hoisting) 먼저, 프로그래밍과 변수 개념을 정리합니다. 프로그래밍은 변수를 통해 값을 저장하고 참조하며 연산자로 값을 연산, 평가하고 조건문과 반복문에 의한 흐름제어로 데이터의 흐름을 제어하고 함수로 재사용이 가능한 구문의 집합을 만들며 객체, 배열 등으로 자료를 구조화하는 것이다. 변수는 값의 위치(주소)를 기억하는 저장소이다. 값의 위치란 값이 위치하고 있는 메모리 상의 주소(address)를 의미한다. 즉, 변수란 값이 위치하고 있는 메모리 주소(Memory address)에 접근하기 위해 사람이 이해할 수 있는 언어로 명명한 식별자(identifier)이다. 변수 선언과 할당의 구조 (출처) 변수는 var, let, const 키워드를 사용하여 선언하고 할당 연산자를 사용해 값을 .. 2022. 6. 9. [JavaScript] 스코프(Scope), 렉시컬 스코프(Lexical Scope), 클로저(closure) 스코프(Scope), 렉시컬 스코프(Lexical Scope), 클로저(Closure) 원래는 클로저 개념을 알아보고자 작성한 포스팅이지만, 이를 이해하기 위해서 여러 개념들을 함께 이해해야 하더군요. 함께 이해해야 하는 개념들을 챙겨서 작성해보겠습니다. 스코프(Scope) 스코프란 식별자(변수, 함수의 이름과 같이 어떤 대상을 다른 대상과 구분하여 식별할 수 있는 유일한 이름)를 찾아내기 위한 규칙입니다. 자신이 어디서 + 어떻게 선언되었는지에 따라 유효한(다른 코드가 자신을 참조할 수 있는) 범위를 가집니다. 자바스크립트에서 변수를 선언하는 방식은 var, let, const 3가지 입니다. var 는 함수 레벨 스코프를 따르며, 이 말은 함수 코드 블록 내에서 선언된 변수는 함수 코드 블록 내에서만.. 2022. 6. 9. [React] useEffect 와 useLayoutEffect 의 차이는? useEffect 와 useLayoutEffect 의 차이는? 먼저 훅의 실행 흐름과 Render, paint 의 개념을 알아두면 좋다. Render (레이아웃 배치) DOM tree를 만들기위해서 HTML파일을 파싱하는 style 속성을 계산하는과정. paint (그리기) 실제 화면에 그려주기위해 Layout을 표시하고 업데이트하는 과정. useEfffect useEffect 는 컴포넌트 레이아웃 배치(render)와 그리기(paint)를 완료한 후 비동기적(asynchronous)으로 실행됩니다. paint 된 후 실행되기 때문에, useEffect 내부에 dom에 영향을 주는 코드가 있을 경우, 사용자 입장에서는 화면의 깜빡임을 보게 됩니다. useLayoutEffect useLayoutEffect.. 2022. 6. 8. [항해99 92일차] (22.06.06.) WIL_실전 프로젝트 정리 Q&A 이번 WIL 은 이력서 작성과 향후 기술면접을 대비해서 Q&A 형식으로 정리해보려 한다. 여기에 계속 내용을 정리해나가면 좋은 참고자료가 될 것이라고 생각된다. React 관련 Q1. useRef는 어떤 목적으로 사용했나요? - 값이 변경되지 않아야 하는 변수를 할당할 때 사용했습니다. useRef 로 관리하는 변수는 값이 바뀐다고 해서 컴포넌트가 리렌더링되지 않습니다 - 리액트 컴포넌트에서의 상태는 상태를 바꾸는 함수를 호출하고 나서 그 다음 렌더링 이후로 업데이트 된 상태를 조회 할 수 있는 반면, useRef 로 관리하고 있는 변수는 설정 후 바로 조회 할 수 있습니다.. 리액트 공식문서에서는 useRef 로 만든 변수를 사용하여 다음과 같은 값을 관리 할 수 있다고 말합니다. setTimeout,.. 2022. 6. 6. [JavaScript] 반복적인 코드 실행 setInterval, clearInterval setInterval() Javascript에서 함수를 주기적으로 반복적으로 실행하고 종료하기 위해서는 setInterval() 을 사용한다. setInterval() 함수는 일정시간 주기로, 반복적으로 함수나 코드를 수행하는 함수이다. setInterval(function, delay millisecond, function parameters) 이 함수는 아래 매개변수를 입력 받습니다. function : 주기적, 반복적으로 실행할 함수 delay millisecond (optional) : 시간 간격 (밀리세컨드 단위) function parameters (optional) : 첫번째 파라미터의 함수에 전달할 파라미터 이 함수는 리턴으로 intervalID 값을 반환합니다. 이 값은 clearInte.. 2022. 6. 3. 이전 1 ··· 4 5 6 7 8 9 10 ··· 14 다음