🎁[속보] 인프런 내 깜짝 선물 출현 중🎁

[인프런 워밍업 클럽 3기] Spring Boot with Kotlin 발자국 1주차

[인프런 워밍업 클럽 3기] Spring Boot with Kotlin 발자국 1주차

처음 들을 땐 백 엔드 지식이 없어서 인지 이해하지 못 했던 이론 부분을 다시 들으며 글을 작성하기로 했다.

 

클라이언트 / 서버

: 요청을 하는 측 / 요청을 받는 측

 

데이터베이스

: 일종의 서버지만 특수하기 때문에 따로 부른다. DBMS를 칭하기도 함

 

DNS 서버(통신사들)

: 도메인 주소에 매핑 된 IP 주소를 들고 있음 -> 이때 받은 IP 주소로 요청을 하는 것

 

프레임워크 VS 라이브러리

: 프레임워크는 키트에 가깝다 => 키트 제작자가 정해둔 큰 틀이 있고, 사용자는 주어진 것들을 활용

- 의자 키트라면 의자를 꾸밀 순 있지만, 책상을 만들 수는 없다

: 라이브러리는 도구 상자에 가깝다 => 사용자가 주도권을 가지고 사용

 

 

Spring은 Web 프레임워크 이다.

 

MVC(Model-View-Controller)

  • View : 사용자에게 보여지는 화면

  • Controller : 사용자의 요청을 받아 작업을 수행하는 부분

  • Model : 데이터를 담아 View에 주고, Controller로부터 받는다.

 

레이어드 아키텍쳐(Controller-Service-Repository)

: 처리의 과정을 구조화

  • Controller(Presentation) : 요청을 받을 수 있는 인터페이스 정의, 검증 및 메소드(Service) 호출

  • Service(Business) : 데이터 처리, Repository의 DB 처리 메소드를 호출하여 저장, 수정, 조회, 삭제

  • Repository(Data Access) : DB에 접근하여 작업 요청, DB 처리 방법 제공 / 여러 서비스가 공통 사용

 

스프링 Bean

: 스프링이 관리하는 인스턴스를 의미.

@Controller, @Service, @Repository (클래스) 등 직접 인스턴스 생성과 관리를 하지 않고, Spring이 주체가 되어 관리한다.

의존성 주입: 외부로부터 한 객체가 사용하는 다른 객체를 객체 내부가 아닌 외부에서 주입 받는 것을 의미하고, 의존성을 주입하는 방법은 생성자(권장), 수정자, 필드 방식으로 3가지가 있다. (@Autowired)

 

 

Http 와 REST API

 

HTTP 요청 : Start Line, Header, Body

  • GET : Read 작업 요청

  • POST : Create

  • PUT : Update

  • PATCH : Update

  • DELETE : Delete

 HTTP 상태 코드 : 200, 300, 400, 500

 

REST API : HTTP 통신으로 동작하는 어플리케이션 기능을 정의하는 규칙

  • URL, HTTP 메서드(CRUD), HATEOAS

  • 한계 : 모든 기능을 준수하며 개발하기 어렵다.

 

JPA

: 자바 ORM 기술의 표준 인터페이스

 

ORM

: 인스턴스와 DB를 매핑해주는 기술

  • DBMS에 대한 의존성 저하, 학습 필요

 

IntelliJ로 Git에 Commit&Push 하는 방법

 

https://start.spring.io/

http://localhost:8080/

https://www.toptal.com/developers/gitignore/

 

 

일주일 간 학습하면서 새삼 백엔드를 거의 처음 한다는 것을 알게 되어, 이렇게나 모르는게 많았다는 생각이 들었습니다.

매일매일에 대한 커리큘럼이 짜여져 있는데, 이를 지키지 못하고 어느날은 더 많이, 어느 날은 더 적게 들은게 아쉬웠습니다. 잘 모르겠는 점도 많아서 다음 강의가 먼저 듣고 싶어지는 날도 있었던 건 뿌듯했습니다. 다음주에는 더 적게 들은 날이 있더라도 매일매일 조금은 강의를 들었으면 좋겠다고 생각합니다.

 

 

+) 03.11 미션에 관한 내용 추가

첫 미션은 강의에서 진행했던 내용대로 진행하며 기본 설정을 완료했다.

 

두 번째 미션은 관계도에 대해 배울때마다 까먹는데, 이번에는 까먹지 않고 기억해두려고 한다...

학생의 수강과목에 전체 과목과의 관계를 붙여보려고 했는데 수강과목과 전체 과목의 관계가 아직 헷갈려서 보류하고, 대신 학생이 속한 과에 대한 테이블을 추가했다.

댓글을 작성해보세요.


채널톡 아이콘