본문 바로가기

IT || 개발공부41

[Spring] DDD설계와 SQL 중심 설계 🔶DDD설계와 SQL 중심 설계 🔷DDD (Domain Driven Design) 🔹domain 과 DDD의 개념 DDD는 직역하면 '도메인 기반 디자인'인데, 여기서 domain은 어떠한 세부 분류(범주)의 상위분류(대분류)가 되는 것이다. 쉽게말해, 세부 카테고리를 묶어 한단어로 표현한 집합이라고 볼 수 있다. 즉, 유사한 카테고리의 집합이라고 할 수 있다. ex) '학교'(Domain) ◀️ 학생, 교사, 책상, 의자, 교과서,...(세부범주) 따라서, DDD는 '비즈니스 domain 별로 나누어 설계 하는 방식'을 의미한다. 🔹특징과 장점 1. 데이터 중심이 아닌 도메인이 모델과 로직에 집중 DDD에서는 도메인 모델링을 통해 도메인의 핵심 개념과 규칙을 표현한다. 도메인 모델은 도메인의 핵심 개념.. 2023. 11. 9.
[Spring] Entity, DTO, VO 알아보기 🔶 Entity, DTO, VO 알아보기 🔹Entity Entity(엔터티)는 객체지향 프로그래밍과 데이터베이스 모델링 부문에서 비슷한 의미로 쓰인다. 나는 객체지향 프로그래밍을 공부중이므로, 객체지향 관점에서 Entity를 살펴보겠다. 객체지향 프로그래밍에서 "Entity(엔터티)"란 시스템 내에서 독립적으로 존재하며 식별 가능한 객체를 나타낸다. 엔터티는 현실 세계의 개념이나 사물을 프로그램 안에서 모델링한 것이다. 엔터티는 클래스(class)로 표현되며, 클래스는 해당 엔터티의 속성과 메서드를 정의한다. 엔터티 클래스는 객체(object)의 틀이 되며, 이를 기반으로 실제로 사용되는 객체를 생성하여 프로그램에서 활용할 수 있다. 즉, 실제 DB 테이블과 매핑되는 핵심 클래스로, 데이터베이스의 테이블.. 2023. 11. 7.
[Spring] HTTP method에 대하여 🔶 HTTP method의 개념, 종류 알아보기 🔹HTTP method란?=> 클라이언트와 서버 간에 이루어지는 요청(Request)과 응답(Response)을 전송하는 방법. HTTP method에 대해 알아보기 전, 좀 더 심화하여 웹브라우저에서 서버에게 리소스 요청하는 방법부터 알아보겠다.   🔹 웹브라우저에서 서버에게 자원(Resouce)를 요청하는 방법       (Resource : URL을 검색해서 받아온 결과물이며, TEXT, HTML, JSON, XML, Image, 음성, 영상, 파일, 서버로부터 전달받은 데이터 등...이 그 예이다)ex) 구글에 '배민'을 검색했을 때..1. 웹브라우저는 구글 서버 주소를 찾아 HTTP 요청메세지를 패킷안에 담아 구글서버에 전달한다.2. 구글서버.. 2023. 11. 6.
[Spring] 스프링 빈 등록 후 의존성 주입해보기 🔶스프링 빈 등록 후 의존성 주입해보기 (Service, Repository 추가구현하기) Spring에서는 객체생성 및 관리를 개발자가 일일이 하지 않고, Spring에게 위임하게 되는데, 이를 'IoC(Inversion of Control: 제어의 역전)'라고 한다. 그리고 스프링은 IoC컨테이너(≒스프링컨테이너)에 객체를 담는다. 🔹 DI에 대한 개념은 조금 더 정리가 필요하여, 우선 구글링하여 최대한 내가 이해한 내용으로 정리해보겠다.. DI(Dependency Injection : 의존성주입) 는 한 객체가 다른 객체를 사용할 수 있도록 의존성을 주입해주는 것으로, 두 객체 간의 관계(의존성)을 맺어주는 것으로서, 주로 생성자 주입 방법이 대표적이다. DI를 사용하는 이유는 예를들어, A클래스 .. 2023. 11. 6.