백엔드 개발자가 서비스를 제공할 때 고려해야할 요소

1. 정적 리소스를 어떻게 제공할 것인지?

2. 동적 HTML 페이지를 어떻게 제공할 것인지?

3. HTTP API 어떻게 제공할 것인지?

 

 

 

 

서버사이드 렌더링, 클라이언트 사이드 렌더링

1) SSR - Server Side Rendering

  • HTML 최종 결과를 서버에서 만들어 웹 브라우저에 전달

즉, 동적으로 생성된 최종 결과물이 서버에서 다 생성되고, 웹브라우저는 다 생성된것을 보여주기만 한다.

  • 주로 정적인 화면에 사용
  • JSP, 타임리프 -> 백엔드 개발자

2) CSR - Client Side Rendering

  • HTML 결과를 자바스크립트를 사용해 웹 브라우저에 동적으로 생성해 적용
  • 주로 동적인 화면에서 사용
  • 웹 환경을 마치 앱처럼 필요한 부분부분 변경 가능
  • ex. 구글 지도, Gmail, Google Calender
  • React, Vue.js -> 웹 프론트엔드 개발자

 

* 참고

- React , Vue.js 를 CSR + SSR 동시에 지원하는 웹 프레임워크도 있음

- SSR 을 사용하더라도, 자바스크립트를 사용해서 화면 일부 동적으로 변경 가능

 

 

 

 

그렇다면 백엔드 개발자 입장에서는 어디까지 알아야 하는가?

 

1. 백엔드 - SSR

  • JSP , Thymeleaf
  • 화면 정적이고, 복잡하지 않을 때 사용
  • 백엔드 개발자는 SSR 기술 학습 필수

2. 선택과 집중

  • 백엔드 개발자는 CSR 의 기술 학습은 옵션
  • 서버, DB, Infra 등 수많은 백엔드 기술 공부해야함

 

 

 

 

 

'스터디' 카테고리의 다른 글

Spring MVC  (0) 2022.11.30
MVC 패턴  (0) 2022.11.28
멀티 쓰레드  (0) 2022.11.24
서블릿  (1) 2022.11.22
빈 스코프  (0) 2022.08.11

+ Recent posts