카테고리 없음

내일배움캠프 23일차 - 3 Layer Architecture 필요 그 이상!

본성 2024. 8. 14. 20:24
반응형

Spring 언어를 배우는 과정에서 새로운 외계어를 배웠다.

 

3 Layer Architecture..... 두둥 

 

어떻게 작동을 할까!

 

어떻게 이해하면 될까!

 

그저 잘하고 싶다....


 

 3 Layer Architecture

3 다이어!

 

1. 나한테 Spring언어와 JAVA언어 외계어 그 자체이다 ㅜㅜㅜ 죽상이다 ㅜㅜ

 

2. 그래도 just do it 해보자!

 

3. 오늘은 3 Layer Architecture 이다!

 

4. 3 Layer Architecture은 하나의 API가 적고 기능이 단순하여 코드가 복잡해 보이지 않을 수 있지만 앞으로 기능이 추가되고 복잡해진다면 문제가 발생할 수 있습니다.

 

5. 그러하여 3 Layer Architecture로 서버에서의 처리과정이 대부분 비슷하다는 걸 깨닫고, 처리 과정을 크게 Controller, Service, Repository 3개로 분리했습니다. 

 

6. 첫 번째 계층

Presentation Tier(Client) - 일반 사용자가 직접 액세스 할 수 있는 프레젠테이션 계층

콘텐츠를 HTML/JS/CSS 형식으로 브라우저에 전송하는 계층(React,..)

 

모든 HTTPS 지원 클라이언트 또는 장치와 통신할 수 있으므로 프레젠테이션 계층은 다양한 형식(데스크톱 애플리케이션, 모바일 앱, 웹페이지, IoT 장치 등)을 유연하게 수행 할 수 있다.

 

7.  두 번째 계층

Logic Tier(Application) - 비즈니스 로직이 실행되는 비즈니스 로직 계층을 뜻 한다.

예) 어플리케이션 서버를 사용하고 애플리케이션에 대한 비즈니스 논리를 처리하는 계층(C#, Java, C++, Python,..)

 

8.  세 번째 계층

Data Tier(Database) - 데이터 스토리지 계층을 뜻 한다.

응용 프로그램 데이터에 대한 액세스를 제공하는 데이터베이스 관리 시스템(MySQL, Postgres,..)

 

9. 이제는 여러 사람이 맡아서 할 수 있다!!!


이점

애플리케이션을 3개의 계층으로 분리할 경우 다음과 같은 5가지 이점이 있다.

  1. 애플리케이션의 다른 영역에 영향을 주지 않고 한 계층의 기술 스택을 업데이트할 수 있다.
  2. 서로 다른 개발 팀이 각자의 전문 분야에 대해 작업할 수 있다 (한 영역에서 심층적인 역량)
  3. 애플리케이션을 스케일업 및 스케일아웃 할 수 있다
    예) 별도의 백엔드 계층을 통해 다양한 데이터베이스에 구현할 수 있으며, 여러 웹 서버를 추가하여 확장할 수 있다
  4. 서비스나 서버의 신뢰성과 독립성을 높여준다.
  5. 프레젠테이션 코드와 비즈니스 로직을 별도로 관리하여 비즈니스 로직의 변경 등이 프레젠테이션 계층에 영향을 미치지 않는다.

 


https://jaws-coding.tistory.com/9

 

3계층 구조(3 Tier- Architecture) 이해하기 [스마트인재개발원]

3계층 구조(3 Tier- Architecture) 란? 어떠한 플랫폼을 3계층으로 나누어 별도의 논리적/물리적인 장치에 구축 및 운영하는 형태 웹 서버 운영을 예로 들면 서버 한대에 한꺼번에 모든 기능들을 구축

jaws-coding.tistory.com

https://sunrise-min.tistory.com/entry/3-Tier-Architecture-%EC%A0%95%EC%9D%98-%EB%B0%8F-%EA%B5%AC%EC%84%B1%EB%B0%A9%EC%8B%9D

 

 

3-Tier Architecture 정의 및 구성방식

목차 LIST 3-Tier Architecture of Web Application 이란? "3-tier 아키텍처는 다중 계층 아키텍처에서 가장 널리 사용되며 단일 프레젠테이션 계층, 로직 계층 및 데이터 계층으로 구성된다." 3-tier architecture는

sunrise-min.tistory.com

 


오늘의 느낀 점

 

1. just do it

 

2. 죽상이다.

 

3. 이게 맞나? 

 

 

 

나도 개발자가 되고 싶다...... 꼭 하고 싶다....... 어려운 길로..... 꾸준하게 해 보자!!

반응형