[인프런 워밍업 클럽 스터디] BE 스터디 1기 1주차 발자국
1주가 정말 빠르게 지나간 것 같다.
지금까지 공부했던 내용들을 정리하기가 너무나 좋았다.
1주차
DAY 2 - 서버 개발을 위한 환경 설정 및 네트워크 기초
DYA 3 - 첫 HTTP API 개발
DAY 4 - 기본적인 데이터베이스 사용법
DAY 5 - 데이터베이스를 사용해 만드는 API
DAY 6 - 클린코드의 개념과 첫 리팩토링
DAY 2 서버 개발을 위한 환경 설정 및 네트워크 기초
어노테이션
어노테이션에 대해 대강적으로 알고 있었는데 이를 조금 더 구체적으로 공부해서 이전보다 더 알게되는 계기가 되었다.
DAY 3 첫 HTTP API 개발
HTTP와 API
HTTP (Hypertext Transfer Protocol)
HTTP는 인터넷에서 데이터를 전송하기 위한 표준 프로토콜입니다. 주로 웹 브라우저와 웹 서버 간의 통신에 사용됩니다. HTTP는 클라이언트가 서버에 요청을 보내고, 서버가 클라이언트에 응답하는 방식으로 동작합니다. 주요 특징은 다음과 같습니다
Stateless (무상태성): 각각의 요청은 서로 독립적이며, 이전 요청과의 상태를 유지하지 않습니다.
Request-Response (요청-응답): 클라이언트가 서버에 요청을 보내고, 서버가 그에 대한 응답을 돌려줍니다.
Methods (메소드): 주요 메소드에는 GET(데이터를 요청), POST(데이터를 제출), PUT(데이터를 업데이트), DELETE(데이터를 삭제) 등이 있습니다.
상태 코드 (Status Codes): 서버가 클라이언트에게 보내는 세 자리 숫자로, 요청의 성공, 실패, 리다이렉션 등을 나타냅니다 (예: 200 OK, 404 Not Found).
API (Application Programming Interface)
API는 응용 프로그램 간에 데이터를 교환하기 위한 인터페이스입니다. 주로 소프트웨어 구성 요소 간에 상호 작용하기 위해 사용됩니다. 웹 API는 이러한 인터페이스를 웹 기술에서 활용한 것입니다. 주요 특징은 다음과 같습니다
정의와 문서화: API는 사용 가능한 엔드포인트와 그들이 수행하는 작업을 정의하고 문서화합니다.
요청과 응답: 클라이언트가 API에 요청을 보내고, 서버가 해당 요청에 대한 응답을 제공합니다.
RESTful API: Representational State Transfer의 약자로, HTTP를 통해 자원을 조작하는 데 사용되는 아키텍처 스타일입니다. 각 자원은 고유한 URI(Uniform Resource Identifier)를 가지며, HTTP 메소드(GET, POST, PUT, DELETE)를 통해 조작됩니다.
인증 및 권한: API는 종종 인증과 권한 부여를 통해 접근을 제어합니다.
API 개발
강의 영상을 보면서 API를 만드는 법을 복습하였고 설계를 구체적이면서 어떻게 하면 효율적으로 구현하는 지에 대해서도 배웠다.
또한 수정할 때 왜 PUT을 선호하는지에 대해서도 배웠습니다.
https://www.inflearn.com/questions/1175426/수정이라는-작업을-할-때-put을-더-사용하는-이유가-있을까요
과제 내용
두 수를 입력하면, 계산하는 API
날짜를 입력하면 요일을 출력하는 API
여러 수를 받아 총 합을 반환하는 POST API
DAY 4 - 기본적인 데이터베이스 사용법 & DAY 5 - 데이터베이스를 사용해 만드는 API
MySQL
이전에는 JPA를 통해서 구현하는 하는 법은 대충 알았지만 MySQL로 하는 법은 알지 못했습니다. 비유를 하자면 리액트는 할 줄 아는 데 자바스크립트는 잘 하지 못하는? 느낌이었는데 이번 기회에 JPA를 사용하지 않고 MySQL로 하는 법을 알게되어 JPA의 원리를 조금 더 아는 기회가 되었습니다.
예외 처리
예외 처리를 하지 않았을 때 어떤 문제가 발생하였고 그 문제를 어떤식으로 해결하는 지에 대해서 알 수 있었습니다.
DAY 6 - 클린코드의 개념과 첫 리팩토링
Controller / Service / Repository 3단 으로 왜 분리하고 분리했을 때와 하지 않았을 때와의 차이점을 느끼면서 좋은 설계왜 그 이유를 알 수 있었습니다.
댓글을 작성해보세요.