Space
article thumbnail
반응형

Q. 재귀를 활용하기 좋은 상황

// Q. 재귀를 활용하기 좋은 상황은 언제인지 예시를 들어 설명해 주세요.

A. 1. 주어진 문제를 비슷한 구조의 더 작은 문제로 나눌 수 있는 경우
   2. 중첩된 반복문이 많거나 반복문의 중첩 횟수(number of loops)를 예측하기 어려운 경우

Q. UI / UX의 개념과 관계

// Q1. UI, UX의 개념과 두 개념의 관계에 대해서 설명해 주세요.

A. UI : User Interface | 사람들이 컴퓨터와 상호작용하는 시스템을 의미합니다.
   UX : User Experience | 사용자가 어떤 시스템, 제품, 서비스를 직, 간접적으로 이용하면서 느끼고 생각하는 총체적 경험입니다.
   
   UX > UI | UX는 UI를 포함합니다.
             좋은 UX가 좋은 UI를 의미하거나, 좋은 UI가 항상 좋은 UX를 보장하지는 않습니다.
             하지만, 나쁜 UI는 보통 나쁜 UX를 유발합니다.

Q. Styled Components

// Q. Styled Components를 사용해 보면서 느낀 장점을 이야기해 주세요.

A. React와 CSS로 나뉘어 있었는 데 React와 Styled Components로 합쳐서 CSS를 컴포넌트화 시켜주니 
   원하는 부분을 찾는 데도 쉽게 찾을 수 있었고, class와 id 이름을 작성할 필요가 없었어서 편리하였습니다.

Q. Redux의 필요성과 원칙

// Q1. 상태관리 라이브러리(Redux)의 필요성에 대해서 설명해주세요.
A. 1. 전역상태를 위한 저장소를 제공해줍니다.
   2. props drilling 문제를 해결해줍니다.
   3. 상태의 출처를 파악하기 쉬워지기 때문에 코드의 유지보수가 좋아집니다.
   
// Q2. Redux(상태관리 라이브러리)의 세 가지 원칙에 대해 설명해주세요.
A. 1) Single source of truth
      - 동일한 데이터는 항상 같은 곳에서 가지고 와야 한다는 의미입니다. 
        즉, Redux에는 데이터를 저장하는 Store라는 단 하나뿐인 공간이 있음과 연결이 되는 원칙입니다.
   2) State is read-only
      - 상태는 읽기 전용이라는 뜻으로, React에서 상태갱신함수로만 상태를 변경할 수 있었던 것처럼, 
        Redux의 상태도 직접 변경할 수 없음을 의미합니다. 
        즉, Action 객체가 있어야만 상태를 변경할 수 있음과 연결되는 원칙입니다.
   3) Changes are made with pure functions
      - 변경은 순수함수로만 가능하다는 뜻으로, 
        상태가 엉뚱한 값으로 변경되는 일이 없도록 순수함수로 작성되어야 하는 Reducer와 연결되는 원칙입니다.

 

Q. Redux의 주요 개념과 동작 순서

// Q1. Redux의 주요 개념들과 연결 관계를 설명해 주세요.
A. Action : 말 그대로 어떤 액션을 취할 것인지 정의해 놓은 객체입니다.
   Dispatch : Reducer에게 Action을 전달해 주는 함수입니다. Dispatch의 전달인자로 Action 객체가 전달됩니다.
              Action 객체를 전달받은 Dispatch 함수는 Reducer를 호출합니다.
   Reducer : Dispatch에게서 전달받은 Action 객체의 type 값에 따라서 상태를 변경시키는 함수이고, 
              순수함수이어야 합니다.
   Store : 상태가 관리되는 오직 하나뿐인 저장소의 역할을 합니다.

// Q2. Redux 동작 순서에 대해 설명해주세요.
A. Redux에서는 Action → Dispatch → Reducer → Store 순서로 데이터가 단방향으로 흐릅니다.
   1. 상태가 변경되어야 하는 이벤트가 발생하면, 
      변경될 상태에 대한 정보가 담긴 Action 객체가 생성됩니다.
   2. 이 Action 객체는 Dispatch 함수의 인자로 전달됩니다.
   3. Dispatch 함수는 Action 객체를 Reducer 함수로 전달해 줍니다.
   4. Reducer 함수는 Action 객체의 값을 확인하고, 그 값에 따라 전역 상태 저장소 Store의 상태를 변경합니다.
   5. 상태가 변경되면, React는 화면을 다시 렌더링 합니다.

