2021. 4. 6. 16:30ㆍ기술면접 (Computer Science)
제너릭(Generic) 이란?
- 클래스 내부에서 사용할 데이터 타입을 외부에서 지정하는 기법
- 타입을 잘못 사용하여 발생하는 에러를 최소화 할 수 있음.
- 제네릭 타입은 Reference Type 만 설정 가능 (int, char, float, double과 같은 primitive Type 은 설정할 수 없음)
- 제너릭스(Generics)는 다양한 Type의 객체들을 다루는 Method 또는 Collection Class에 컴파일 시의 타입체크 기능.
504 에러 ?
- 504 Gateway Timeout 에러
- A 서버에서 B 서버로 HTTP 요청을 보냈을 경우, 일정 시간을 기다려도 응답이 되돌아 오지않을때에, A 서버에서 클라이언트로 504 Gateway Timeout 이 반환 된다.
- 게이트웨이 Timeout 의 Default 값인 60초를 늘려주면 해결이 되는가는 개인이 판단...
408 에러 ?
- 408 Request Timeout
- 클라이언트에서 A 서버로 요청을 보냈을 경우, 일정 시간을 기다려도 응답이 되돌아 오지 않을때에, 클라이언트 자체적으로 408 Request Timeout 이 반환 된다.
415 에러 ?
- HTTP Status : 415
- 지원되지 않는 미디어 유형
- 서버에 지원하지 않는 데이터를 전송했음을 의미한다.
- Content-Type Header 를 체크하자.
스택
- LIFO(Last In First Out)의 후입선출 구조
큐
- FIFO(First In First Out)의 선입선출 구조
- 기본적인 형태의 Queue를 선형큐(Linear Queue)라고 한다.
개선된 원형 큐
- 선형큐의 단점은 데이터를 출력한 영역은 재사용 할 수 없다는 것이다.
- 선형큐에 데이터를 꽉채우고 모두 꺼내면 front와 rear 모두 마지막 Index를 가리키게 된다.
- 큐의 끝의 다음이 처음이 되도록 구현된 형태
덱 (Deque)
- 덱은 앞으로도 뒤로도 넣을 수 있고, 앞으로도 뒤로도 뺄 수 있는 자료구조
- 덱(deque)은 double-ended queue를 줄여서 표현한 것
리스트
- 배열과 달리 원소들 간의 논리적인 순서를 위한 자료구조
– 배열 기반 list(배열기반)와 Node 기반 연결리스트가 있다.
- 배열은 순차적으로 연결된 공간에 데이터를 나열하는 것이라면, 링크드 리스트는 떨어진 곳에 존재하는 데이터를 연결해주는 구조를 통해 관리하는 데이터 구조
배열을 이용해 구현된 리스트
- 간단하며 포인터를 위한 메모리가 필요없기 때문에 메모리 공간 활용 효율이 높다.
- 장점은 조회가 빠르다.
- 단점은 삽입, 삭제와 같은 변동 발생 시 많은 시간이 걸리게 된다.
포인터를 이용해 구현된 연결 리스트(linked list)
- 장점은 삽입, 삭제가 빠르다.
- 단점은 배열처럼 메모리공간에 정렬되어있지 않고 사방에 흩어져있어 배열의 인덱스처럼 특정 노드에 바로 접근할 수 없습니다. 즉, 조회 시간이 오래 걸린다.
MVC패턴
– Model, View, Control WAS(Web Application Server)
- HTTP를 통해 사용자 컴퓨터에 app을 수행해 주는 미들웨어
JSP (Java Server Page)
- html기반에 JAVA코드를 블록화하여 삽입 JDBC(Java Data Base Connection)
- JAVA 언어를 통해 데이터 베이스에 접근 할 수 있는 프로그래밍 Get방식
- 주소창에 쿼리 스트링이 그대로 보여짐, 빠름 / 주로 클라에서 서버로 데이터 요청
HTTP 프로토콜의 응답 메소드
즉, 자원에 대한 행위를 나타내는 4가지 Method 가 존재하며 이 Method는 CRUD(Create/Read/Update/Delete)에 각각 매칭된다.
GET - Read(읽기)
POST - Create(생성)
PUT - Update(수정)
Delete - Delete(삭제) 에 매칭된다.
1. GET : 요청 받은 정보를 검색하여 응답 합니다.
2. POST : 요청된 자원을 생성 합니다. (멱등하지 않음)
3. PUT : 요청된 자원을 수정 합니다. (멱등함)
4. DELETE : 요청된 자원을 삭제 합니다.
멱등성(Idempotence)이란?
멱등성이란 여러번 수행해도 결과가 같음을 의미한다.
POST는 멱등하지 않고 PUT은 멱등하다. 즉 동일한 자원을 여러번 POST 하면 서버자원에는 변화가 생기지만, 여러번 PUT하는 경우는 변화가 생기지 않는다.
'기술면접 (Computer Science)' 카테고리의 다른 글
[CS] Technology Interview Preparation (3) (0) | 2021.04.10 |
---|---|
[CS] Technology Interview Preparation (1) (0) | 2021.03.04 |