2.2.1 레이어드 아키텍처

jaehyeok1230·2022년 11월 26일
0

코드 아키텍처를 구상할 때는 확장성(extensibility), 재사용성(reusability), 유지 보수 가능성(maintainabiliy), 가독성(readability)와 같은 요소들을 염두해야한다.

레이어드 아키텍처 패턴은 애플리케이션을 구성하는 요소들을 수평으로 나눠 관리하는 것이다. 레이어로 나눈다는 것은 메서드를 클래스 또는 인터페이스로 쪼개는 것이다. 이 레이어는 그냥 클래스를 여러 레이어로 나누는 것부터 아주 다른 애플리케이션으로 레이어를 분리하는 경우까지 그 범위가 다양하다.

  • 레이어 사이에 계층이 있다는 특징이 있다. 그래서 레이어는 자기보다 한 단계 하위의 레이어만 사용한다.(단방향 의존성)

  • 각 레이어의 역할이 명확하다. Persistation layer에는 비즈니스 로직이 전혀 구현되지 않았다.

레이어드 아키텍처의 구조로 코드를 구현하면 각 레이어가 독립적이고 역할이 분명하므로 코드의 확장성이 높아진다. 코드의 구조를 파악하기 쉬울 뿐만 아니라 재사용 가능성도 높아진다.

참고 사이트https://velog.io/@gmtmoney2357

0개의 댓글