개발형 코딩 테스트

HeeSeong·2021년 3월 17일
0

파이썬 코딩테스트

목록 보기
10/12
post-thumbnail
post-custom-banner

Ⅰ. 개발형 코딩 테스트


  • 정해진 목적에 따라서 동작하는 완성된 프로그램을 개발하는 것을 요구하는 유형입니다.

  • 완성도 높은 하나의 프로그램을 개발하며 모듈을 적절히 조합하는 능력을 요구합니다.

  • 해커톤은 단기간에 아이디어를 제품화하는 프로젝트 이벤트입니다.


① 서버와 클라이언트


  • 클라이언트가 요청을 보내면 서버가 응답합니다.

  • 웹 클라이언트 : PC, 노트북, 스마트폰,   웹서버 : 워크스테이션 등


클라이언트 (Client) = 고객


  • 서버로 요청을 보내고 응답이 도착할 때까지 기다립니다.

  • 서버로부터 응답을 받은 뒤에는 서버의 응답을 화면에 출력합니다.


서버 (Server) = 서비스 제공자


  • 클라이언트로부터 받은 요청을 처리해 응답을 전송합니다.

  • 웹 서버 : 로그인 요청을 받아 아이디와 비밀번호가 정확한지 검사하고 그 결과를 응답합니다.


② HTTP


  • HTTP는 웹상에서 데이터를 주고받기 위한 프로토콜을 의미합니다.

  • 웹 문서를 주고받는 데 사용됩니다.

  • 모바일 앱 밑 게임 개발 등에서 특정 형식의 데이터를 주고받는 용도로도 사용됩니다.

  • 클라이언트는 요청의 목적에 따라서 적절한 HTTP 메서드를 이용해 통신을 진행합니다.

  • HTTP 메서드

    • GET : 조회
    • POST : 생성
    • PUT : 수정
    • DELETE : 삭제

import requests

target = "http://google.com"
response = requests.get(url=target)

print(response.text)
# <!doctype html><html itemscope=...

③ REST


  • HTTP는 GET, POST, PUT, DELETE 등의 다양한 HTTP 메서드를 지원합니다.

  • 실제로는 서버가 각 메서드의 기본 설명을 따르지 않아도 프로그램을 개발할 수 있습니다.

  • 하지만 저마다 다른 방식으로 개발하면 문제가 될 수 있어 기준이 되는 아키텍처가 필요합니다.


REST 개요


  • REST는 각 자원에 대하여 자원의 상태에 대한 정보를 주고받는 개발 방식을 의미합니다.

  • REST의 구성 요소

    • 자원(Resource) : URI를 이용
    • 행위(Verb) : HTTP 메서드를 이용
    • 표현(Representations) : 페이로드를 이용
URI : https://www.example.com/users

HTTP Method : POST

Payload : {"id" : "kwon123", "password" : "1234"}

REST API


  • API : 프로그램이 상호작용하기 위한 인터페이스

  • REST API : REST 아키텍쳐를 따르는 API

  • REST API 호출 : REST 방식을 따르고 있는 서버에 특정한 요청을 전송


④ JSON


  • 데이터를 주고받는 데 사용하는 경량의 데이터 형식

  • JSON 데이터는 키와 값의 쌍으로 이루어진 데이터 객체를 저장합니다.

{
    "id" : "kwon123"
    "password" : "1234"
}

JSON 객체 사용 예제


import json

user = {
    "id": "gildong"
    "password": "1234"
}

# 파이썬 변수를 JSON 객체로 변환
json_data = json.dumps(user, indent = 4)
print(json_data)

JSON 객체 파일 저장 예제


import json

user = {
    "id": "gildong"
    "password": "1234"
}

# JSON 데이터로 변환하여 파일로 저장하기
with open("user.json", "w", encoding="utf-8") as file:
    # (파일로 쓰고자하는 객체, 파일 객체)
    json_data = json.dump(user, file, indent=4)

REST API를 호출하여 회원 정보를 처리하는 예제


import requests

# REST API 경로에 접속하여 응답(Response) 데이터 받아오기
target = "https://jsonplaceholder.typicode.com/users"
response = requests.get(url=target)

# 응답(Response) 데이터가 JSON 형식이므로 바로 파이썬 객체로 변환
data = response.json()

# 모든 사용자 정보를 확인하여 이름 정보만 삽입
name_list = []
for user in data:
    name_list.append(user['name'])
    
print(name_list)
profile
끊임없이 성장하고 싶은 개발자
post-custom-banner

0개의 댓글