공부하기/아키텍처
-
[ Hexagonal Architecture ] 헥사고날 아키텍처 이해하기공부하기/아키텍처 2023. 2. 16. 19:35
헥사고날(Hexagonal) 아키텍처는 소프트웨어 디자인 패턴 중 하나로, 소프트웨어 시스템을 구성하는 다양한 컴포넌트들을 격리시키는 것을 목적으로 합니다. 이 아키텍처는 포트와 어댑터(Port and Adapter) 아키텍처로도 알려져 있습니다. 헥사고날 아키텍처의 핵심 개념은 "포트(Port)"와 "어댑터(Adapter)"입니다. 포트: 시스템 외부와의 인터페이스를 정의 어댑터: 포트를 구현 포트는 시스템의 기능을 외부에 노출하고, 어댑터는 그 기능을 구현합니다. 헥사고날 아키텍처는 이러한 포트와 어댑터를 중심으로, 비즈니스 로직과 외부 시스템을 분리합니다. 이로 인해 시스템은 더욱 모듈화되고, 유연성과 유지보수성이 높아집니다. 또한, 외부 시스템의 변경에 대한 영향을 최소화할 수 있습니다. 아키텍처..
-
[ Layered Architecture ] 레이어드 아키텍처 이해하기공부하기/아키텍처 2023. 2. 16. 17:55
레이어드 아키텍처는 소프트웨어 아키텍처의 일종으로, 각 계층(layer)을 엄격하게 분리하여 구성하는 아키텍처 스타일입니다. 이 아키텍처에서 *각 계층은 서로 직접적인 의존성을 가지지 않으며, *높은 결합도와 낮은 응집도를 갖는 것을 지양합니다. 일반적으로 레이어드 아키텍처는 다음과 같은 세 가지 계층으로 구성됩니다. 프레젠테이션 계층(Presentation Layer): 사용자 인터페이스를 담당하는 계층으로, 사용자의 요청을 받아 처리하고 응답을 반환합니다. 주로 웹 어플리케이션에서 브라우저나 모바일 앱과 같은 클라이언트와 상호작용하는 부분입니다. 애플리케이션 계층(Application Layer): 비즈니스 로직을 처리하는 계층으로, 사용자 요청을 받아 해당 요청에 대한 작업을 수행하고 데이터를 처리..