목록기술면접 (20)
Welcome! Everything is fine.
💭 면접에서 받은 질문을 간단히 포스팅한 내용입니다. Q. 코루틴과 스레드의 차이점은 무엇인가요?A. 코루틴과 스레드는 둘 다 비동기 작업을 처리하기 위해 사용되지만, 동작 방식과 효율성에서 차이가 있습니다. 스레드는 운영체제에서 관리하는 독립적인 실행단위로, 새로운 스레드를 만들면 일정한 메모리와 자원을 소비합니다. 따라서 스레드가 많아지면 메모리와 CPU를 더 많이 사용해 오버헤드가 발생할 수 있습니다. 반면, 코루틴은 코틀린에서 제공하는 기능으로 경량 스레드처럼 작동합니다. 실행을 일시중단하고 다른 코루틴으로 전환할 수 있는 비동기 작업의 구조입니다. 코루틴은 스레드에 비해 메모리를 적게 사용하고, 실행 속도도 더 빨라 많은 비동기 작업을 효율적으로 처리할 수 있습니다. ✔️ 코루틴은 작업마다 스..
💭 면접에서 받은 질문을 간단히 포스팅한 내용입니다. 면접에서 받은 질문을 생각날때마다 정리해두려고 한다. Null을 처리하는 방법은 코틀린에서 아주 기초적인 내용이라 이미 배웠고, 심지어 이 블로그에 내가 강의를 들으며 정리한 포스팅도 있지만(...) 아주 조리있게 말하진 못했다. 첫 면접 경험 후 머리로 아는 것과 말로 내뱉는 건 정말 큰 차이가 있다고 느꼈다. 하루 10분이라도 말하는 연습을 하자..😂 Q. 코틀린에서 Null을 처리하는 방법은 무엇인가요?A. 코틀린에서는 언어 자체에서 Null 안정성을 지원해서 NullPointerException을 방지할 수 있습니다. 기본적으로 변수에 물음표(?)를 붙여서 Null을 허용할지 결정하고, Safe Call(?.) 연산자로 객체가 Null일 때..
기술면접 스터디에서 받은 질문을 복습하기 위한 용도로 정리한 내용입니다. 인덱스(Index)란 무엇이고 인덱스를 사용하는 자료구조는 어떤 것이 있나요?인덱스란 데이터베이스에서 튜플의 검색 속도를 높이기 위해 속성 값과 튜플이 저장된 주소를 저장하는 것을 말합니다. 인덱스를 사용하면 데이터가 정렬되어 있기 때문에 검색 속도가 빠르다는 장점이 있습니다. 인덱스를 사용하는 자료구조는 배열, 리스트, 해시 테이블, 트리 등이 있습니다.클러스터링(Clustering)과 리플리케이션(Replication)의 차이는 무엇인가요?클러스터링이란 동일한 데이터베이스를 여러 대의 서버가 관리하도록 하는 것을 말합니다. 여러 대의 서버를 이용하기 때문에 서버 한 대에 문제가 생기더라도 또 다른 서버가 동작하고 있어서 서비스에..
기술면접 스터디에서 받은 질문을 복습하기 위한 용도로 정리한 내용입니다. 스택으로 큐를 구현하고, 큐로 스택을 구현하는 방법은 무엇인가요?스택으로 큐를 구현하기 위해서는 2개의 스택이 필요합니다. 첫 번째 스택에 데이터를 넣고, 데이터를 뺄 때는 첫 번째 스택의 모든 데이터를 두 번째 스택으로 옮깁니다. 그렇게 하면 첫 번째 스택의 역순으로 두 번째 스택에 데이터가 저장될 것이고, 두 번째 스택에 있는 데이터를 하나씩 빼면 큐의 pop() 연산을 하는 것과 같은 결과가 나올 것입니다. 반대로 큐로 스택을 구현하기 위해서는 큐에 데이터를 넣고, 맨 위의 데이터가 나오기 전까지 데이터를 빼서 다시 큐에 넣습니다. 이 과정을 반복하면 스택을 구현할 수 있습니다.힙이란 무엇인가요?힙이란 완전 이진 트리의 한..

