본문 바로가기

IT면접5

[IT 면접대비] 개발자 기술면접 대비 🖥️/ 5️⃣ - 프론트엔드 (1) 브라우저 렌더링 과정을 설명해주세요 브라우저에서 렌더링을 담당하는 렌더링 엔진이 돌아가면서, HTML 파서가 HTML을 파싱하고, DOM 트리를 만듭니다. 동시에 Style Sheets도 CSS 파서에 의해서 CSSOM 트리를 구성합니다. 그 구성된 트리들로 렌더 트리가 만들어지고, 이 트리를 배치하고, 그리게 됩니다. 자바스크립트는, HTML 파서에서 스크립트 태그를 만났을 때, 자바스크립트 런타임으로 제어 권한을 넘기면서 그 실행 결과값을 받게됩니다. * 렌더링 엔진은 대표적으로 웹킷 과 개코 가 있다. 읽어보면 좋은 글 : d2.naver.com/helloworld/59361 * 브라우저 구조 - 사용자 인터페이스 - 브라우저 엔진 - 렌더링 엔진 - JS 런타임 - 기타 (통신담당, 벡엔드, 저장.. 2021. 4. 22.
[IT 면접대비] 개발자 기술면접 대비 🖥️/ 3️⃣ - JavaScript (2) Scope 란 무엇인가요? 변수가 값을 참조할 때 접근할 범위 이고, 흔히 그 접근할 수 있는 범위를 찾는 규칙을 말합니다. 자바스크립트는 함수 코드 블록 내에서 선언된 변수는 함수 내부에서만 유효한 함수 레벨 스코프를 따릅니다. 동적 스코프 VS 렉시컬 스코프 동적 스코프 : 함수가 호출 되는 순간에 상위 스코프를 결정 렉시컬 스코프 : 함수가 선언 되는 순간에 사위 스코프를 결정 this 는 무엇을 의미할까요? 자바스크립트에서 실행하는 환경의 context를 의미하는 객체입니다. 상황에 따라 다르지만 간단하게 예시를 들어보자면 특정 객체 안에서의 this 는 해당 객체를 의미하고, 글로벌한 환경에서의 this는 window 객체를 의미합니다. 함수에서 쓰였을 때 : 함수를 실행시킨 곳의 객체 메소드에.. 2021. 3. 3.
[IT 면접대비] 개발자 기술면접 대비 🖥️/ 2️⃣ - 운영체제 (2) 가상 메모리란 무엇인가요? 메모리는 한정적인데 프로세스 용량이라던가, 프로세스의 수가 늘어나면 다중 프로그래밍이 힘들어질 수 있습니다. 그럴 때를 대비해서, 프로세스의 데이터 전체가 메모리에 올라가지 않더라도, 가상의 주소공간을 이용해서 프로세스를 유지할 수 있게끔 해주는 것을 의미합니다. 가상메모리와 스왑(swap) 과는 다르다. 더 많은 프로세스를 동시에 실행이 가능해진다. 자동적으로 CPU 이용률 또한 높아진다. 페이징이란 무엇인가요? 프로그램은 실제 물리적 메모리를 직접적으로 이용하지 않습니다. 가상 메모리를 이용하게 되고, 그 가상메모리가 결국에는 물리적 메모리에 접근해서 메모리를 이용하게 되는데, 이 때 가상메모리를 일정한 크기의 블록으로 나누어 관리하는 것이 Paging , 물리적 메모리를 .. 2021. 3. 2.
[IT 면접대비] 개발자 기술면접 대비 🖥️/ 1️⃣ - 공통 직군 (2) TDD 란 무엇일까요? Test Driven Development 의 약자로, 개발을 하기 앞서서 테스트 코드를 먼저 작성하고, 그 다음에 기능을 하나하나 추가시켜가면서 테스트 검증도 병행하는 개발 방식을 말합니다. 장단점 장점 리팩토링에 수월하다. 오작동이 어느정도 방지가 되고, 코드의 퀄리티가 늘어난다. 단점 상황에 따라 생산성이 하락될 수 있다. 모든 케이스에 해당하는 테스트 코드를 짠다는것은 불가능하다. 함수형 프로그래밍이란 무엇인가요? 저는 프로그래밍 언어 -> 컴파일러로 이어지는 학부 수업 을 통해 Ocaml을 기반으로 하는 함수형 프로그래밍 언어를 접했는데요, 객체지향형 프로그래밍이랑은 다르게 함수 위주로 프로그래밍을 짜는 것을 의미합니다. 객체지향형 프로그래밍의 단점으로는 객체가 상태를 갖.. 2021. 3. 1.
[IT 면접대비] 개발자 기술면접 대비 🖥️/ 1️⃣ - 공통 직군 (1) 들어가기 앞서 기술면접의 중요성 코딩테스트 없이 사람을 뽑는 회사는 있어도, 면접 없이 뽑는 회사는 거의 없더군요! 그리고 개발 직군에서는 인성적인 부분보다는 얼마나 전문적인가, 기술적인 base 가 얼마나 되는가에 대한 평가가 더 주가 됩니다. 취업, 혹은 이직을 준비하고 계신 분들에게 기술면접에 대한 대비는 필수 라고 생각합니다. 아니면 적어도 평소에 CS 지식에 대한 공부는 꾸준히 이루어져야겠죠. 기술면접을 준비하는 마인드 제 생각을 조금 말해보자면, 기술면접을 준비한다는 것은 사실 크게 특별한 것이 아닙니다. 기술 면접에서 물어보는 질문들은 대부분 컴퓨터 사이언스 관련해서 기반이 되는 기본 지식들이고, 추후 실무, 혹은 협업을 할 때에 필수적인 지식이죠. 결국 면접을 떠나서 이런 부분은 알고 있어.. 2021. 3. 1.