Computer Science

HTTP(Hypertext Transfer Protocol)는 웹 서버와 클라이언트 간의 통신을 위한 프로토콜이다. 서버가 클라이언트의 요청에 응답하는 과정에서 발생하는 여러 상황을 나타내기 위해 HTTP 상태 코드가 사용된다. 상태 코드는 RFC 9110에 정의되어 있다. 1xx: 정보 1xx 시리즈의 상태 코드는 요청이 수신되었으며 처리가 진행 중임을 나타낸다. 주로 클라이언트에 추가 정보를 제공하거나 요청을 계속 진행할 것인지 여부를 알려준다. 100 (Continue): 클라이언트가 요청을 계속할 수 있음을 나타낸다. 101 (Switching Protocols): 서버가 업그레이드 요청을 수락하고 프로토콜을 변경할 것임을 나타낸다. 2xx: 성공 2xx 시리즈의 상태 코드는 클라이언트의 요청이 ..
TL;DR GET http://api.example.com/v1/store/employees/{emp-id} POST http://api.example.com/v1/store/employees 동사 대신 리소스를 나타내는 명사 사용 항상 URI가 동사를 사용하는 대신 리소스를 지정하는 명사로 명명되었는지 확인해야 한다. URI는 어떤 CRUD(Create, Read, Update, Delete) 작업도 나타내지 않아야 한다. CRUD는 HTTP Method(GET, POST...)로 표현한다. 또한 동사-명사 조합 (하이픈, 스네이크 케이스, 카멜 케이스)을 피해야 한다. 나쁜 예: http://api.example.com/v1/store/CreateItems/{item-id}❌ http://api.ex..
의미 REpresentational State Transfer Application Programming Interface Representational: 표현형. 리소스가 JSON, XML처럼 특정 형식의 표현을 가지고 있다는 개념 State Transfer: 상태 전달 Stateless Protocol: REST가 상태를 관리하지 않고, 클라이언트와 서버 간의 통신이 상태를 전송하고 유지하지 않는다 이전 요청과 상태를 공유하지 않는다 서버는 클라이언트의 정보를 저장하지 않는다 그래서 클라이언트의 요청이 자체적인 상태 정보를 포함하고 있어야 한다. 서버에 필요한 모든 정보를 포함하여. 이는 시스템의 확장성과 견고성을 향싱시킨다. 서버의 부하를 분산하고, 클라이언트가 장애를 겪거나 재시작될 때 시스템의 ..
시스템 분석 설계란? 시스템 분석 설계는 조직 내에서 정보 시스템을 개발하고 개선하는 과정이다. 시스템 분석 시스템이 어떤 기능을 수행해야 하는지를 자세히 이해하고 명세로 나타내는 것 시스템 설계 정보 시스템이 어떻게 구현되어야 하는지를 자세히 나타내는 과정 팀 단위로 개발하는 조직과 프로세스를 연구하는 학문이다. 탄생 배경 개발된 소프트웨어가 의도한 것과 다른 동작을 하거나, 사용자의 요구사항과 달라서 프로젝트가 실패하는 일이 발생했기 때문이다. 이로 인한 손실(비용)을 줄이기 위해 소프트웨어 공학이 발전하게 되었다. 주요 단계 1. 요구 분석 (Requirements Analysis) 시스템 분석 및 설계의 시작은 요구 분석이다. 이 과정에서는 아래와 같은 활동이 진행된다. 요구사항 수집: 사용자와 ..