그래프란?비선형 자료구조 중 하나로, 데이터를 포함하는 정점(vertex)과 정점을 잇는 간선(edge)으로 구성된 자료구조그래프의 종류무방향 그래프 : 간선에 방향성이 없는 그래프, 정점의 개수가 n일 때 최대 간선의 개수는 n * (n - 1) / 2방향 그래프 : 간선에 방향성이 있는 그래프, 정점의 개수가 n일 때 최대 간선의 개수는 n * (n - 1)부분 그래프 : 기존 그래프에서 일부 정점 또는 간선을 제외한 그래프가중치 그래프 : 간선에 비용이나 가중치가 할당된 그래프완전 그래프(= 연결 그래프) : 간선을 최대로 가진 그래프유향 비순환 그래프 : 방향 그래프이면서 사이클이 없는 그래프그래프 구현 방법인접 행렬2차원 배열을 이용하여 그래프를 구현하는 방법, 간선의 수가 많은 밀집 그래프에서..
기술면접 스터디에서 받은 질문을 복습하기 위한 용도로 정리한 내용입니다. 멱등성(Idempotent)이란 무엇인가요?멱등성이란 같은 연산을 해도 결과가 달라지지 않는 성질을 말합니다. HTTP METHOD에서 '멱등성을 가진다'는 것은 동일한 요청을 한 번 보내는 것과 여러 번 보내는 것이 같은 효과를 가지고 서버의 상태도 변하지않는 것을 의미합니다.PUT과 PATCH의 차이는 무엇인가요?PUT과 PATCH 모두 리소스를 변경할 때 사용된다는 점은 비슷합니다. 그러나 PUT은 리소스 전체를 변경할 때 사용되며, 만약 리소스가 없을 시 해당 리소스를 생성할 수도 있습니다. PATCH는 리소스 전체가 아닌 일부를 변경할 때 사용된다는 점에서 PUT과 다릅니다.TCP와 UDP의 차이는 무엇인가요?TCP는 연결..

토폴로지와 병목현상에 대해 연관지어 설명해보세요. 토폴로지란?토폴로지란 컴퓨터 네트워크에 참여하는 요소들(노드, 링크)의 배치 형태를 말한다.(=망 구성방식)토폴로지의 종류버스형구조 : 모든 노드들이 단일 중앙 케이블(버스)에 연결되어 있다.장점 : 설치와 확장이 용이하며 비용이 적게 든다.단점 : 버스에 장애 발생 시 전체가 다운될 수 있으며 동시에 노드 간의 통신이 불가능하다.트리형구조 : 트리 구조로 계층적 구조 형태를 표현한다.장점 : 확장이 용이하고 계층 구조로 인해 관리가 편하다. 모든 노드를 연결하기 위한 회선 수가 적다.단점 : 상위 계층에 장애 발생 시 하위 계층도 영향을 받을 수 있다.스타형구조 : 모든 장치가 중앙의 허브나 스위치에 개별적으로 연결되어 있다. 중앙집중식이다.장점 : 장..
PUT과 PATCH의 차이를 설명해보세요. HTTP METHODHTTP METHOD란 클라이언트가 요청을 보낼 때 요청에 포함되어 해당 요청의 종류와 목적을 나타낸다.주요 메소드POST : 데이터 생성GET :데이터 조회PUT : 데이터 갱신, 해당 리소스가 없으면 생성PATCH : 데이터 일부 갱신DELETE : 데이터 삭제기타 메소드HEAD : 데이터 조회, 그러나 HTTP 메시지에 바디를 포함하지 않고 헤더로만 응답TRACE : 쿠키 및 세션 값을 포함해 클라이언트의 요청 메시지를 그대로 반환CONNECT : 요청한 자원을 양방향으로 연결, SSL을 사용하는 웹사이트에 접속 가능OPTION : 서버가 지원하는 HTTP 메서드를 메시지 헤더에 포함해 응답PUT과 PATCH의 차이PUT리소스 전체를 업..