study/CS 8

CS 면접 예상 질문 - 네트워크(2)

HTTP의 특징을 설명해주세요.더보기HTTP는 상태를 저장하지 않는(stateless) 프로토콜로, 요청과 응답으로 구성되며, TCP 기반으로 동작하는 비연결성 프로토콜입니다.HTTP와 HTTPS의 차이점은 무엇인가요?-> HTTPS는 SSL/TLS 암호화를 사용하여 보안을 강화한 HTTP입니다.HTTP는 왜 상태를 저장하지 않나요?-> HTTP는 단순한 요청-응답 모델을 따르며, 서버의 부담을 줄이기 위해 상태를 유지하지 않습니다.HTTP 요청 방식에는 어떤 것들이 있나요?-> GET, POST, PUT, DELETE, PATCH 등의 메서드가 있습니다.HTTP 1.1과 HTTP 2.0의 차이는 무엇인가요?-> HTTP 2.0은 멀티플렉싱을 지원하여 여러 요청을 동시에 처리할 수 있습니다.쿠키와 세션은..

study/CS 2025.03.25

CS 면접 예상 질문 - 네트워크(1)

www.google.com 도메인을 브라우저에 입력했을 때 일어나는 일을 순차적으로 설명해주세요.더보기브라우저는 DNS 요청을 통해 IP 주소를 받아오고, TCP 연결 후 HTTP 요청을 서버에 보내며, 서버가 응답을 반환합니다.DNS란 무엇인가요?-> DNS는 도메인 이름을 IP 주소로 변환하는 시스템입니다.브라우저가 IP 주소를 찾는 과정은 어떻게 되나요?-> DNS를 통해 도메인 이름을 IP 주소로 변환합니다.HTTP 요청에서 'GET'과 'POST'의 차이는 무엇인가요?-> GET은 데이터를 요청하고, POST는 데이터를 서버로 전송합니다.서버가 응답을 반환하는 과정은 무엇인가요?-> 서버는 클라이언트의 요청을 처리하고, HTTP 응답을 반환합니다.웹 페이지를 어떻게 렌더링하나요?-> HTML, ..

study/CS 2025.03.18

CS 면접 예상 질문 - Spring(3)

관점지향 프로그래밍(AOP, Aspect Oriented Programming)은 무엇이고, 언제 사용할 수 있을까요?더보기AOP는 공통된 기능(로깅, 트랜잭션, 보안 등)을 핵심 비즈니스 로직과 분리하는 프로그래밍 기법입니다.반복적으로 사용되는 공통 기능(횡단 관심사)을 분리하여 코드의 중복을 줄이고, 핵심 비즈니스 로직을 더 명확하게 유지할 때 사용할 수 있습니다.AOP의 주요 개념은 무엇인가요?→ Aspect, Advice, Pointcut, JoinPoint, Weaving 등이 있습니다.AOP의 주요 활용 사례는 무엇인가요?→ 로깅, 트랜잭션 관리, 보안, 성능 모니터링 등에 사용됩니다.AOP를 적용하는 방법은 무엇인가요?→ @Aspect와 @Around, @Before, @After 등의 어노..

study/CS 2025.03.12

CS 면접 예상 질문 - Spring(2)

Spring Batch에 대해 설명해주세요.더보기-> Spring Batch는 대량의 데이터를 효율적으로 처리하는 프레임워크로, Job과 Step을 기반으로 구성되며 트랜잭션 관리, 병렬 처리, 재시작 기능 등을 제공합니다.Spring Batch의 주요 구성 요소는 무엇인가요?→ Job, Step, JobLauncher, JobRepository, ItemReader, ItemProcessor, ItemWriter 등이 있습니다.Job과 Step의 차이점은 무엇인가요?→ Job은 배치 작업의 전체 흐름을 관리하고, Step은 개별적인 처리 단계를 담당합니다.Spring Batch에서 트랜잭션 관리는 어떻게 이루어지나요?→ 각 Step에서 Chunk 기반 처리 또는 Tasklet 기반으로 트랜잭션을 관리합..

study/CS 2025.03.11

