개발형 코딩 테스트
정해진 목적에 따라서 동작하는 완성된 프로그램 개발을 요구하는 코딩 테스트 유형
일부 기업은 해커톤을 통해 채용 진행
해커톤이란 단기간에 아이디어를 제품화하는 프로젝트 이벤트
대개 1-2일 진행, 대회 형식을 빌려 해커톤이 끝나면 만든 프로그램을 시연하고 발표한 다음 채점 진행
개발형 코딩 테스트는 분야에 따라 상세 요구사항이 다를 수 있음
하지만 분야에 상관없이 꼭 알아야 하는 개념과 도구에 대하여 학습할 필요가 있음
서버, 클라이언트,JSON, REST API…
서버와 클라이언트
클라이언트가 요청을 보내면 서버가 응답
클라이언트(Client) = 고객
서버로 요청(Request)을 보내고 응답(Response)이 도착할 때까지 기다립니다
서버로부터 응답을 받은 뒤에는 서버의 응답을 화면에 출력
ex1) 웹 브라우저: 서버로부터 받은 HTML, CSS 코드를 화면에 적절한 형태로 출력
ex2) 게임 앱: 서버로부터 받은 경험치, 친구 귓속말 정보 등을 화면에 적절한 형태로 출력
서버(Server) = 서비스 제공자
클라이언트로부터 받은 요청을 처리해 응답을 전송
ex) 웹 서버: 로그인 요청을 받아 아이디와 비밀번호가 정확한지 검사하고 그 결과를 응답
HTTP 개요
HTTP(HyperText Transfer Protocol)는 웹상에서 데이터를 주고받기 위한 프로토콜을 의미
보통은 웹 문서(HTML 파일)을 주고받는데 사용
모바일 앱 및 게임 개발 등에서 특정 형식의 데이터를 주고받는 용도로 사용
클라이언트는 요청의 목적에 따라서 적절한 HTTP 메서드를 이용해 통신 진행
대표적인 HTTP 메서드
HTTP 메서드 | 설명 | 사용 예시 |
GET | 특정 데이터의 조회 요청 | 특정 페이지 접속, 정보 검색 |
POST | 특정 데이터의 생성 요청 | 회원가입, 글 쓰기 |
PUT | 특정 데이터의 수정 요청 | 회원 정보 수정 |
DELETE | 특정 데이터의 삭제 요청 | 회원 정보 삭제 |
REST의 등장 배경
HTTP는 GET, POST, PUT, DELETE등의 다양한 HTTP 메서드 지원
실제로는 서버가 각 메서드의 기본 설명을 따르지 않아도 프로그램을 개발 가능
하지만 저마다 다른 방식으로 개발하면 문제가 될 수 있어서 기준이 되는 아키텍처 필요
REST(Representational State Transfer)는 각 자원에 대하여 자원의 상태에 대한 정보를 주고받는 개발 방식을 의미
REST의 구성요소
자원(Resource) : URI사용
행위(Verb) : HTTP 메서드 이용
표현(Representations): 페이로드를 이용
REST API란?
API(Applicaiton Programming Interface): 프로그램이 상호작용하기 위한 인터페이스를 의미
REST API: REST 아키텍처를 따르는 API의미
REST API 호출: REST 방식을 따르고 있는 서버에 특정한 요청을 전송하는 것을 의미
JSON
JSON(JavaScript Object Notation) : 데이터를 주고 받는데 사용하는 경량의 데이터 형식
JSON 데이터는 키와 값의 쌍으로 이루어진 데이터 객체를 저장
Uploaded by Notion2Tistory v1.1.0