본문 바로가기
개발자 일기/일일회고 (TIL)

부트캠프 31일차 (웹 아키텍쳐, 브라우저 작동 원리)

by MS_developer 2022. 10. 5.

쓰레기는 아니고...그냥 이만큼 많았다..

오늘의 생각

압도적으로 많은 공부량을 소화한 하루였다. 

 

이 모든 게 "HTTP/네트워크 기초"라니...몸이 떨려왔다.

 

기본적으로 외워야 할 정보가 많아서 완벽히 소화했다는 생각이 들지 않았다. 서버와 클라이언트, API, 프로토콜 등 기본적인 용어는 들어봤고 익숙했던 구조였다. 하지만 상대적으로 심층적인 개념이었던 HTTP Requests와 Responses, 그리고 AJAX 관련 지식들은 어지러울 정도로 많은 정보량에 이해도 잘 안 되었고 외워야할 부분들을 완벽히 외우지 못한 것 같았다. 

 

주어진 시간 안에 수업을 다 듣고 난 후 내가 생각하기에 중요한 정보들을 추스려보고 정리해 보았다. 

 

이후에 퀴즈를 풀어보았다.

 

결과는 나쁘지 않았지만, 기본적인 부분들을 완벽히 이해하지 못하고 있다는 것을 확신할 수 있었다. 

 

 

가장 먼저 틀린 첫 번째 문제로, localhost 대신 127.0.0.1로 접속할 수 있단 사실을 배웠음에도 hosts가 172.30.1.14이므로 틀렸다고 생각했다. 로컬호스트와 호스트의 차이점을 다시 공부해 봐야겠다.

 

이 외에도 퀴즈에는 나오지 않았지만 start line(status line) / headers / body 간의 차이와 구성 내용을 이해하지 못했다. 복습이 많이 필요한 하루일 것 같다.

 


오늘의 키워드

서버, 2-Tier 아키텍쳐, 3-Tier 아키텍쳐, 프로토콜, API, URL, URI, IP, 포트, 도메인, DNS, nslookup, HTTP message(start line(status line) / headers / body), stateless, HTTP Requests, HTTP Responses, AJAX / XHR, SSR, CSR

 


오늘의 학습내용

  • 서버클라이언트의 정의 및 관계
  • 2-Tier 아키텍쳐3-Tier 아키텍쳐의 차이
  • 프로토콜의 정의와 종류
  • API의 정의와 용도, 웹 개발에서의 API
  • URL과 URI의 차이: scheme, hosts, url-path, query, fragment의 정의와 지칭하는 부분
  • IP의 정의 및 IPv4와 IPv6의 차이
  • 포트, 도메인, DNS의 정의 (nslookup의 용도)
  • HTTP Message의 정의 및 종류, 구조(start line(status line) / headers / body)와 각 구조의 종류
  • stateless의 정의와 의미
  • AJAX가 생긴 이유, Fetch와의 관계, 장점과 단점
  • SSR(Server Side Rendering)CSR(Client Side Rendering)의 차이 및 각각의 사용이 적절한 경우

 


어려웠던 keyword / 활용한 질문

 

Q. 웹 애플리케이션에서는 어떤 프로토콜을 사용하나요?

 

A. 보통 HTTP를 사용하고, 이를 "HTTP 메시지"라고 합니다. HTTP는 웹에서 HTML, JSON 등의 정보를 주고받는 프로토콜이고, HTTPS는 HTTP에서 보안이 간화된 프로토콜입니다. 근간이 되는 프로토콜로 TCP 프로토콜이 있습니다.

 

Q. URL과 URI, 도메인의 차이점을 설명해주세요.


A.  URI는 URL을 포함하는 상위개념으로 URL의 기본 요소인 scheme, hosts, url-path 외에도 query, fragment도 포함합니다. 도메인은 특정 사이트에 진입할 때 IP 주소를 대신하여 사용하는 주소로 URI의 구성 요소 중 하나인 hosts를 대체할 수 있습니다.

 

Q. HTTP Requests와 HTTP Responses의 차이점이 무엇인가요?


A. HTTP Requests는 클라이언트가 서버에게 보내는 메세지이고 HTTP Responses는 서버가 클라이언트에게 보내는 메세지입니다. 기본적인 구조는 start line(status line), headers, body로 구성되어 있어 유사한 구조를 가지고 있고 둘 모두 요청 컨텍스트에 따라 형식이 달리 작성됩니다.

 

Q. SSR(Server Side Rendering)과 CSR(Client Side Rendering)의 사용이 적절한 경우가 언제인가요?


A. SSR(Server Side Rendering)은

  1. Search Engine Optimization(SEO)가 우선순위인 경우
  2. 웹 페이지의 첫 화면 렌더링이 빠르게 필요한 경우
  3. 웹 페이지가 사용자와 상호작용이 적은 경우

CSR(Client Side Rendering)은

  1. SEO 가 우선순위가 아닌 경우
  2. 사이트에 풍부한 상호 작용이 있는 경우
  3. 웹 애플리케이션을 제작하는 경우

에 적절합니다.

댓글