CSR๊ณผ SSR์ ๊ฐ๋จํ๊ฒ ์ค๋ช ํ์๋ฉด ์น์ ๋ณด์ฌ์ง๋ ๋ฐฉ์์ ๋งํ๋ค.
๋ ๋ฐฉ์ ์ ๋ถ ์ฅ๋จ์ ์ด ์กด์ฌํ๊ณ ๊ฐ ๊ธฐ์ ๋ง๋ค ์ด๋ฅผ ํ์ฉํ์ฌ ์๋น์ค๋ฅผ ์ ๊ณตํ๊ณ ์๋ค.
์ด ๋์ ์์๋ณด๊ธฐ ์ ์ ์ง๊ธ๊น์ง ์น์ ์ญ์ฌ๋ฅผ ๊ฐ๋จํ๊ฒ ์ดํด๋ณด์.
- 1์ธ๋ ์น : ์ ๋ณด์ ๋ฌ, ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ์น์๋ฒ๋ก HTMLํ์ผ ๋ฐ์์ด - ์ ์ ์ธ ์น์ฌ์ดํธ (HTML,CSS)
- 2์ธ๋ ์น : JS๋ฑ์ฅ์ผ๋ก User Interaction ์ฆ๊ฐ(์ ๋ณด ์ฃผ๊ณ ๋ฐ์) - ๋์ ์ธ ์น์ฌ์ดํธ (JS,SSR)
- 3์ธ๋ ์น : SPA๋ฑ์ฅ์ผ๋ก Frontend, Backend ๊ตฌ๋ถ - ๋์ ์ธ ์น์ฌ์ดํธ (CSR,AJAX,์ค์๊ฐ ๋ฐ์ดํฐ ์ ์ก)
์น์ด ์๊ฐ์ด ์ง๋ ์ ์ฐจ ๋ฐ์ ํ๋ฉด์ SPA๊ฐ ํธ๋ ๋๊ฐ ๋๊ณ PC ์ฑ๋ฅ๋ค์ด ์ข์์ง๋ฉด์ ์น์์์ ๋ง์ ๊ฒ๋ค์ ์ฒ๋ฆฌํ ์ ์๊ฒ ๋์๋ค. ํ์คํ๋ก ์ ๋ฆฌ๊ฐ ๋ JS๋ก Angular, React, Vue.js์ ๊ฐ์ ํ๋ ์์ํฌ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ๋ํ๋๋ฉฐ CSR์ด ๋ ์ค๋ฅด๋ ์๋๊ฐ ์ค๊ฒ ๋๋ค. ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ SSR์ ์ฌ์ฉํ๋ ์ด์ ๋ ๋ฌด์์ธ์ง CSR์ ์ด๋ค ๋ฉด์ด ์ข๊ณ ๋ฌด์์ด ๋ถ์กฑํ์ง ์์๋ณด์.
CSR(Client-side Rendering)์ด๋ ๋ฌด์์ด๋ฉฐ, ๊ทธ๊ฒ์ ์ฅ๋จ์ ์ ๋ํ์ฌ ์ค๋ช ํด์ฃผ์ธ์.
โ CSR(Cliet-side Rendering)์ด๋?
- ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )์์ ์น ํ์ด์ง๋ฅผ ๊ตฌ์ฑ(๋ ๋๋ง)ํ์ฌ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์
- ๋ชจ๋ ๋ก์ง, ๋ฐ์ดํฐ, ํ ํ๋ฆฟ, ๋ผ์ฐํ ๋ฑ์ด ์๋ฒ๊ฐ ์๋ ํด๋ผ์ด์ธํธ์์ ์ฒ๋ฆฌ
- ์๋ฒ์ ์์ฒญ์ด ๋ค์ด์ค๋ฉด ํด๋ผ์ด์ธํธ์ HTML๊ณผ JS๋ฅผ ๋ณด๋ด ํด๋ผ์ด์ธํธ์์ ๋ ๋๋ง ์์
- ๋ ๋๋ง ์ดํ์๋ ํ์์ ๋ฐ๋ผ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์์ฒญ
โ ๋จ์
๐ฅ ์ด๊ธฐ ์์ฒญ ์ ๋ชจ๋ HTML๊ณผ ์ ์ (stactic) ํ์ผ๋ค์ด ๋ก๋๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ์๊ฐ ์กด์ฌ โก ๋ ๋๋ง ์๋๋ SSR์ด ๋ ๋น ๋ฆ
๐ฅSEO(Search Engine Optimization : ๊ฒ์์์ง ์ต์ ํ)์์ ๋ฌธ์ ๋ฐ์
SEO๋ HTML ๋ฌธ์๋ฅผ ๋ถ์ํ๊ณ ํ๋จํด ์ฌ์ฉ์๊ฐ ๊ฒ์ ์ ์น ์ฌ์ดํธ๋ฅผ ๋น ๋ฅด๊ฒ ์ฐพ์ ์ ์๋๋ก ํ๋ ๋ฐ๋ฉด์ CSR์ด ์ฌ์ฉ๋๋ HTML ๋ฌธ์๋ ๋๋ถ๋ถ ํ ํ ๋น์ด์ ธ ์์ด SEO๊ฐ ๋ถ์ํ๊ธฐ ์ด๋ ค์
๊ฐ๋จํ๊ฒ ๋งํด ๊ฒ์์์ง ์ต์ ํ์ ์ด๋ ค์์ด ์์ด ์์๋ก ๋ณด์ผ ํ๋ฅ ์ด ๋ฎ๋ค.
๊ตฌ๊ธ์ ํฌ๋กค๋ฌ ์์๋ ์๋ฐ์คํฌ๋ฆฝํธ ์์ง์ด ์์ด์ ๋ฌธ์ ๊ฐ ๋ ๊ฒ ์์ง๋ง(woW) ๋ค์ด๋ฒ๋ ๋ค์์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ํด์ํ ์ ์๋ ์์ง์ด ์์ด ๋น ํ์ด์ง๋ก ์ธ์ํจ ๐ต๐ต(๋ ์ฉ!)
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์์ธ์ด ๋น๊ต์ ์ค์ํ์ง ์์ ๋๋ ๊ด๋ฆฌ์ ํ์ด์ง(CMS) ๋๋ ์ฌ์ฉ์ ๊ฒฝํ(UX)์ด ์ค์ํ ๋ค์ด๋ฒ ์ง๋ ๋งต๊ณผ ๊ฐ์ ์น ์ฑ์์ ์ฌ์ฉํ๋ค.
โ ์ฅ์
๐์ด๊ธฐ ์์ฒญ ๋ ๋ชจ๋ ์ง์ ์คํฌ๋ฆฝํธ๊ฐ ๋ก๋๋์๊ธฐ์ ํ์ด์ง ์ด๋์ ๋ก๋ ์๊ฐ์ด ๋ ๋น ๋ฆ
๐๋ผ์ฐํ (์๋ก์ด ํ์ด์ง๋ก ์ด๋) html์ด ์์ฒด๊ฐ ๋ฐ๋๋ ๊ฒ ์๋๋ผ ์๋ฐ์คํฌ๋ฆฝํธ ์ฐจ์์์ ์๋ก์ด ํ๋ฉด์ ๊ทธ๋ ค๋
์๋ฒ์ ์์ฒญํ๋ ํ์๊ฐ ํจ์ฌ ์ ์ด ์๋ฒ ๋ถ๋ด์ด ๋ํจ
๋จ์ ๊ณผ ์ฅ์ ์ ์ดํด๋ดค์ ๋ SEO์ ์ต์ ํ ๋ฌธ์ ๋ง ํด๊ฒฐ๋๋ฉด CSR์ ์ ๋ง ์ต๊ณ ๊ฐ ๋ ์ ์๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
์ฌ๊ธฐ์ SSR์ ํ์์ ์ด ๋ถ๊ฐ๋๋ค.
๋ค์ ๊ณผ์ ๋ฅผ ์ดํด๋ณด์.
SPA(Single Page Application)๋ก ๊ตฌ์ฑ๋ ์น ์ฑ์์ SSR(Server-side Rendering)์ด ํ์ํ ์ด์ ์ ๋ํ์ฌ ์ค๋ช ํด์ฃผ์ธ์.
โSSR(Server-side Rendering)์ด๋?
- ์๋ฒ์์ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ค ํ์ด์ง๋ฅผ ๋ชจ๋ ๊ตฌ์ฑํด(๋ ๋๋ง ์ค๋น๋ฅผ ๋๋ง์น ์ํ) ์ฌ์ฉ์์๊ฒ ํ์ด์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์
- ์น์๋ฒ์ ์์ฒญ ์ ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )์์ ์๋ก๊ณ ์นจ์ด ์ผ์ด๋๊ณ ์๋ฒ์ ์๋ก์ด ํ์ด์ง์ ๋ํ ์์ฒญ์ ํ๋ ๋ฐฉ์
- MPA(Multiple Page Application) ์ฌ๋ฌ ๊ฐ์ ์ฑ๊ธ ํ์ด์ง๋ก ๊ตฌ์ฑ๋ ์ดํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉ๋จ (์๋ก์ด ํ์ด์ง ๋ก๋ฉํ ๋๋ง๋ค ๊น๋นก๊ฑฐ๋ฆฌ๋ฉด์ ํ์ด์ง ๋ณด์ฌ์ฃผ๋ ํ์)
- ์์ฑ๋ ํํ์ HTML ํ์ผ์ ์๋ฒ๋ก๋ถํฐ ์ ๋ฌ๋ฐ๊ธฐ ๋๋ฌธ์ SEO์ ์ต์ ํ
โSPA(Single Page Application) ์ด๋?
- ์ฌ์ฉ์๊ฐ ํ ํ์ด์ง ๋ด์ ๋จธ๋ฌด๋ฅด๋ฉด์ ํ์ํ ๋ฐ์ดํฐ๋ง ์๋ฒ์์ ๋ฐ์์ ๋ถ๋ถ์ ์ผ๋ก ์ ๋ฐ์ดํธํ๋ ๋ฐฉ์
- ์ด๊ธฐ์ ๋ชจ๋ ํ์ผ์ ๋ ๋๋งํ๊ณ ํ์ด์ง ๊ฐฑ์ ์ ํ์ํ ๋ฐ์ดํฐ๋ง ์ ๋ฌ๋ฐ๋ ๋ฐฉ์์ธ CSR์ ์ด์ฉ
์์ ์ค๋ช ์ ๋ณด๋ฉด SSR์ MPA์์ ์ด์ฉ๋๊ธฐ ๋๋ฌธ์ CSR์ ์ด์ฉํ SPA์ ํ์ํ ์ด์ ๋ ์ค์ง ํ๋๋ค.
SEO(๊ฒ์์์ง์ต์ ํ)!!!!
๋ค์์ด๋ ๋ค์ด๋ฒ, ๋ค์ดํธ, ์ผํ ๋ฑ๋ฑ ๋ค์ํ ์น์ฌ์ดํธ์์ ๊ฒ์ ์์ฐ๋ฆฌ ์ฌ์ดํธ๊ฐ ์์์ ๋ณด์ผ ์ ์๋๋ก ํ๊ธฐ ์ํจ์ด๋ค.
์ ํฌ๋กค๋ง ~ ํด์ ๋ณด์ฌ์ฃผ๋ผ!!!!!!!!!!!!!!!!!!
Next.js ํ๋ก์ ํธ๋ฅผ ์ธํ ํ ๋ค yarn start ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ์ ๋ ์คํ๋๋ ์ฝ๋๋ฅผ nextjs github ๋ ํฌ์งํ ๋ฆฌ์์ ์ฐพ์ ๋ค, ํด๋น ํ์ผ์ ๋ํ ๊ฐ๋จํ ์ค๋ช ์ ์ฒจ๋ถํด์ฃผ์ธ์.
๋ชฐ๋ผ์.........
์ฌ๊ธฐ์๋ถํฐ๊ฐ ๋๊ด ์์.......................
npm๊ณผ yarn์ ๋ค๋ฅด๊ณ ....... yarn start๊ฐ ์คํ์ด ์๋๋ค...
๊ตฌ๊ธ๋ง์ ํด๋ดค์ง๋ง ๋ต์ ์์ง ์ฐพ์ง ๋ชปํ์
Next.js๋ ์ธํ ํ๊ณ ์คํ์ด ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง yarn start๊ฐ... ๋ญ๊น....???? ๐ช
Reference(์ฐธ์กฐ)
https://d2.naver.com/helloworld/7804182
https://ajdkfl6445.gitbook.io/study/web/csr-vs-ssr-vs-ssg#client-side-rendering-csr
https://blog.itcode.dev/posts/2022/06/12/csr-ssr-ssg
https://onlyfor-me-blog.tistory.com/387
https://velog.io/@namezin/CSR-SSR
https://onlydev.tistory.com/102
https://velog.io/@ru_bryunak/SPA-%EC%82%AC%EC%9A%A9%EC%97%90%EC%84%9C%EC%9D%98-SSR%EA%B3%BC-CSR
https://hyunseob.github.io/2019/05/26/google-io-2019-day-3/
https://hanamon.kr/spa-mpa-ssr-csr-%EC%9E%A5%EB%8B%A8%EC%A0%90-%EB%9C%BB%EC%A0%95%EB%A6%AC/
(์๋ชป๋ ์ ๋ณด๋ ๋ง๋ถ์ด๊ณ ์ถ์ ์๊ฒฌ์ด ์๋ค๋ฉด ๋๊ธ๋ก ์๋ ค์ฃผ์๊ธธ ๋ฐ๋๋๋ค ๐)