3 tier && MVC

B·2023년 8월 23일

하루CS

목록 보기
1/6

참고 링크1 && 참고 링크2

그전에 2 tier

  • 클라이언트 <-> 서버
  • 클라이언트가 직접 서버의 DB에 접속해서 자원 활용
  • 편리하지만 보안 취약 및 유지보수 어려움
  • 과거 2 tier 구조를 많이 활용 == 클라이언트 쪽에서 전부 다 처리하고 통신했다는 의미

3 tier 과의 차이점을 알아보자

  • 큰 차이점은 클라이언트 <-> 서버/애플리케이션 <-> DB
  • 웹 어플리케이션의 비즈니스 로직을 거쳐 DB에 접근이 가능하다
  • 직접! 데이터를 관리하지 않고 DB서버를 두고 관리한다

  1. Presentation Tier (화면 계층) : 보여지는 계층
    Spring MVC 객체를 말한다 (프론트 컨트롤러(DispatcherServlet), 컨트롤러, 뷰, 모델이 포함)

  2. Business Tier (비즈니스 계층) : 서비스 영역의 계층
    Service가 Controller에 의해 호출이 되고, 요구사항에 맞게 DB CRUD를 처리 후, 다시 Controller로 반환

  3. Persistence Tier (영속 계층 / 데이터 계층) : 데이터의 보관 혹은 사용에 관한 계층
    Mapper(데이터 CRUD 연산 수행) + DAO(결과를 객체로 리턴 / 혹은 Repository)이 속함

3 tier의 장점은?
: 독립적으로 설계되기 때문에, 특정 부분이 변하면 그 부분만 변경이 가능하다! == 즉 유지보수가 용이

3 tier + MVC

앞서 말했던 것 처럼 presentation tier의 경우, Spring MVC를 말한다. 즉, 둘이 다른 개념이다.

3 tier 은 아키텍처이다. MVC는 디자인패턴.

아키텍처 : SW시스템의 전체적인 방향, 비용, 시간을 고려한 근간이 되는 구조, 구조를 만드는 방법, 구조의 문서화를 한 것.
디자인패턴 : 그러한 구조 속에서 개발을 할 때, 일반적으로 발생했던 문제에 대한 효율적 솔루션을 SW 특성에 따라 패턴화 한 것.

profile
아직 찾는 중

0개의 댓글