[Layered Pattern]

XCC629·2022년 3월 23일
0

backend

목록 보기
6/8
post-custom-banner

좀 더 좋은 코드를 만들기 위해 개발된 개념

좋은 코드는 무엇인가?

유지보수가 용이한 것, 가독성이 좋은것, 남이 쉽게 이해할 수 코드.

그것이 왜 좋은 코드일까?

인건비 대비 효율성. 개발자의 시간을 아껴야 효율성이 높아진다.
코드를 이해하고, 유지보수하는데 시간을 아끼자.
수많은 패턴과 라이브러리 탄생.

패턴

1️⃣ 관심사의 분리

모든 기능을 서버 파일 하나에서만 하면?
문제 발생시 다 터짐...
프로세스를 분리하면 발생하는 문제를 빠르게 해결할 수 있음

레이어

클라이언트에 가까운 곳부터 데이터베이스까지 layer를 나눈다.
l각 구성 요소의 역할이 명확
각 레이어의 코드가 서로 독립적이고, 서로에게 끼치는 영향 최소화.
높은 가독성, 높은 재사용 가능성

모듈화 한다, 컴포넌트화 한다, 분리한다, 관심사의 분리를 한다.

레이어

client <=> presentation <-> business <-> persistence <=> database

🙋‍♀️ presentation 레이어

컨트롤러
요청/응답 처리

👩‍💻 businesss 레이어

서비스
로그인, 회원가입 등 서비스와 직접적으로 연결된 내용

💻 persistence 레이어

모델
sql처리

단방향성
자기 직전 레이어만 생각한다.
presentation 레이어가 persistence 레이어와 통신할 일 없다는 의미.

SoC
서로 독립적이다. 서로 관심이 없다.

profile
프론트엔드 개발자
post-custom-banner

0개의 댓글