📌SOLID:

 

S : 단일 책임 원칙 : 한 클래스는 하나의 책임만 가져야한다.

O : 개방 폐쇄 원칙 : 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다.

L :  리스코프 치환 원칙 : 프로그램의 객체 는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로

                                        바꿀 수 있어야 한다
I : 인터페이스 분리 원칙 : 특정 클라이언트를 위한 인터페이스 여러 개가 범용 인터페이스 하나보다 낫다

D : 의존관계 역전 원칙 : 프로그래머는 “추상화에 의존해야지, 구체화에 의존하면 안된다


📌model1 과 model2의 차이


model1 : 

하나의 서블릿이 모든걸(요청,응답) 처리

JSP 파일 내에서 뷰와 컨트롤러가 모두 실행되어지는 구조를 지닙니다.

즉, JSP 페이지에  로직을 처리하기 위한 코드와 출력을 담당하는 코드가 함께 존재합니다.

이는 웹브라우저의 요청과 요청에 대한 작업을 처리함과 동시에 클라이언트에게 결과를 출력하게 됩니다.

 

- 장점

  • 단순한 구조로 인해 개발 기간이 짧습니다.
  • 난이도가 낮습니다

 

단점

  • 복잡도가 높아질수록 기능이 섞인 코드때문에 유지보수가 어렵습니다.
  • 디자이너와 개발자 간 의사소통이 필요합니다.


model2 : 

웹 개발에 MVC 패턴을 적용해 model1에 비해 더욱 편리하게 유지보수할 수 있도록 하였습니다.

 

위에서 설명한 MVC 패턴의 작동구조와 같이

웹 브라우저의 요청을 컨트롤러가 받고,  모델에서 요청에 대한 결과를 도출합니다.

 

이후 다시 컨트롤러가 사용자에게 보여줄 알맞은 뷰를 선택하고 데이터를 전달하면

마지막으로 뷰는 사용자에게 화면을 출력해주게 됩니다.

 

대부분 Model은 JavaBean / View는 JSP / Controller는 Servlet에서 담당하게 됩니다.

 

- 장점

  • 컨트롤러와 뷰의 분리로 인해 유지보수와 확장이 편리합니다.
  • 디자이너와 개발자의 작업이 분리되어 분업에 용이합니다.

 

- 단점

  • 개발 초기 단계에 구조 설계에 비교적 많은 작업량과 시간이 필요합니다.
  • 자바와 구조에 대한 깊은 이해도가 필요하기 때문에 높은 수준을 요합니다.

'웹기반 애플리케이션' 카테고리의 다른 글

JSP(Java Server Page)란?  (0) 2023.03.02
자원의 종류와 식별 방법, URI(URL,URC,URN)  (0) 2023.02.27
서블릿(Servlet)이란?  (0) 2023.02.27
Client/Server 와 서블릿(Servlet)  (0) 2023.02.21
톰캣이란?  (0) 2023.02.21

+ Recent posts