[24.05.17] 내일배움캠프 23일차 JAVA TIL - 3 LayerArchitecture

2024. 5. 20. 12:03T.I.L

오늘 한 일

  • 2주차 강의 
  • 개인과제 리뷰

 

 


원래는 모든 강의를 완강하고 과제에 들어가 있어야 구현 요건에 부합한 프로젝트가 나올 수 있다.

그러나 2주차 까지 완강하지 못해서 2주차를 들으며 무수한 수정사항을 찾아냈다..

일단 프로젝트 자체를 JDBC로 구현하여 JPA로 변경하는 작업이 필요할거 같다.

JPA로 프로젝트를 새로 작성하고, JDBC로 구현한 프로젝트와 비교하는 과정를 거칠 예정이다.

 


 

3 Layer Architecture

- 1주차 프로젝트에서는 controller 클래스 하나로 모든 API를 처리했다.

프로젝트의 크기가 커질수록, 클래스를 세밀하게 나눠야 합니다.

Why ? 

- 유지보수성 향상 : 코드의 재사용성을 높입니다.

- 유연성 및 확장성 : 프레젠테이션 계층과 독립성, 확장 용이성으로 일부를 위해 전체를 수정하지 않아도 됩니다.

- 테스트 용이성 : 단위 테스트 / 통합 테스트  각 계층이 독립적으로 동작하므로 테스트 케이스를 작성하고 실행하는게 용이합니다.

- 보안 향상 : 데이터 접근 제어 / 클라이언트 코드 보호를 통해 보안성이 높아집니다.

- 기술 독립성 : 기술 스택의 독립성 - 각 계츠잉 독립적으로 기술을 선택할 수 있습니다