CS지식
-
주니어 프론트엔드 개발자 기술면접 예상질문 - CS(1)CS지식 2022. 11. 4. 11:31
- 브라우저 렌더링 작동 원리 : 홈페이지가 사용자에게 보이는 순서 , 브라우저가 클라이언트에게 보여져주는 원리 : 주소창에 URL을 입력했을 때 어떻게 웹 페이지가 보이는걸까? 일단 간결하게 설명하자면 url을 입력했을 때 브라우저가 서버에게 필요한 자원(HTML,CSS,JS)를 요청합니다. 그렇게 서버가 응답해주면 브라우저는 렌더링 엔진으로 HTML, CSS를 분석해서 화면에 그려내고 JS는 자바스크립트 엔진이 Javascript 파일을 로드하고 분석하여 실행하게 됩니다. 이것이 브라우저가 웹 페이지를 클라이언트에게 보여주게 되는 원리입니다. 렌더링 엔진의 동작 과정을 더 깊게 설명하겠습니다. 먼저 렌더링 엔진이 HTML 문서를 서버로부터 얻으면 그 HTML문서를 분석하여 DOM트리를 구축합니다. 그..
-
자바스크립트는 어떤 언어?, 브라우저 동작원리, 동기와 비동기CS지식 2022. 10. 20. 11:36
자바스크립트가 어떤 언어인지 공부하다가 브라우저의 작동원리, 이벤트 루프, 동기와 비동기 등 많은 개념들이 엮어있어서 이해하느라 정말 오래걸렸다. 내가 알게된 그 결과물을 공유하려고 한다! 📌 자바스크립트는 어떤 언어 인가요? 자바스크립트가 어떤 언어인 줄 알고 제대로 이해한다면 웹 브라우저 동작원리와 동기와 비동기 방식의 처리까지 함께 알 수 있다. 그만큼 자바스크립트가 어떤 언어인지 파악하는 것은 매우 중요하다. 아무튼! 자바스크립트는 싱글 스레드 언어이다. 여기서 스레드란? 실행 중인 프로그램 내에서 실제로 작업을 수행하는 주체를 의미한다. 즉, 일을하는 주체이다. 이 사진을 보면 자바스크립트는 스레드가 하나이기 때문에 taskA, taskB, taskC가 있더라도 작성된 순서대로 작업을 처리한다...
-
데이터베이스(Database)CS지식 2022. 6. 30. 17:10
데이터베이스란? 데이터베이스는 1. 컴퓨터 시스템에 저장된 정보나 데이터를 모두 모아 놓은 집합 즉, 데이터를 많이 모아놓은 베이스이고 2. 이러한 데이터들은 데이터베이스 관리시스템(DBMS, Database Management System)으로 제어하고 관리한다. 즉, 1. 저장된 하드웨어 자체이고 2. 데이터 베이스를 관리하는 시스템 자체이다. 그렇다면 데이터베이스를 사용하는 이유는 무엇일까? 왜 굳이 데이터베이스에 데이터를 저장하는 걸까? 어플리케이션에서도 데이터를 잠깐 임시로 저장할 수는 있지만 어플리케이션을 종료하면 사라진다. 정말로 필요한 데이터는 사라지면 안되는데 말이다. 따라서 1. 데이터를 오랜기간 저장 및 보존하고 2. 체계적으로 보존하고 관리하기 위해 데이터베이스를 사용한다. 관계형 ..
-
개발자 도구 ApplicationCS지식 2022. 6. 24. 22:07
Application 패널의 기능은? 브라우저 저장소의 기능을 담당한다. 현재 로딩된 웹 페이지에서 사용된 리소스(이미지, DB, 로컬 및 세션 스토리지, 쿠키, 애플리케이션 캐시 등)를 열람할 수 있는 패널이다. 스토리지, DB 및 캐시 검사 및 관리, 쿠키 검사 및 삭제, 리소스 검사를 수행한다. 개발자 도구에서 >> 를 누르면 Application이 보인다. Local Storage, Session Storage, Cookie 차이점은? 공통 사항 : 브라우저의 저장소. 값의 성격에 따라 다르게 사용이 된다. key - value 페어 객체 형태로 데이터가 저장된다. Web Storage는 서버가 아닌, 클라이언트에 데이터를 저장할 수 있도록 지원하는 HTML5의 새로운 기능이다. Web Stora..
-
[모두의 네트워크] 7장 응용 계층 : 애플리케이션에 데이터 전송하기CS지식 2022. 6. 16. 12:16
28. 응용 계층의 역할 OSI 모델의 7계층인 응용 계층 - 응용 계층 역할 = 애플리케이션이 동작하는 계층 웹 페이지를 볼 때는 인터넷 익스플로러 같은 웹 브라우저를 사용하고 메일을 보내고 받을 때는 Outlook같은 메일 프로그램을 사용한다. 이렇게 애플리케이션은 사용자가 하고 싶은 일을 할 수 있도록 도와준다. 애플리케이션은 서비스를 요청하는 클라이언트와 서비스를 제공하는 서버로 분류할 수 있다. 서비스를 요청하는 클라이언트 = 웹 브라우저, 메일 프로그램 서비스를 제공하는 서버 = 웹 서버 프로그램, 메일 서버 프로그램 물리 계층, 데이터 링크 계층, 네트워크 계층, 전송 계층 = 상대방에게 데이터를 정확하게 전달할 수 있다. 응용 계층 = 애플리케이션과 데이터를 주고받기 위해 필요하다. = 클..
-
[모두의 네트워크] 6장 전송 계층 : 신뢰할 수 있는 데이터 전송하기CS지식 2022. 6. 16. 11:44
23. 전송계층의 역할 OSI 모델 4계층인 전송 계층 네트워크 계층 : 다른 네트워크로 데이터를 전송하려면 라우터가 필요, 라우터의 라우팅 기능을 사용하여 전송. 만약, 라우팅 정보가 잘못되었거나 많은 라우터를 경유하는 도중에 라우터에 문제가 생기거나 패킷이 손상될 수도 있음 물리 계층, 데이터 링크 계층, 네트워크 계층의 3계층이 있으면 목적지에 데이터를 보낼 수 있지만 데이터가 손상되거나 유실되어도 이 계층들에서는 아무것도 해줄 수 없음 네트워크 계층은 목적지까지 데이터를 전송하고 전송 계층은 데이터가 제대로 도착했는지 확인하는 역할 - 전송 계층의 역할 : 목적지에 신뢰할 수 있는 데이터를 전달하기 위해 필요 1. 오류를 점검하는 기능 2. 전송된 데이터의 목적지가 어떤 애플리케이션인지 식별하는 ..
-
[모두의 네트워크] 5장 네트워크 계층 : 목적지에 데이터 전송하기CS지식 2022. 6. 15. 11:39
17. 네트워크 계층의 역할 OSI모델의 3계층인 네트워크 계층 전 세계에는 수많은 네트워크가 있고 그 네트워크들은 서로 연결되어 거대한 인터넷을 이루고 있다. 어떻게 연결될 수 있던 걸까? 다른 네트워크에 있는 목적지로 데이터를 전달하려면 네트워크 계층의 기술이 필요하다. 데이터 링크 계층에서 이더넷 규칙을 기반으로 데이터의 전송을 담당하지만 이 규칙에 따라 같은 네트워크에 있는 컴퓨터로는 데이터를 전송할 수 있지만 인터넷이나 다른 네트워크로는 데이터를 전송할 수 없다. 수많은 네트워크가 연결된 환경에서 데이터 링크 계층의 기능만으로는 다른 네트워크로 데이터를 전송하기 힘들다. 네트워크 간의 통신을 가능하게 하는 것이 네트워크 계층의 역할이다. 이 계층을 통해 다른 네트워크로 데이터를 전송하려면 라우터..
-
[모두의 네트워크] 4장 데이터 링크 계층 : 랜에서 데이터 전송하기CS지식 2022. 6. 14. 14:55
12. 데이터 링크 계층의 역할과 이더넷 랜에서 데이터를 주고받으려면 데이터 링크 계층의 기술이 필요하다. - 데이터 링크 계층 네트워크 장비 간에 신호를 주고받는 규칙을 정하는 계층 랜에서 데이터를 정상적으로 주고받기 위해 필요한 계층 그 규칙들 중 일반적으로 가장 많이 사용되는 규칙 = 이더넷 - 이더넷 랜에서 적용되는 규칙 허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고받을 때 사용한다. 허브는 특정한 컴퓨터 한 대에 데이터를 보내려고 해도 다른 모든 컴퓨터에 전기 신호가 전달되는 문제가 있다. 이런 경우를 위해 데이터의 내용을 못보게 하는 확실한 규칙이 정해져 있다. 보내려는 데이터에 목적지 정보를 추가해서 보내고 목적이 이외의 컴퓨터는 데이터를 받더라도 무시하게 되어있다. 이더넷은 여러 컴퓨터..