본문 바로가기
728x90

🤓 면접6

[개발자면접] 데이터베이스 (RDBMS, NOSQL 차이점) 이번 편은 NoSQL DB를 사용하는 분들이 참고하시면 좋습니다. 1. RDBMS, NOSQL 차이점 - RDBMS RDBMS는 관계형 데이터베이스 관리 시스템으로서, 구성된 테이블끼리 관계를 맺고 모여있는 집합체입니다. 테이블 형식으로 속성, 값으로 이루어져 있습니다. 트랜잭션 처리가 가능하고, 스키마를 미리 정의해 줘야해서 테이블 생성문으로 정의해줍니다. CREATE TABLE member( id int not null auto_increment primary key, name varchar(10) nut null, password varchar(12) not null, reg_date datetime not null ); - NOSQL NoSQL은 테이블 간의 관계를 정의하지 않고 key-value.. 2022. 11. 28.
[개발자면접] 네트워크 (OSI7 Layer, 공인IP 사설IP, HTTP, HTTPS, 쿠키 세션, 로드밸런싱) 1. OSI 7 layer와 각 계층에 대해 아는대로 설명해주세요. OSI 7 계층은 네트워크 통신을 구성하는 요소들을 7개의 계층으로 표준화한 것입니다. 이렇게 표준화하는 장점은 통신이 일어나는 과정을 단계별로 파악할 수 있어서, 문제가 발생하면 해당 문제를 해결하기 좋습니다. 7 계층(응용 계층) : 사용자에게 통신을 위한 서비스 제공. 인터페이스 역할 6 계층(표현 계층) : 데이터의 형식(Format)을 정의하는 계층 (코드 간의 번역을 담당) 5 계층(세션 계층) : 컴퓨터끼리 통신을 하기 위해 세션을 만드는 계층 4 계층(전송 계층) : 프로그램과 프로그램의 연결. 최종 수신 프로세스로 데이터의 전송을 담당하는 계층 (단위 :Segment) (ex. TCP, UDP) 3 계층(네트워크 계층) .. 2022. 11. 26.
[개발자면접] HTTP, HTTPS 프로토콜 비교 차이점(SSL handshake, SSL 인증서) 1. HTTP 프로토콜에 대해 설명해주세요. Hyper Text Transfer Protocol 로, 웹에서 데이터를 주고 받기 위한 프로토콜입니다. 상태 정보를 저장하지 않는 Stateless의 특징과, 클라이언트의 요청에 응답을 보낸 후 연결을 끊는 특징을 가지고 있습니다. 그래서 이전 통신의 정보를 모르기 때문에 매번 인증을 해줘야 하고 이를 해결하기 위해 쿠키(cookie)나 세션(session)을 사용합니다. HTTP의 특징 (Stateful과 Stateless, 쿠키, 세션, 토큰, 인증방식 비교) 2. HTTP와 HTTPS의 차이점은 무엇인가요? HTTP는 평문으로 데이터를 전송하기 때문에, 이걸로 아이디나 패스워드 같은 정보를 주고 받으면 패킷 캡쳐를 했을때 그 내용을 다 볼 수 있습니다... 2022. 11. 25.
[개발자면접] 트랜잭션이란? 트랜잭션이란? 데이터베이스의 상태를 변경시키기 위해 수행하는 작업 단위. 특징으로는 1) 원자성(DB에 모두 반경되거나 반영되지 않거나 2) 일관성 (데이터 타입이 전과 후가 항상 동일해야 한다) 3) 독립성 (하나의 트랜잭션은 다른 트랜잭션에 영향을 줄 수 없다. 4) 지속성(트랜잭션이 성공적으로 완료된다면 영구적으로 결과에 반영된다. 이는 commit을 통해 보장한다. RollBack은 트랜잭션이 비정상적으로 종료가 되었을 때 변경된 결과를 취소함으로써 원자성을 보장) 가 있다. 2022. 11. 25.
[개발자면접] 스택과 힙 영역 차이, Call By Value & Call By Reference 1. 스택과 힙 영역 차이 - 스택(stack) 영역 정적 메모리를 저장하는 공간 입니다. 값 형식을 저장하고, 지역변수와 매개변수가 저장되는 영역 입니다. 한 코드 블록 안에서 생성된 변수들은 블록이 닫히면 메모리에서 제거됩니다. 스택은 컴파일 타임에 크기가 결정됩니다. - 힙(heap) 영역 동적 메모리를 저장 합니다. 전역 변수를 다루고, 참조 형식을 저장하는 영역이고, 자동으로 제거되지 않으며, 가비지 컬렉터(GC)가 관리해 줍니다. 런 타임에 크기가 결정됩니다. 자바 메모리 구조(static, stack, heap) (해당 게시글에 힙과 스택 메모리에 데이터가 저장되는 나름 자세한 과정이 있습니다.) 2. Call By Value & Call By Reference Call By Value는 값.. 2022. 11. 25.
[개발자면접] 객체지향이란? 객체지향 특징, 오버라이딩 오버로딩 차이점 1. 객체지향이란? 객체지향 프로그래밍(Object-Oriendted-Programming)은 프로그램을 구성하는 구성요소들을 객체라는 곳에 담아두어 상호작용을 통해서 프로그램이 동작할 수 있게 하는 것을 말한다. 절차적으로 이루어지는 절차 지향적 언어와는 달리, 구성요소들이 객체 안에 담겨있어 특정 객체만 동작하게 하거나 데이터를 처리하기 등 다양한 일을 할 수 있다. 객체지향 프로그래밍은 크게 캡슐화, 상속, 추상화, 다형성으로 나눌 수 있다. 2. 객체지향 특징? (다형성 상속 추상화 캡슐화) 1. 다형성 다형성이란 하나의 타입에 여러 객체를 대입할 수 있는 성질. 확장성 증가. (하나의 참조변수로 여러 타입의 객체를 참조할 수 있는 것 (부모타입 참조변수로 자식 타입 인스턴스 참조 가능, 반대는 .. 2022. 11. 25.
728x90