기술면접

프로세스와 스레드의 차이점에 대해 설명해 보세요. 우선, 프로세스는 독립적으로 실행 중인 프로그램을 말하고, 메모리 영역(Heap, Stack 등)을 다른 프로세스와 공유하지 않습니다. 그리고 프로세스는 최소 1개의 스레드 즉, 메인 스레드를 가지고 있습니다. 스레드는 프로세스 내에서 Stack만 별도로 할당받아 그 외에 메모리 영역을 공유하기 때문에 다른 스레드의 실형 결과를 즉시 확인할 수 있습니다. 그리고 스레드는 프로세스 내에 존재하고 프로세스가 할당받은 자원을 이용해서 실행됩니다. 멀티 프로세스와 멀티 스레드의 차이점에 대해 설명해 보세요. 멀티 프로세스는 하나의 프로세스가 죽어도 다른 프로세스에 영향을 끼치지 않고 계속 실행된다는 장점이 있지만, 멀티 르세드보다 많은 메모리 공간과 CPU를 차..
데이터베이스 기본 이해 SQL이란 무엇인가요? 그리고 SQL의 풀네임은 무엇인가요? SQL은 Structured Query Language의 약자로, 관계형 데이터베이스에서 데이터를 관리하고 조작하기 위한 표준화된 언어입니다. 데이터베이스 시스템과 상호작용하기 위한 명령을 정의하며, 데이터를 검색, 삽입, 수정, 삭제하고 스키마를 관리하는 데 사용됩니다. 데이터베이스 관리 시스템(DBMS)과 통신할 때 사용되며, 대부분의 관계형 데이터베이스(RDBMS)에서 지원됩니다. RDBMS란 무엇이며, 대표적인 예시를 들어주세요. RDBMS은 관계형 데이터베이스 관리 시스템을 나타내는 약어로, 데이터를 테이블 형태로 구조화하고 관리하는 데이터베이스 시스템입니다. RDBMS는 데이터를 행과 열로 표현하는 테이블로 구..
개인적으로 기술면접을 준비하면서 작성한 글입니다. 잘못된 내용이 기재되어 있으면 댓글로 말씀해 주시면 감사하겠습니다.. :) 지속적으로 확인하여 퀄리티 향상을 위해 힘써보겠습니다.. JVM 및 메모리 관리 자바의 동작 원리에 대해 설명해 보세요. 개발자는 [.java] 확장자 파일에 자바 소스 코드를 작성합니다. 이 파일은 자바 프로그램의 원시 코드를 포함합니다. 그리고 자바 컴파일러가 [.java] 파일의 소스 코드를 바이트 코드로 변환하며, [.class] 확장자 파일로 저장됩니다. 이 파일은 플랫폼 독립적인 중간 표현 형태입니다. [.class] 파일들은 JVM 시작 또는 런타임 중에 필요할 때 클래스 로더에 의해 메모리에 로드됩니다. 이 과정은 필요한 클래스를 동적으로 로드하여 메모리에 배치합니다..
Java 기본 및 핵심 개념1. Java의 특징을 설명해주세요.자바는 객체지향 프로그래밍 언어로, 기본 자료형을 제외한 모든 요소들이 객체로 표현되고, 객체지향 개념의 특징인 캡슐화, 상속, 추상화, 다형성이 잘 적용된 언어입니다. 자바는 JVM위에서 동작하기 때문에 운영체제에 독립적이며, GC를 통해 자동으로 메모리 관리가 가능합니다. 하지만, JVM 위에서 동작하기 때문에 상대적으로 속도가 느리며 다중 상속이나 타입에 엄격하고 제약이 많은 편입니다.컴파일 언어와 인터프리터 언어에 대해 설명해 보세요.컴파일 언어와 인터프리터 언어는 프로그램 코드를 어떻게 실행하는지에 따라 구분됩니다.컴파일 언어는 컴파일러를 사용하는 언어에서 전체 코드가 한 번에 컴파일되어 실행 파일을 생성합니다. 생성된 이 실행 파일..