CS/공부

[CS] 개발자 기초 질문 20선

Frankie 2021. 12. 8. 17:39

1. 1바이트는 몇 비트? 8

 

2. 1픽셀은 몇바이트? 1

 

3. 2^10은 얼마? 1024(컴퓨터는 2진수 사용하므로, 2^10가 10bits, 2를 10번 곱한 값이기 때문에)

 

4. 스택과 큐의 차이?

스택(LIFO)로 가장 나중에 입력된 데이터가 가장 먼저 출력되는 자료구조

(FIFO)로 가장 먼저 입력된 데이터가 가장 먼저 출력되는 자료 구조

 

5. Binary Tree의 시간 복잡도는?

평균 O(logN), 최악의 경우 O(N)

 

6. DNS의 역할? 도메인 이름을 호스트의 네트워크 주소(=IP주소)로 바꾸거나 그 반대로 변환

 

7. HTTPS와 HTTP의 차이는? HTTP가 안전하지 않은 반면, HTTPS는 TLS/SSL 인증서를 사용하여 인증을 보장하는 보안 프로토콜

 

8. 스마트폰 카메라 해상도는? (아이폰 13 프로 기준: 4K 60FPS)

 

9. 왜 사진에는 JPG를 사용? 불필요한 정보는 삭제하여 용량이 큰 사진을 작게 만든다. 즉, 압축 성능이 뛰어나 다른 형식의 파일보다 가벼우므로 웹 사이트 로드가 훨씬 더 빠르다

 

10. #ffffff는 무슨 색? 하양

 

11. <a href>? a 태그로 외부 사이트의 페이지를 열게 한다.

 

12. call by reference? 

참조에 의한 호출로 함수가 호출될 때, 메모리 공간 안에서는 함수를 위한 별도의 임시 공간이 생성된다. 함수가 종료되면 해당 공간은 사라진다.

호출방식은 함수 호출시 인자로 전달되는 변수의 레퍼런스를 전달 (해당 변수를 가르키는)

따라서 함수 안에서 인자의 값이 변경되면, 인자로 전달된 객체의 값도 함께 변경

 

13. Event Listener?

DOM 객체에서 이벤트가 발생할 경우 해당 이벤트 처리 핸들러를 추가할 수 있는 객체

* DOM - HTML, XML 문서의 프로그래밍 인터페이스

 

14. OOP에서 상속? 상위 클래스의 기능을 재사용, 확장하는 방법

 

15. non-blocking call?

어떤 쓰레드에서 오류가 발생하거나 멈추었을 때 다른 쓰레드에게 영향을 끼치지 않도록 만드는 방법들

* 실제로 작업을 수행하는 주체, 모든 프로세스에는 한 개 이상의 쓰레드가 존재

 

16. 버전 관리에서 commit? 저장소에 소스 코드의 일부의 최신 변경사항을 추가함으로써 저장소의 최상위 리비전의 일부분으로 만들어주는 것

 

17. try/catch는 무슨 뜻? 예외 처리 구문, try문에 예외가 발생할만한 코드 블록을 쓰고 catch문에 try에서 throw한 예외 객체에 대한 예외 처리를 해준다.

 

18. 디버깅할 때 breakpoint? 디버깅을 목적으로 실행중인 디버깅 대상 프로세스를 의도적으로 멈추게 하는 장소

 

19. 패스워드는 서버에 어떻게 보관? 해시 값 - 원래의 값을 해시함수의 결과 값으로 변환하여 비밀번호가 그대로 저장되지 않게 보관

 

20. SSD가 HDD보다 빠른 이유?  HDD는 원판 모양의 플래터를 아주 빠른 속도로 돌리고 그 데이터를 플래터가 읽게 되는데 그것 때문에 한번 돌때마다 데이터를 읽어야 해서 느리고 SSD는 컨트롤러에서 정보를 바로 가져오기 때문에 아주 빠르다.

* 플래터 - 하드 디스크에서 데이터가 저장되는 원판 금속판

'CS > 공부' 카테고리의 다른 글

[CS] 백엔드 기술 면접 질문(Spring 위주)  (0) 2022.03.23