RESTful api란?
REST원칙을 따르는 api를 의미
REST는 웹서버를 설계할 때 사용되는 아키텍쳐 스타일로, 웹 서비스의 구성요소 간에 효율적이고 안정적인 상호작용을 촉진함
RESTful api는 클라이언트와 서버 간에 데이터를 교환할 때 널리 사용되며, 웹 모바일 애플리케이션 및 다른 서비스와 통신할 수 있도록 개발 됨
http 에서 사용되는 요청 방식을 나타냄
http는 인터넷에서 웹 페이지와 다른 자원을 전송하는데 사용되는 주요 프로토콜(클라이언트 => 서버)
http 메소드는 클라이언트가 서버에 원하는 작업을 알리기 위한 방법으로, 여러 종류가 있음"
GET : 서버에서 정보를 검색하려는 경우 사용합니다. 이 메소드는 서버의 데이터를 변경하지 않고 조회하기만 합니다.
POST : 새로운 리소스를 생성하거나 서버에 정보를 제출할 때 사용됩니다. 일반적으로 데이터를 서버에 전송하여 처리하거나 저장하는 데 사용됩니다.
PUT : 기존 리소스를 완전히 대체하거나 업데이트하려는 경우 사용합니다. 이 메소드는 리소스의 전체 내용을 제공해야 합니다.
DELETE : 서버에서 리소스를 삭제하려는 경우 사용합니다.
PATCH : 리소스의 일부를 수정하려는 경우 사용합니다. 이 메소드는 변경하려는 데이터만 제공하면 됩니다.
HEAD : GET과 유사하지만, 실제 리소스를 반환하지 않고 메타데이터만 반환합니다. 이를 통해 클라이언트는 리소스의 존재 여부와 헤더 정보를 확인할 수 있습니다.
OPTIONS : 리소스와 관련된 통신 옵션을 설명하는 정보를 반환합니다. 이 메소드는 서버에서 사용 가능한 메소드를 확인하는 데 사용됩니다.
CONNECT: 네트워크 리소스에 대한 네트워크 연결을 설정합니다. 주로 프록시 서버에서 사용됩니다.
TRACE: 서버에서 수신한 요청 메시지를 반환합니다. 이는 클라이언트와 서버 간의 메시지 루프백 테스트에 사용됩니다.
정규화, 반정규화
세션과 쿠키는 무엇인가?
웹 애플리케이션에서 사용자 인증, 정보 저장 및 상태 관리를 위한 기술
웹은 기본적으로 상태가 없는 구조이기 때문에, 세션과 쿠키를 사용하여 웹 사이트가 사용자와의 상호작용을 추적하고, 사용자 정보를 저장하며, 사용자 경험을 개선할 수 있음
웹 서버와 웹 어플리케이션 서버 차이?
웹 서버와 웹 애플리케이션 서버는 웹 애플리케이션의 구성 요소를 호스팅하고 처리하는데 사용되지만, 기능과 목적에서 차이가 있음
동적으로 생성하는 것트랜잭션을 언제 사용하는지?
트랜잭션은 데이터베이스에서 일련의 연산을 수행하는 논리적인 작업 단위
트랜잭션은 데이터의 무결성을 보장하고, 여러 사용자가 동시에 데이터베이스에 액세스 할 때, 일관성을 유지하는데 중요한 역할을 함
원자성, 일관성, 고립성, 지속성을 만족해야함
여러개의 데이터베이스 연산이 한 단위로 묶여야 할 때데이터의 무결성을 유지해야 할 때: 동시성 제어가 필요한 경우: 좋은 코드란?
다양한 측면에서 효율적이고 이해하기 쉬우며, 유지보수가 용이한 코드를 의미
가독성
효율성
확장성
테스트 가능성
문서화
일관성
유지보수성
안정성
api의 명칭을 어떻게 작성하는 것이 좋은가?
/api/vi/users와 같이 작성할 수 있음스택과 큐는 무엇이고 언제 사용하는가?
데이터를 저장, 접근, 조작하는 데 사용되며, 특정한 방식으로 데이터를 추가하거나 제거함