[22.08.18] 기술 면접 준비 - 2

Yujin Hong·2022년 8월 18일
0

SEB_FE_40

목록 보기
4/8

JavaScript

Promise의 기능과 필요한 이유에 대해서 설명해주세요.

프로미스는 자바스크립트에서 비동기를 간편하게 처리해줍니다.

new Promise로 프로미스를 생성한 다음, resolve한 값을 then으로 넘겨줍니다.

콜백과 비교하여 프로미스는 then 메서드들을 순차적으로 실행하여 코드의 깊이가 더 이상 깊어지지 않아 콜백헬을 방지할 수 있습니다. 또 콜백에서 매번 따로 처리해야 했던 에러도 마지막 catch에서 한 번에 처리할 수 있습니다.

순수함수란 무엇인가요? 불변성과 사이드 이펙트와 연결하여 설명해주세요.

순수함수는 오직 함수의 입력만이 함수의 결과에 영향을 주는 함수입니다.

입력으로 전달된 값을 수정하지 않고, 어떠한 전달 인자가 주어질 경우 항상 똑같은 값이 리턴되는 예측 가능한 함수입니다.

함수 내부의 구현이 함수 외부에 영향을 끼치지 않기 때문에 사이트 이펙트가 발생하지 않습니다.

React

React의 state와 props에 대해서 설명해주세요.

state는 컴포넌트 내부에서 변할 수 있는 값입니다.
props는 부모 컴포넌트로부터 전달받은 값으로 변할 수 없습니다.

React 컴포넌트의 key 속성에 대해서 설명해주세요.

리액트에서 자식 요소들을 반복적으로 렌더링하는 상황에서, 각 요소에 키 속성을 부여하면 더 이상 모든 요소를 렌더링하지 않고 추가된 부분만 재렌더링 하는 효율적인 렌더링을 시도합니다.

따라서 map 메서드 사용 시 내부에 있는 첫 엘리먼트에 반드시 키 속성을 부여해야 합니다.

키 속성에는 데이터의 id처럼 변하지 않고, 예상 가능하며, 유일한 값을 할당해야 합니다.

useEffect의 dependency array에 대해서 설명해주세요.

종속성 배열은 조건을 담고 있습니다. 여기서 조건은 boolean 형태의 표현식이 아닌, 어떤 값의 변경이 일어날 때를 의미합니다.

따라서 이 배열에는 어떤 값의 목록이 들어갑니다.

해당 배열 자리에 아무값도 넣지 않을 경우에는 컴포넌트가 처음 생성되거나, props가 업데이트 되거나, 상태가 업데이트 될 때마다 effect 함수를 실행합니다.

빈 배열을 넣을 경우에는 컴포넌트가 처음 생성될 때만 effet 함수를 실행합니다.

HTTP/네트워크

CSR과 SSR의 차이점에 대해서 설명해주세요.

SSR은 서버에서 페이지를 렌더링합니다.
CSR은 브라우저, 즉 클라이언트에서 페이지를 렌더링합니다.

SSR은 검색 엔진 최적화가 우선순위이거나, 웹 페이지의 첫 화면 렌더링이 빠르게 필요한 경우에 적합합니다.

CSR은 빠른 동적 라우팅과 렌더링을 제공하기 때문에 웹 페이가 사용자와 상호작용이 많은 경우에 적합합니다.

GET 메서드와 POST 메서드의 차이점에 대해 설명해주세요.

GET 메서드는 서버 자원을 가져올 때 사용합니다.
POST 메서드는 서버에 자원을 새로 등록할 때 사용합니다.

GET 메서드는 body를 가지지 않기 때문에 query 파라미터를 사용하여 필요한 리소스를 전달합니다.

POST 메서드는 body를 사용하여 새로 등록할 리소스를 전달합니다.

웹서버 기초

HTTP 메세지 구조에 대해 설명해주세요.

상단에서부터 요청은 start line, 응답은 status line, HTTP 헤더, empty line, body로 이루어져 있습니다.

start line 혹은 status line은 요청이나 응답의 상태를 나타냅니다.
HTTP 헤더는 요청을 지정하거나, 메세지에 포함된 본문을 설명하는 헤더의 집합입니다.
empty line은 헤더와 본문을 구분합니다.
body는 요청과 관련된 데이터나 응답과 관련된 데이터 또는 문서를 포함합니다. 요청과 응답의 유형에 따라 선택적으로 사용합니다.

Same-Origin Policy와 CORS에 대해서 설명해주세요.

브라우저는 SOP에 의해 기본적으로 다른 출처와의 리소스 공유를 막지만, CORS를 사용하면 접근 권한을 얻을 수 있게 됩니다.

SOP는 다른 출처와의 리소스 공유를 제한하는 정책입니다.

CORS는 추가적인 HTTP 헤더를 사용하여, 한 출처에서 실행 중인 웹 어플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제입니다.

profile
Web Frontend

0개의 댓글