3:40 ~ 4:05 진행
쿠키와 세션
- 쿠키가 무엇인가요?
- HTTP 통신, 브라우저가 상태를 가질 수 없다, 데이터 저장, 클라이언트와 서버를 연결지어 쿠키의 역할을 설명했음 → 전반적으로 쿠키에 대해서 잘 알고 있고, 핵심을 잘 파악하고 있다는 것이 느껴졌음 👍
- 쿠키와 세션의 개념에 대해 말씀해주세요.
- 데이터를 저장하기 위한 방법, 동작 과정도 연결해서 설명
- 쿠키의 단점
- 쿠키 탈취 가능성(보안x)
- 방어코드가 없어 쉽게 확인 가능
- 쿠키의 단점을 물어봤을 때 쿠키가 탈취될 가능성과 같은 단점을 먼저 말하고, 쿠키가 악성 스크립트 코드에 의해서 어떻게 탈취될 수 있을지에 대한 상황을 파악하고 있음👍
- 쿠키, 세션 사용 이유
- 사용자 정보가 유지가 안되는 경우를 로그인 기능을 예시로 설명(굳..)
- 쿠키와 세션의 차이를 말하면서 세션에 대해서도 알고 있다는 것이 느껴졌음.
쿠키와 세션, 무엇을 사용해야할까요?
라는 질문에 대하여 상황에 따라 다를 것이고, 그 상황에 따라서 적절히 선택을 할 수 있어야 할 것 같다 → 답변이 좋았음. 주관을 듣고 싶어서 그냥 물어본 질문이었는데, 쿠키와 세션에 대해서 개념만 알고 있는 것이 아니라 자신의 견해를 밝히는 것이 단순히 머리로만 알고 있는 것이 아니라 체득을 하고 있다는 것으로 느껴져서 매우 좋았음. 👍👍 (만약 제가 면접관이라면 호감도가 상승했을 것 같습니다.)
비동기
- 동기/비동기란 무엇인지
- 작업 설명 굳
- 첫 마디가 담백해서 좋았음. 동기란 무엇이고, 비동기란 무엇이고 차이는 무엇인지로 시작 → 담백하게 답변 굿
- 비동기 방식을 사용하는 예시
- setTimeout, Ajax 로 설명
- 상윤) 질문을 더 할지 망설였던 부분이었는데(저도 잘 몰라서😭), 꼬리질문으로 setTimeout이나 Ajax같은 web API 질문이 나올 수도 있을 것 같습니다.
- promise 개념
- 비동기 처리를 위해 등장, resolve, reject로 설명
- 프로미스가 객체라는 것으로 시작해서 등장한 배경, 내부적인 동작(?)을 추가로 설명하는 것이 좋았음. (담백하다 👍)
- promise와 async/await의 차이
- 동기적으로 표현하기 위해
- 콜백체이닝(?)을 동기적인 코드로 만들 수 있다는 답변, 나쁘지 않았던 것 같습니다.
- JS에서 비동기가 왜 중요한지
- 상윤) 개인적으로 싱글스레드 → 이벤트루프로 연결지으려는 빌드업(?) 질문으로 여쭤봤었는데, 외부적인 요인(렌더링? 이부분 답변을 제대로 적어놓지 않았습니다 죄송합니다 ㅜㅜ)에 대한 답변이 나왔음. 다른 방면으로 접근하신 것도 나쁘지는 않았던 것 같습니다. (예상못한 답변이라 오히려 좋은 것 같은?!)
클로저
- 개념
- 중첩된 함수로 ⇒ 외부/내부 함수로 잘 얘기하심
- 클로저가 무엇인지, 스코프와 관련, 클로저의 패턴 등으로 설명을 해주셨음. 저는 나쁘지 않았지만 면접관의 스타일에 따라 조금 다를 수 있을 것도 같습니다.
- 클로저 접근?
- 외부에서 클로저로 접근할 방법은 없다, 만약 접근하고 싶다면 다른 클로저 메서드를 사용해야 할 것이다 라는 답변이 좋았던 것 같습니다.
- 클로저는 어떤 경우에 사용
- 비공개 변수를 만들고 싶을 때
- 템플릿 재사용? → 고차함수로 사용할 수 있다는 접근이 좋았던 것 같습니다.
(나중에 꼬리질문에 대답할 수 있도록 하는게 좋을 것 같습니다!)
실행 컨텍스트