CS 면접 예상 질문 - Spring(1)

Bean 객체와 Bean 생명주기에 대해 설명해주세요.더보기-> Bean 객체란 스프링 컨테이너에서 관리되는 객체로, @Component, @Service, @Repository, @Controller 등으로 등록됩니다.Bean 생명주기는 IOC (Inversion of Control) 컨테이너에 의해 관리되는 객체의 생성부터 소멸까지의 과정을 말합니다. Bean 생명주기객체 생성 (@Component 등으로 등록)의존성 주입 (@Autowired 등으로 주입)초기화 (@PostConstruct 사용 가능)사용소멸 전 작업 (@PreDestroy 사용 가능)Spring에서 Bean을 싱글톤으로 관리하는 이유는 무엇인가요?-> 객체 생성을 최소화해 메모리 사용을 줄이고, 성능을 최적화하기 위함입니다.Bea..

study/CS 2025.03.05

CS 면접 예상 질문 - Java(3)

Java의 직렬화와 역직렬화에 대해 설명해주세요.더보기-> 직렬화는 객체를 바이트 형태로 변환하여 저장하거나 네트워크로 전송할 수 있게 만드는 과정이고,역직렬화는 바이트 데이터를 다시 객체로 변환하는 과정입니다. 직렬화가 필요한 이유는 무엇인가요?-> 객체를 저장하거나 네트워크를 통해 전송하기 위해 필요합니다.Java에서 직렬화와 역직렬화를 어떻게 구현하나요?-> ObjectOutputStream과 ObjectInputStream을 사용하여 구현합니다.직렬화를 위해 어떤 인터페이스를 구현해야 하나요?-> Serializable 인터페이스를 구현해야 합니다.직렬화에서 transient 키워드는 어떤 역할을 하나요?-> transient 키워드를 붙인 필드는 직렬화에서 제외됩니다.역직렬화 시 예외가 발생할 ..

study/CS 2025.03.04

CS 면접 예상 질문 - Java(2)

Java의 제네릭에 대해 설명해주세요.더보기-> 제네릭은 타입을 매개변수로 사용할 수 있게 하여 코드의 재사용성과 타입 안정성을 높이는 기능입니다.예를 들어, List는 String 타입만 저장하도록 제한할 수 있습니다.제네릭을 사용하면 어떤 장점이 있나요?→ 타입 안정성을 확보하고, 불필요한 형변환을 줄여 코드의 가독성을 높일 수 있습니다.제네릭을 사용하지 않으면 어떤 문제가 발생할까요?->타입 안정성이 보장되지 않아 형 변환 오류가 발생할 수 있고, 코드의 가독성과 재사용성이 떨어집니다.제네릭은 컴파일 타임에만 적용된다고 하는데, 런타임에는 어떤 영향을 미칠까요?-> 런타임에는 제네릭 정보가 사라지고 Object로 처리됩니다. 자바의 동시성 문제와 멀티쓰레드에 대해 설명하고 해결방법을 말씀해주세요.더..

study/CS 2025.02.26

CS 면접 예상 질문 - Java(1)

싱글톤 패턴이란 무엇인가요?더보기-> 하나의 클래스에서 단 하나의 객체만 생성되도록 보장하는 디자인 패턴입니다. 주로 전역 상태 관리나 자원 절약을 위해 사용됩니다. JVM이 무엇인가요?더보기-> Java Virtual Machine의 약자로, 자바 바이트코드를 실행하는 가상 머신입니다. 자바 프로그램이 플랫폼 독립적으로 실행될 수 있도록 해줍니다. 자바 메모리 영역에 대해서 설명해주세요.더보기-> JVM은 메소드 영역, 힙 영역, 스택 영역, PC 레지스터, 네이티브 메소드 스택으로 구성됩니다.클래스 정보와 메서드는 메소드 영역, 객체는 힙, 지역 변수와 호출 정보는 스택에 저장됩니다. 오버로딩과 오버라이딩의 차이점을 설명해주세요.더보기-> 오버로딩은 같은 이름의 메서드를 여러 개 정의하는 것이고, 오..

study/CS 2025.02.25