inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

모든 웹 개발자가 봐야 할 단 한 장의 지도

WAS와 REST API

장치 의존성과 CSR

해결된 질문

30

ikv

작성한 질문수 3

0

안녕하세요!


6번 강의의 24:15 부분 즈음부터 설명하시는 장치 의존성에 대해 궁금한 점이 있어서 질문드리려고 합니다.


강의를 들으면 마치 "장치 의존성을 해결하기 위해 React.js와 같은 CSR 방식이 등장하였다."라고 이해하게 되는데, 그런 의도로 말씀하신게 맞는지 궁금합니다.


만약 그러한 의도로 말씀하신 것이 맞다면, 제가 알고 있는 내용과 많이 다른 것 같아 혼란스러워 질문을 작성하게 되었습니다.


제가 기존에 알고 있던 지식으로는, 다양한 화면의 장치에 대응하기 위해(즉, 장치 의존성을 해결하기 위해) "반응형 웹 디자인"이 등장한 것으로 알고 있는데요. HTML은 어떤 장치에서 받든 해당 파일을 구동하는 장치(구체적으로는 프로그램)에서 사용할 수 있게 결국 파싱이 되니까(Ex. DOM 생성) 장치에 의존하지 않는 것 아닌가요? 화면의 크기마다 달라지는 UI를 제어하기 위한 방법으로는 CSS에서의 반응형 웹 디자인으로 알고 있었는데요..


React.js와 같은 CSR이 등장하게 된 배경은 다양한 화면에 맞게 알맞은 UI를 보여주려고 한다기보다는, 웹 서버로 보내는 요청을 획기적으로 줄여(클라이언트의 브라우저에서 JS를 이용해 직접 index.html에서 필요한 요소(컴포넌트)를 리렌더링하므로) 웹 서버가 SSR 방식으로 설계되었을 때보다 더 적은 부하를 맡게 되고, 클라이언트 입장에서는 부드러운 화면전환을 경험할 수 있게 하기 위함으로 알고 있는데요.


CSR 방식 자체가 장치 의존성을 해결할 수 있는 것이라면 그 이유가 무엇인지 궁금합니다!

HTML/CSS spring frontend backend spring-framework

답변 1

1

널널한 개발자

네. 그런 의도를 담은 것이 맞습니다. 한 가지 생각해야 할 부분이 여기 '장치'가 화면 해상도만 생각한 것이 아니라 iOS, Android 기반 전용 장치를 생각하시면 좋겠습니다. 화면 크기에 대응하는 문제는 반응형 웹 디자인의 영역이라 하겠으나 강의에서 말한 수준의 장치 의존성은 그 이상의 의미가 있습니다.

모바일 환경 네이티브 앱이 필요해지면서, HTML을 쓰지 않는 클라이언트도 같은 서비스를 받아야 하는 상황이 됐고 결국 서버는 데이터(JSON API)만 제공하고 화면 구성은 각 클라이언트가 책임지는 구조로 분리됐습니다.

이를 가능하게 해준 기술이 React 같은 CSR입니다. CSR 덕에 하나의 백엔드가 웹·iOS·Android 어떤 장치의 클라이언트든 동일하게 서비스할 수 있게 된 것입니다. 그러므로 '장치'를 논함에 있어 화면 해상도만 생각하지 말고 브라우저 및 운영환경까지 고려한 결과라는 점 모두를 '장치 의존성'으로 이해하면 좋을 것 같습니다. 참고하시기 바랍니다. :)

처음 에이전트 설정을 잘못 했을 경우 수정 하는 방법

0

6

0

5,6,7,8 내용이 없어요

0

9

0

네이버 API | '검색 - 책' API 제공 중단

0

17

1

푸터에 있는 카테고리 폰트 컬러 어떻게 바꾸나요?

0

18

1

Context API vs Zustand 그리고 Auth

0

28

2

Part 2 듣기전 복습하던 중, 아키텍처에 관한 질문이 있습니다.

0

34

2

순수 함수 / 순수 컴포넌트

0

21

1

테스트는 인터페이스를 대상으로 만드는것에 대해 궁금한 점이 있습니다.

0

22

1

css box-sizing 관련 질문

0

32

2

여태 만들던걸 다른 도메인으로 옮길 수도 있을까요?

0

25

1

아무도 모르게 책 내시면 모르실 줄 알고!!

1

43

2

node.js 설치 (LTS버전)

0

26

1

Cursor & Antigravity 소개 및 설치

0

31

2

[영한님]Spring Boot 및 프로젝트 생성

0

47

2

뉴스페이퍼 테마 관련

0

34

1

지우지 말아야할걸 지운상태로 저장해버렸어요....

0

32

1

24번 수업에 나온 창은 무슨 프로그램인가요

0

34

1

Desktop모드-header영역 제작에서 제공해드린 폰트와 이미지

0

28

1

깃허브 저장소를 어디에 첨부하셨나요?

1

39

1

해당 강의는 강의자료가 있나요?

0

168

3

강의내용 질문드립니다

0

97

2

추가 강의 요청

0

114

2

용어 질문드립니다.

0

119

1

퀴즈 답

1

116

2