프론트엔드에서 비즈니스 로직과 뷰 로직 분리하기 (feat. MVI 아키텍쳐)
프론트엔드 아키텍쳐의 변화
프론트엔드 아키텍쳐의 변천사 8줄 요약
- HTML, CSS, JS의 탄생 → 관심의 분리와 느슨한 결합
- JQuery 의 시대 → 일단 DOM 을 쉽게 접근해 사용하자
- HTML + JS 를 합치는게 더 낫던데? → MVC 컴포넌트 방식의 탄생
- 선언적으로 만들자. → 데이터 바인딩 + 템플릿 → MVVM 웹 프레임워크 춘추전국시대
- 컴포넌트간 데이터 교환이 너무 복잡해요 → Container - Presenter 방식
- Props Drill 문제 어떻게 할거임? (너무 깊은 Component) → FLUX와 Redux
- 너무 복잡한데? → hooks 와 context, Recoil, Zustand, jotai
- 어차피 대부분 서버 API 를 관리하려고 쓰는거 아님? → React Query, SWR, Redux Query
1. HTML, CSS, JS의 탄생 - 관심의 분리와 느슨한 결합
HTML 과 JS, 그리고 CSS 가 순서대로 탄생했고, 각자의 방식대로 성장하게 되었다.