Q. Semantic HTML의 필요성과 예시

// Q. Semantic HTML의 필요성을 예시를 들어 설명해 주세요.

A. 1) 검색엔진(SEO)이 Semantic element를 더 좋아하기 때문입니다.
   2) 여러 개발자가 함께 작업할 때 <div> 요소를 탐색하는 것보다
      의미 있는 코드 블록을 찾는 것이 훨씬 더 편리하기 때문입니다.
      
   <div>와 <span> 요소로만 화면을 구성했을 때 보다, 
   semantic한 <header>, <nav>, <main> ... 를 사용하여 화면을 구성하였을 때 
   각 요소의 이름만 보고도 화면에서 어떤 역할을 하게 될지 
   그리고 어떤 내용을 담게 될지 보다 정확하게 알 수 있습니다.
반응형

Q. IP 프로토콜의 한계

// Q. IP 프로토콜의 한계에 대해서 설명해 주세요.

A. 1) 비연결성: 수신자가 없거나, 서비스 불능 상태여도 전송됩니다.
   2) 비신뢰성: 패킷이 유실되거나 차례대로 오지 않을 수 있습니다.
   3) 비식별성: 같은 IP를 사용하는 어플리케이션 구분하지 못합니다.

 

Q. Request 객체

// Q. request 객체에 대해 설명해주세요.

A. request 객체는 클라이언트(사용자)의 요청 정보를 담고 있습니다. 
   웹 서버는 클라이언트로부터 요청을 받을 때, 이 요청의 세부 사항을 request 객체에 저장합니다. 

   주요 속성은 다음과 같습니다:
   - HTTP Method: GET, POST, PUT, DELETE 등 클라이언트가 서버에 요청한 방식입니다.
   - URL: 요청된 리소스의 경로입니다.
   - Headers: 클라이언트가 전송한 HTTP 헤더 정보입니다. 여기에는 쿠키, 인증 정보, 사용자 에이전트, 호스트 등 다양한 정보가 포함됩니다.
   - Body: POST나 PUT 요청 시 전송된 데이터입니다. 주로 폼 데이터나 JSON 형태로 전송됩니다.
   - Query Parameters: URL에 포함된 쿼리 문자열입니다. 예를 들어, ?search=keyword와 같은 형태입니다.
   - Cookies: 클라이언트가 전송한 쿠키 정보입니다.

 

Q. Response 객체

// Q. response 객체에 대해 설명해주세요.

A. response 객체는 서버가 클라이언트에게 보내는 응답 정보를 담고 있습니다.
   서버는 클라이언트의 요청을 처리한 후, 그 결과를 response 객체에 담아 전송합니다.
   
   주요 속성은 다음과 같습니다:
   - Status Code: 응답의 상태를 나타내는 코드입니다. 200(성공), 404(찾을 수 없음), 500(서버 오류) 등이 있습니다.
   - Headers: 서버가 전송하는 HTTP 헤더 정보입니다. 콘텐츠 타입, 쿠키, 캐시 제어 등의 정보를 포함합니다.
   - Body: 서버가 클라이언트에게 보내는 데이터입니다. HTML, JSON, XML, 텍스트 등의 형식일 수 있습니다.
   - Cookies: 클라이언트에 설정할 쿠키 정보입니다.

Q. Cookie의 MaxAge, Expires

// Q. Cookie의 MaxAge, Expires 옵션이 무엇인지, 설정하지 않으면 어떻게 되는지 설명해 주세요.

A. 쿠키가 유효한 기간을 정하는 옵션입니다.
   MaxAge : 쿠키가 유효한 시간을 초 단위로 설정하는 옵션입니다.
   Expires : MaxAge와 비슷하지만 쿠키를 언제 폐기할 것인지 설정하는 옵션입니다.
             이때 옵션의 값은 클라이언트의 시간을 기준으로 합니다. 
             이후 지정된 시간, 날짜를 초과하게 되면 쿠키는 자동으로 파괴됩니다.
   
   MaxAge가 Expires 옵션보다 더 높은 우선 순위로 적용됩니다.
   
   MaxAge와 Expires를 설정하지 않으면 브라우저 종료 시 해당 쿠키가 삭제됩니다.

 

 

기술 면접 준비(3)을 알아보는 시간이었습니다.

틀린 내용은 댓글로 알려주시면 감사하겠습니다.

 

 

반응형
profile

Space

@Space_zero

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!