전체 글
-
자료구조 및 알고리즘 관련 질문긴급 면접 준비 2023. 9. 23. 16:39
자료구조 자료구조와 알고리즘이란 무엇인가요? - 자료구조는 데이터를 원하는 목적에 맞게 저장하기 위한 구조를 말하고 알고리즘이란 문제를 해결하기 위한 모든 동작들의 모임이라고 할 수 있습니다. 스택, 큐, 트리, 힙 구조에 대해서 설명해주세요 - 스택: 데이터를 쌓아서 올려놓은 형태의 자료구조로 마지막에 들어간 데이터가 가장 먼저 나오는 후입선출의 구조로 되어 있습니다. 데이터의 삭제와 삽입이 한 곳에서 일어나며 활용 예시로는 브라우저의 뒤로 가기 기능, 컨트롤 z 기능 등이 있습니다. - 큐: 데이터를 일렬로 세운 형태의 자료구조로 처음 들어간 데이터가 가장 먼저 나오는 선입선출의 구조이며 데이터의 삽입은 rear 부분에서 삭제는 front부분에서 일어납니다. 활용 예시로는 운영체제의 스케줄링이나 너비..
-
네트워크 관련 질문긴급 면접 준비 2023. 9. 21. 22:54
http 프로토콜에 대해 설명해주세요 - 인터넷에서 데이터를 전송하는데 사용되는 프로토콜 중 하나로, 클라이언트와 서버 간의 통신을 가능하게 합니다. 주로 웹브라우저와 웹서버 간의 통신에 사용되며 상태를 저장하지 않고 응답 후에 연결을 끊는 특징이 있습니다. - 응용 계층의 프로토콜로 tcp/ip 위에서 작동합니다. - http로 보낼 수 있는 데이터는 html문서, 이미지, 동영상, 오디오 텍스트 문서 등이 있습니다. http 메서드란 무엇이고 종류에 대해서 설명해주세요 - http 메서드란 서버에게 요청의 종류에 대해 알려주기 위해 사용하는 것으로 post, get, patch, delete 등이 있습니다. 각각은 crud에 대응됩니다. put과 patch의 차이점에 대해서 설명해주세요 - put은 ..
-
운영체제 관련 질문긴급 면접 준비 2023. 9. 20. 17:01
운영체제의 구조 : 크게 보면 인터페이스와 커널로 나뉜다. 커널: 프로세스 관리, 메모리 관리, 저장장치 관리와 같은 운영체제의 핵심적인 기능을 모아놓은 것으로, 자동차가 운영체제라고 한다면 커널은 엔진에 해당한다. 인터페이스: 커널에 사용자의 명령을 전달하고 실행 결과를 사용자에게 알려주는 역할을 한다. 시스템 호출: 커널이 사용자나 응용 프로그램으로부터 자신을 보호하기 위해 만든 인터페이스로 커널의 직접적인 접근을 막는 역할을 한다. 응용 프로그램이 하드웨어 자원에 접근하거나 운영체제가 제공하는 서비스를 이용하려 할때는 시스템 호출을 사용해야 한다. 드라이버: 커널과 하드웨어 사이의 인터페이스이다. 시스템 호출과의 차이점은 커널에 접근하기 위해서는 시스템 호출을 반드시 거쳐야 하지만 드라이버 같은 경..
-
자바와 객체지향 관련 질문긴급 면접 준비 2023. 9. 20. 15:51
자바 관련 질문 Java 자바 데이터 타입 중 기본형과 참조형의 차이에 대해 설명해주세요. - 기본형은 데이터 자체를 변수 안에 저장하고 참조형은 데이터의 주소가 저장됩니다. 기본형 같은 경우에는 스택 메모리 영역에 저장되고 참조형의 데이터 객체는 힙 메모리 영역에 저장되게 됩니다. 객체지향 추상 클래스와 인터페이스의 차이는 무엇인가요? - 둘 다 객체 생성은 불가능, 확장을 위한 것임 - 추상 클래스의 경우 추상 메서드와 일반 메서드 모두를 포함할 수 있지만 인터페이스는 추상 메서드만 포함한다는 차이가 있습니다. 이에 따라 추상 클래스는 하위 클래스가 상위 클래스의 메서드를 재사용하거나 확장하는 경우에 사용을 하고 인터페이스의 경우에는 하위 클래스가 모든 추상 메서드를 구현해야하기 때문에 특정 동작을 ..
-
백엔드 종합긴급 면접 준비 2023. 9. 18. 22:31
추천 리스트: 운영체제, 컴퓨터구조, 네트워크, 자료구조, 알고리즘, 리눅스, 프로그래밍 언어, 기술스택, 코테풀이과정 코드 스테이츠 백엔드 기술면접 질문 예시 Cloud CI/CD가 무엇이라고 생각하시나요? CI와 CD의 차이점이 무엇인지 설명해 주세요. - ci/cd란 애플리케이션의 개발부터 배포단계까지를 자동화하여 효율적으로 사용자에게 빈번하게 배포할 수 있게 하는 방법을 의미합니다. ci는 지속적 통합을 의미하며 코드의 변경사항이 발생하면 이를 자동으로 빌드 및 테스트를 진행하여 공유 리파지토리에 병합하게 해줌으로써 여러 사람이 동시에 작업하여도 충돌을 방지할 수 있다. cd의 경우 공유 리파지토리의 변경 사항을 고객이 실제로 사용하는 프로덕션에 자동으로 적용하는 과정을 의미한다. Spring F..
-
[Spring] 의존관계 자동 주입인프런 - 스프링/핵심 원리 2023. 8. 8. 22:06
다양한 의존관계 주입 방법 - 생성자 주입, 수정자 주입(setter 주입), 필드 주입, 일반 메서드 주입 생성자 주입 - 생성자 호출시점에 딱 1번만 호출되는 것이 보장된다. - 불변, 필수 의존관계에 사용 - 생성자가 딱 1개만 있으면 @Autowired를 생략해도 자동 주입 된다.(스프링 빈에만 해당) 수정자 주입(setter 주입) - 선택, 변경 가능성이 있는 의존관계에 사용 - 자바빈 프로퍼티 규약의 수정자 메서드 방식을 사용하는 방법이다. - @Autowired의 기본 동작은 주입할 대상이 없으면 오류가 발생한다. 주입할 대상이 없어도 동작하게 하려면 required의 옵션을 false로 지정하면 된다. 필드 주입 - 코드가 간결하지만 외부에서 변경이 불가능해서 테스트 하기 힘들다는 치명적..
-
[모두의 네트워크] 4장 데이터 링크 계층: 랜에서 데이터 전송하기CS/모두의 네트워크 2023. 8. 2. 01:52
OSI 모델과 TCP/IP 모델의 비교 12 데이터 링크 계층의 역할과 이더넷 - 랜에서 데이터를 주고받으려면 데이터 링크 계층의 기술이 필요하다. - 데이터 링크 계층은 네트워크 장비 간에 신호를 주고받는 규칙을 정하는 계층으로 대표적인 규칙에는 이더넷(Ethernet)이 있다. - 이더넷은 허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고 받을 때 사용한다. - 이더넷은 데이터 충돌을 막기 위해 CSMA/CD 라는 방법을 통해 데이터를 보내는 시점을 늦춘다. - 쉽게 말해서 케이블에 신호가 흐르는지를 파악하고 흐르지 않는 경우에만 데이터를 보내는 방법이고 효율이 좋지 않아서 거의 사용하지 않는다. --> 스위치 사용 13 MAC 주소의 구조 - 비트열을 전기 신호로 변환하는 랜 카드에는 MAC(Med..
-
[Java] 정규표현식(Regular Expression, regex)개발 지식/Java 2023. 7. 27. 14:56
정규표현식이란? 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어 정규표현식 문법 정규표현식 설명 ^ 문자의 시작(한 줄 기준) $ 문자의 끝(한 줄 기준) . 모든 문자 \\w 문자만 허용(여기서 문자는 영문, 숫자 _를 의미) \\W 문자가 아닌 경우에만 허용 \\d 숫자만 허용 \\D 숫자가 아닌 경우에만 허용 \\s 공백 문자만 허용 \\S 공백 문자가 아닌 경우에만 허용 \\b 문자와 문자가 아닌 것의 경계 \\B \\b와 반대로 동작 * 앞의 대상이 0개 이상 + 앞의 대상이 1개 이상 ? 앞의 대상이 0개 또는 1개 {n} n개 {n,} n개 이상 {n, m} n개 이상 m개 이하 () 특정 그룹 [a-zA-Z] 괄호안의 어떤 문자든 [^a-z] 괄호안의 문자들은 제외 특수한..