Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- hackerrank #python #algorithm #해커랭크 #파이썬 #알고리즘
- single source of truth란 #single source of truth #자료의중복 #자료의비정합성 #비정합성 #리팩토링
- 블로그만들기 #웹사이트만들기 #
- javascript #event #onclick #js
- 웹페이지제작 #
- Hackerrank #해커랭크 #python #파이썬 #알고리즘 #Algorithm
- 강의 #느낀점 #snowfox #스노우폭스 #김승호회장
- TIL #Today I Learned #
- javascript '===' #javascript #TIL #Today I Learned #기록 #회고
- 불리언 #Boolean #number #string #symbol #null #undefined
- 블로그 셀프제작
- TIL #Today I Learned # 기록 # 회고 #Udemy
- javascript #statement #expression #difference
- #TIL #Today I Learned #기록 #회고 #ternary statement #swich statement #스위치 반복문 #
- 고스트 블로그 #
- 기록 #회고
- 자바스크립트 #javascript #datatype #데이터타입 #자료형
Archives
- Today
- Total
well-balanced
[TIL] 기록 75일차 본문
Today I Learned
- Express
express는 노드 위에서 동작하는 웹 개발 프레임워크이다. 가볍고 유연하게 웹 프레임워크를 구성할 수 있는 장점이 있는데 이것은 미들웨어 구조 때문에 가능한 것이다. 자바스크립트의 코드로 작성된 다양한 기능의 미들웨어는 개발자가 필요한 것만 선택하여 익스프레스와 결합하여 사용할 수 있다.
- SPA
SPA는 Client Side Rendering 방식으로 단 한번만 리소스(HTML, CSS, JavaScript)를 로딩하고, 그 후에는 데이터를 받아올때만 서버와 통신한다. 즉, 첫 요청시 딱 한페이지만 불러오고 페이지 이동시 기존 페이지의 내부를 수정해서 보여주는 방식. 클라이언트 관점에서 보면 최초 페이지를 로딩한 시점부터는 페이지 리로딩 없이 필요한 부분만 서버로부터 받아서 화면을 갱신하기 때문에 네이티브 앱에 가까운 자연스러운 페이지 이동과 UX를 제공할 수 있다.
- Client가 서버에 초기 요청을 보내고 HTML을 보내줌
- 그 후로는 AJAX를 통해 필요한 부분의 데이터만 JSON 형식으로 받음
장점
- 자연스러운 UX
- 필요한 리소스만 부분적으로 로딩(성능)
- 서버의 템플릿 연산을 클라이언트로 분산(성능)
- 컴포넌트별 개발 용이(생산성)
- 모바일 앱 개발에 염두에 둔다면 동일한 API를 사용하도록 설계 가능(생산성)
단점
- JavaScript 파일을 번들링해서 받기 때문에 초기 구동속도 느림(webpack의 code splitting으로 해결)
- 검색엔진최적화(SEO)가 어려움 (SSR로 해결)
- 보안 이슈(프론트엔드에 비즈니스로직 최소화)
- SSR
SSR은 페이지를 이동할 때마다 새로운 페이지를 요청. 모든 템플릿은 서버 연산을 통해 렌더링하고 완성된 페이지 형태로 응답.
- Client가 GET Request를 서버로 보내면 서버는 HTML 제공
- Client가 Post Request를 서버로 보내면 서버는 HTML 제공
장점
- 검색엔진 최적화 SEO (Search Engine Optimization)
단점
- 페이지 이동시 화면 깜빡임(UX)
- 페이지 이동시 불필요한 템플릿도 중복해서 로딩(성능)
- 서버 렌더링에 따른 부하(성능)
- 모바일 앱 개발시 추가적인 백엔드 작업 필요(생산성)
'TIL : study log' 카테고리의 다른 글
[TIL] 77,78,79일차 (0) | 2020.01.19 |
---|---|
[TIL] 기록 76일차 (0) | 2020.01.16 |
[TIL] 기록 74일차 (0) | 2020.01.14 |
[TIL] 기록 73일차 (0) | 2020.01.13 |
그리고 2020년, 새로운 시작 (0) | 2020.01.13 |
Comments