개발일지

2024.03.04 TIL

과일바구니♡ 2024. 3. 4. 21:00

1. 기술면접질문

1) 브라우저의 작동방식에 대해서 설명해주세요.

브라우저는 웹 페이지를 표시하기 위한 소프트웨어입니다. 사용자가 웹 주소를 입력하면, 브라우저는 해당 웹 페이지를 서버에서 다운로드하고 해석하여 화면에 표시합니다.

브라우저의 작동 방식은 크게 아래의 단계로 나눌 수 있습니다:

사용자의 요청 전송: 사용자가 웹 주소를 입력하면, 브라우저는 해당 주소를 서버에 요청합니다. 이 요청은 HTTP(Hypertext Transfer Protocol)라는 프로토콜을 통해 이루어집니다.서버와의 통신: 브라우저는 서버로부터 요청한 웹 페이지의 데이터를 받아옵니다. 이 데이터는 HTML(HyperText Markup Language)이라는 마크업 언어로 작성되어 있습니다.HTML 해석: 브라우저는 받아온 HTML 데이터를 해석하여 웹 페이지의 구조를 파악합니다. 이때, CSS(Cascading Style Sheets)와 JavaScript 등의 다른 웹 기술과 함께 사용되는 경우도 있습니다.렌더링: 브라우저는 해석한 HTML과 CSS를 기반으로 웹 페이지를 화면에 그립니다. 이 과정에서 이미지나 동영상과 같은 미디어 파일도 표시됩니다.사용자 상호작용 처리: 사용자가 웹 페이지에서 링크를 클릭하거나 양식을 작성하는 등의 상호작용을 할 때, 브라우저는 이를 감지하고 해당 동작을 처리합니다.보안 및 추가 기능: 브라우저는 사용자의 개인 정보 보호를 위해 보안 기능을 제공하며, 여러 가지 추가 기능들을 제공하기도 합니다. 예를 들면 즐겨찾기, 확장 기능, 개발자 도구 등이 있습니다.

이렇게 브라우저는 웹 페이지를 다운로드하고 해석하여 사용자에게 표시하는 역할을 수행합니다. 다양한 브라우저가 있지만, 대표적으로 크롬, 파이어폭스, 사파리, 엣지 등이 있습니다. 각 브라우저는 자체적으로 독특한 작동 방식과 기능을 가지고 있습니다.

 

4줄대답

브라우저는 사용자가 입력한 웹 주소를 서버에 요청하여 해당 웹 페이지의 데이터를 가져옵니다.

이후, 받아온 데이터를 해석하여 웹 페이지의 구조를 파악하고, 화면에 표시합니다.

사용자의 상호작용을 감지하여 처리하며, 보안 기능과 추가 기능을 제공합니다.

 

2)쿠키, 세션의 개념과 차이를 설명해보세요

쿠키와 세션은 웹 개발에서 사용되는 개념으로, 사용자의 상태 정보를 저장하고 관리하기 위해 사용됩니다. 그러나 쿠키와 세션은 목적과 동작 방식에서 차이가 있습니다.

쿠키는 클라이언트(사용자의 브라우저)에 저장되는 작은 텍스트 파일입니다. 서버는 쿠키를 사용하여 사용자의 정보를 클라이언트에 저장하고, 클라이언트는 이후 요청 시 해당 쿠키를 서버에 전송합니다. 쿠키에는 주로 사용자의 선호 설정, 로그인 정보, 장바구니 등의 정보가 저장됩니다. 쿠키는 클라이언트 측에서 관리되며, 만료 기간을 설정하여 일정 기간 동안 유지될 수 있습니다.

반면 세션은 서버 측에서 사용자의 정보를 관리하는 방법입니다. 사용자가 웹 페이지에 접속하면, 서버는 고유한 세션 ID를 생성하고 이를 클라이언트에게 전달합니다. 클라이언트는 이후 요청 시 세션 ID를 서버에 전달하여 사용자의 정보를 식별합니다. 서버는 세션 ID를 기반으로 사용자의 상태 정보를 저장하고 관리합니다. 세션은 서버 측에서 관리되며, 서버의 메모리나 데이터베이스에 저장됩니다. 일반적으로 세션은 클라이언트가 브라우저를 종료하거나 로그아웃할 때까지 유지됩니다.

요약하자면, 쿠키는 클라이언트에 저장되고 클라이언트 측에서 관리되며, 세션은 서버에 저장되고 서버 측에서 관리됩니다. 쿠키는 클라이언트와 서버 간에 상태 정보를 주고받을 수 있도록 돕고, 세션은 서버에서 사용자의 상태를 유지하고 관리하는 데 사용됩니다.

 

4줄 요약

쿠키는 클라이언트에 저장되고 클라이언트에서 관리되는 작은 텍스트 파일로, 사용자 정보를 저장하고 요청 시 서버에 전송합니다. 세션은 서버에 저장되고 서버에서 관리되는 방식으로, 사용자의 정보를 세션 ID를 통해 식별하여 유지합니다. 쿠키는 클라이언트 측에서 유지되는 반면 세션은 서버 측에서 유지되며, 주로 로그인 정보나 선호 설정과 같은 정보를 저장하고 관리합니다.

 

2. 최종프로젝트

-CS-FAQ CREATE 코드 리뷰 반영에 따른 리팩토링함.

 

'개발일지' 카테고리의 다른 글

2024.03.06 TIL  (0) 2024.03.08
2024.03.05 TIL  (0) 2024.03.05
2024.02.29 TIL  (3) 2024.02.29
2024.02.28TIL  (0) 2024.02.28
2024.02.27 TIL  (0) 2024.02.27