2.2.1 레이어드 아키텍처

jaehyeok1230·2022년 11월 26일
0

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

https://velog.velcdn.com/images/junrain2/post/d8d6b8cb-7686-4ae1-8df6-069f876aba34/image.png레이어드 아키텍처 패턴은 애플리케이션을 구성하는 요소들을 수평으로 나눠 관리하는 것이다. 레이어로 나눈다는 것은 메서드를 클래스 또는 인터페이스로 쪼개는 것이다. 이 레이어는 그냥 클래스를 여러 레이어로 나누는 것부터 아주 다른 애플리케이션으로 레이어를 분리하는 경우까지 그 범위가 다양하다.

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

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

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

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

0개의 댓글