SSR(Server Side Rendering) - 페이지 구성을 Server에서 함. ex) flask rendering,jsp,php…
CSR(Client Side Rendering) - 페이지 구성을 Client에서 함. ex) ajax,fetch , 치명적 단점은 코드가 모두 노출된다..
SSG(Static Site Generator) - 빌드 타임에 모든 URL HTML을 캐싱해놓음.
SPA(Single Page Application)
CSR에 속함(초기 페이지 로딩 속도 느림, 완전 1:1이라고 할 수 없음.) - spa를 하려면 csr을 해야한다
페이지를 한 개로 서비스함.
유저에 요청에 따라 페이지 내부를 바꿔줌.
직접 구현하려면 엄청난 Hide와 동적 로딩 필요(여러분이 했던 ajax해서 html 다 지우고 다시 붙이는 일 같은 것들…이 힘들어서 나온게 아래 프레임워크들)
React,Vue,Angular,Svelte 등등 프레임워크가 꾸준히 발전 중
검색 엔진 최적화 SEO(Search Engine Optimization)가 안됨 → Next.js/Nuxt.js/Gatsy.js (CSR,SSG,SSR) 등 많은 방안이 나옴 (구글은 크롤링을 통해 검색하는데 동적페이지는 크롤링이 안되기 떄문 -> 구글에서 동적페이지도 검색할 수 있는 검색엔진을 개발중)
Client 성능이 좋아져서 나온것
MPA(Multi Page Application)
SSR에 속함(완전 1:1 이라고 할 수 없음. MPA도 CSR로 할 수 있음 → Hybrid 했던것처럼)