나름대로 Clean Architecture 이해
2937 단어 깨끗한 아키텍처CleanArchitecture아키텍처
개요
Clean Architecture에 관해서 나름대로 가능한 한 간결하게 정리해 보았습니다.
Clean Architecture에서 달성하는 것
관심의 분리
관심을 분리하여 달성 할 수있는 일
관심을 분리함으로써 다음을 달성 할 수 있습니다.
(1) 프레임 워크 독립적
아키텍처는 기능이 가득한 소프트웨어 라이브러리에 의존하지 않습니다. 이렇게하면 시스템을 프레임 워크의 제약으로 묶지 않고 프레임 워크를 도구로 사용할 수 있습니다.
(2) 테스트 가능
비즈니스 규칙(소프트웨어의 핵심)은 UI, 데이터베이스, 웹 서버, 기타 외부 요소 없이도 테스트할 수 있다.
(3) UI 독립적
UI는 시스템의 다른 부분을 변경하지 않고 쉽게 변경할 수 있다. 예를 들어, 비즈니스
스룰을 변경하지 않고 웹 UI를 콘솔 UI로 바꿀 수 있습니다.
(4) 데이터베이스 독립적
Oracle과 SQL Server를 Mongo, BigTable, CouchDB 등으로 대체할 수 있다. 비즈니스 규칙은 데이터베이스에 묶여 있지 않습니다.
(5) 외부 에이전트 독립적
비즈니스 규칙은 외부 세계의 인터페이스에 대해 아무것도 모른다.
Clean Architecture 개요
종속성은 내측 단방향으로만 이루어지며 외부 규칙을 안쪽으로 가져 가면 안됩니다.
즉, 내부 레이어는 외부 레이어의 구현을 알지 못하고 영향을받지 않아야합니다.
그림을 각 레이어별로 이해
엔터프라이즈 비즈니스 규칙(Entities)
관심의 분리
관심을 분리하여 달성 할 수있는 일
관심을 분리함으로써 다음을 달성 할 수 있습니다.
(1) 프레임 워크 독립적
아키텍처는 기능이 가득한 소프트웨어 라이브러리에 의존하지 않습니다. 이렇게하면 시스템을 프레임 워크의 제약으로 묶지 않고 프레임 워크를 도구로 사용할 수 있습니다.
(2) 테스트 가능
비즈니스 규칙(소프트웨어의 핵심)은 UI, 데이터베이스, 웹 서버, 기타 외부 요소 없이도 테스트할 수 있다.
(3) UI 독립적
UI는 시스템의 다른 부분을 변경하지 않고 쉽게 변경할 수 있다. 예를 들어, 비즈니스
스룰을 변경하지 않고 웹 UI를 콘솔 UI로 바꿀 수 있습니다.
(4) 데이터베이스 독립적
Oracle과 SQL Server를 Mongo, BigTable, CouchDB 등으로 대체할 수 있다. 비즈니스 규칙은 데이터베이스에 묶여 있지 않습니다.
(5) 외부 에이전트 독립적
비즈니스 규칙은 외부 세계의 인터페이스에 대해 아무것도 모른다.
Clean Architecture 개요
종속성은 내측 단방향으로만 이루어지며 외부 규칙을 안쪽으로 가져 가면 안됩니다.
즉, 내부 레이어는 외부 레이어의 구현을 알지 못하고 영향을받지 않아야합니다.
그림을 각 레이어별로 이해
엔터프라이즈 비즈니스 규칙(Entities)
종속성은 내측 단방향으로만 이루어지며 외부 규칙을 안쪽으로 가져 가면 안됩니다.
즉, 내부 레이어는 외부 레이어의 구현을 알지 못하고 영향을받지 않아야합니다.
그림을 각 레이어별로 이해
엔터프라이즈 비즈니스 규칙(Entities)
애플리케이션 비즈니스 규칙(Use Cases)
인터페이스 어댑터(Controllers/Presenters/Gateways)
프레임워크 및 드라이버(UI/Web/Devices/DB/External Interfaces)
참고
Reference
이 문제에 관하여(나름대로 Clean Architecture 이해), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/k-penguin-sato/items/30aa1c103e276ca2eed7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)