25. 쿠키, 세션의 개념과 차이를 설명해보세요 핵심 키워드 : 저장 위치, 데이터 유지, 보안 "쿠키와 세션은 사용자의 상태 정보를 유지하는 데 사용되는 기술로, 웹 상에서 클라이언트와 서버 간의 상태를 유지하는 방법입니다. 그러나 저장 위치, 데이터 유지 방식, 보안 측면에서 차이가 있습니다. 쿠키(Cookie)는 클라이언트의 웹 브라우저에 텍스트 파일 형태로 저장되며, 사용자가 다시 해당 사이트를 방문할 때 브라우저를 통해 서버에 전송됩니다. 쿠키는 주로 사용자의 선호도, 로그인 상태 등을 저장하는 데 사용되며, 클라이언트 측에서 생성, 저장, 수정할 수 있습니다. 쿠키의 데이터 유지 기간은 개발자가 설정할 수 있으나, 보안이 상대적으로 약하고 사용자의 PC에 직접 저장되기 때문에 민감한 정보 저장..
기초
19. NoSQL과 RDBMS의 특징과 차이점에 대해서 장, 단점을 들어 설명해주세요. 핵심 키워드 : 비정형 데이터, 읽기 쓰기, 성능 비교, 유연성과 안정성 "NoSQL과 RDBMS는 데이터를 저장, 관리, 검색하는 방식에 있어 서로 다른 특성과 장단점을 가집니다. RDBMS는 관계형 데이터베이스 관리 시스템으로, 엄격한 스키마와 테이블 기반 구조를 가집니다. 이는 데이터의 일관성과 정확성을 보장하는 ACID 속성을 지원합니다. RDBMS는 복잡한 쿼리와 트랜잭션 관리에 강점이 있으며, 정형화된 데이터 처리에 적합합니다. 단점으로는 비정형 데이터 처리에는 유연하지 않고, 대용량 데이터 처리 시 성능이 저하될 수 있다는 점이 있습니다. NoSQL은 Not Only SQL의 약자로, 비관계형 데이터베이스..
13. Annotation이란 무엇이고 구체적으로 어떤 것이 있는지 예시를 들어 설명해주실 수 있을까요? 핵심 키워드 : 메타데이터, 주석(과의 차이), 리플렉션 "Annotation은 자바 코드에 추가적인 정보를 제공하는 메타데이터입니다. 이는 주석과 다르게, 컴파일 시간이나 실행 시간에 사용될 수 있으며, 리플렉션을 통해 프로그램에 의해 읽힐 수 있습니다. Annotation을 사용함으로써 코드에 대한 데이터를 정의하고, 이 정보를 실행 시간에 분석하여 동작을 변경할 수 있습니다. 예를 들어, `@Override`는 메서드가 상위 클래스의 메서드를 오버라이드한다는 것을 나타내며, `@Deprecated`는 메서드나 클래스가 더 이상 사용되지 않음을 표시합니다. `@SuppressWarnings`는 컴..
7. JVM의 스택과 힙 메모리 영역에 대해 아는 만큼 설명해주실 수 있을까요? 핵심 키워드 : 정적 / 동적 할당, 스레드, GC, 생성, 수거 "JVM 내에서 스택 메모리 영역은 각 스레드 별로 생성되며, 메소드 호출과 로컬 변수에 대한 정보를 정적으로 할당합니다. 이 영역은 메소드 실행이 시작될 때 생성되고, 메소드가 종료되면 해제되는 구조로, 스레드 별 실행 컨텍스트를 관리하는 데 사용됩니다. 반면, 힙 메모리는 JVM이 관리하는 더 큰 저장 공간으로, 모든 스레드가 공유하는 영역입니다. 힙은 주로 동적으로 할당되는 객체와 배열을 저장하는데 사용되며, 이 공간에 저장된 객체들은 가비지 컬렉터(GC)에 의해 더 이상 참조되지 않는 객체가 자동으로 수거되어 메모리를 관리합니다. 스택은 빠르고 효율적인..
1. Call by reference란 무엇이고 보통 어떻게 쓰이나요? 핵심 키워드 : 값, 참조, 복사, 객체 전달 / 값 전달 "Call by reference는 메소드 호출 시 변수의 메모리 주소를 전달하는 방식으로, 이를 통해 메소드 내에서 직접 변수의 값을 변경할 수 있습니다. 이 방식을 사용하면, 메소드 내의 변경사항이 호출한 쪽의 변수에도 반영되기 때문에, 대규모 데이터 처리나 필요한 상태의 변경을 보다 효율적으로 수행할 수 있습니다." 꼬리 질문 > Java에서는 Call by reference를 직접 지원하나요? "Java에서는 모든 메소드 호출이 기본적으로 Call by value 방식으로 이루어집니다. 이는 기본 데이터 타입이든 객체 참조이든, 전달된 인자의 복사본을 생성해 메소드에 ..