TIL : 브라우저 렌더링과정 / RESTful API

hihyeon_cho·2023년 3월 27일
1

TIL

목록 보기
88/101

웹페이지가 브라우저에 렌더링되는 과정을 설명해주세요.

브라우저렌더링은 파싱-스타일-레이아웃-페인트-컴포짓 과정을 거쳐 화면에 그려지게 됩니다.

파싱단계에서는 html과 css 파일을 받아 각각 파싱하여 dom트리와 cssom트리로 만듭니다.

그리고 스타일단계에서는 이 두 트리를 결합하여 렌더링트리를 만들고.

레이아웃 단계에서는 렌더링 트리에서 어떻게 화면에 배치할지 각 노드의 위치와 크기를 계산합니다.

다음으로 페인트단계에서는 레이아웃 단계에서 계산된 값을 이용해 각 노드를 화면상의 실제 픽셀로 변환하고 레이어를 만들고,

마지막으로 컴포짓단계에서 레이어들을 합성하여 실제 화면에 나타냅니다.


Restful API에 대해 설명해주세요. GET,POST 외에 알고있는 메소드와 그 기준을 설명해주세요. RESTful API 가 아닌 것들은 어떤게 있나요?

Restful은 URI를 통해 자원을 명시하고, HTTP 메소드를 통해 자원에 대한 CRUD를 적용하는 REST의 원리를 잘 따르는 시스템을 지칭합니다.

그러므로 REST의 설계 규칙을 잘 지켜서 설계된 API를 RESTful한 API라고 할 수 있는데,

그 규칙은,
1. URI에는 동사 대신 명사, 대문자 대신 소문자를 사용해야하며,
2. 언더바 대신 하이픈을 사용해야 합니다.
3. URI 마지막에는 슬래시를 포함하지 않고,
4. URI에 파일확장자를 포함하지 않도록 해야합니다.
5. 그리고, delete 혹은 get처럼 행위를 포함하지 않아야합니다.

RESTful API가 아닌 경우는 이 설계규칙을 올바르게 지키지 못한 시스템을 말하는데,
예를 들어, CRUD 기능을 모두 POST로만 처리하는 API이거나, route에 resource, id외의 정보가 들어가는 API는 RESTful api가 아니라고 할 수 있습니다.

restful api의 메소드는 GET,POST 이외에
서버의 기존 리소스를 전체적으로 업데이트하는 PUT과 , 부분적으로 업데이트 하는 PATCH, 리소스를 제거하는 DELETE 메소드가 있습니다.

출처 : ( REST란? REST API 와 RESTful API의 차이점, Restful API / 알고있는 메소드와 그 기준 / RESTful API 가 아닌 것 )

profile
코딩은 짜릿해 늘 새로워 ✨

2개의 댓글

comment-user-thumbnail
2023년 3월 27일

https://developer.mozilla.org/ko/docs/Web/Performance/Critical_rendering_path
위에는 중요 렌더링 경로 설명해주는 mdn 문서인데 보셔도 좋을 것 같아서 공유드립니다!

Restful API uri는 못 짚었는데 체크체크.
파이팅 🔥

답글 달기
comment-user-thumbnail
2023년 3월 27일
  1. 웹페이지가 브라우저에 렌더링되는 과정에서 흐름을 먼저 설명한 부분이 좋았습니다.
  2. dom트리와 cssom이 어떻게 생성되는지도 알고 가시면 좋을 것 같습니다.
  3. 전체적으로 쉽게 이해할 수 있게끔 잘 정리하신 것 같습니다
  4. RESTful API가 아닌 것의 종류도 한번 조사해 보시는 것 같습니다.
    https://raphaeluju.tistory.com/118?category=1139733 박상우님 블로그에 정리가 잘 되있습니다.
답글 달기