개발/아키텍처

Service - 비즈니스 로직에 대한 책임을 가진다 서비스는 일반적으로 비즈니스 로직을 포함하는 레이어입니다. 데이터베이스에서 데이터를 가져오거나 변형하거나 다른 서비스를 호출하거나 다양한 애플리케이션의 비즈니스 로직을 구현하는 역할을 합니다. 즉, 서비스 레이어는 비즈니스 로직을 캡슐화하여 레포지토리와 컨트롤러 사이에 위치합니다. 이 레이어는 비즈니스 규칙과 워크플로를 수행하고, 데이터를 가져와 가공하는 일을 담당합니다. 예제 앞서 Repository에서 정의한 UserRepository를 사용하여 User에 대한 비즈니스 로직을 처리하는 UserService를 만들어봅시다. @Service public class UserService { private final UserRepository userR..
Repository - 데이터 접근에 대한 책임을 갖는다 레포지토리는 데이터에 접근하는 방법을 캡슐화하는데 사용되는 설계 패턴입니다. 레포지토리 패턴은 일관된 방식으로 데이터에 접근하도록 해주며, 도메인 로직에서 데이터 저장소의 세부 정보를 분리하여 응용 프로그램의 테스트 및 유지 관리를 용이하게 해줍니다. 예제 예를 들어, 사용자 데이터를 저장하는 경우를 생각해보겠습니다. 우리는 User라는 엔티티를 가지고 있고, 이를 데이터베이스에 저장하려고 합니다. 이를 위해 UserRepository 인터페이스를 정의하고 필요한 메소드를 선언할 수 있습니다. @Repository public interface UserRepository extends JpaRepository { User findByUsername..
· DEV/Backend
TypeORM의 Entity 참조는 어떻게 일어나는가? 🐥 카카오테크캠퍼스 - 2단계 1주차 기본 Entity 설계를 하는데, 평소에 TypeORM의 Entity 참조는 어떻게 일어나나 궁금해졌다. Entity 설계를 하니 FK 설정에 대해서 자연스럽게 고민하는데, 자동으로 Entity를 참조하고, 필요한 필드만 가져와 뿌리던 그 편리함은 어디서 왔지? 싶었다 Code 분석 위의 코드는 캡스톤 할 때 만든, User 테이블이다. 조금 손봐서, UserMeta 테이블을 Entity로 참조하도록 변경했다 TypeORM의 코드를 까보자 그렇다면, 예시로 0neToOne 어노테이션을 확인했다 export declare function OneToOne( typeFunctionOrTarget: string | ((..
· DEV/Backend
DTO(Data Transfer Object) - 소프트웨어 시스템에서 데이터를 전송하거나 교환하는데 사용되는 객체 - 비즈니스 계층과 프레젠테이션 계층 사이에서 데이터 전달을 위해 사용 DTO는 "Data Transfer Object"의 약어로, 데이터 전송 객체를 의미합니다. DTO는 소프트웨어 시스템에서 데이터를 전송하거나 교환하는 데 사용되는 객체입니다. 또한, DTO를 사용하지 않아 깊은 곳에 있는 엔티티가 프레젠테이션까지 나가버리면, 엔티티의 내용이 변경 되는 위험도 수반합니다 DTO는 주로 다음과 같은 상황에서 사용됩니다: 서로 다른 서비스나 애플리케이션 간에 데이터를 전송할 때 데이터베이스와 애플리케이션 사이에 데이터를 전송할 때 프레젠테이션 레이어와 비즈니스 레이어 간에 데이터를 전송할 ..
berom
'개발/아키텍처' 태그의 글 목록