Browser rendering

하나의 UI는 구조, 표현, 동작 세 책임이 합쳐져 만들어진다

HTML은 의미와 순서, CSS는 표시 규칙, JavaScript는 사용자 행동에 대한 반응을 맡는다.

언어책임UI 예시섞이면 생기는 문제
HTML문서 구조와 의미제목, 입력창, 버튼, 결과 목록동작 때문에 의미 없는 div가 늘어남
CSS간격, 색, 정렬, 반응형 표시버튼 스타일, 목록 레이아웃스크립트로 스타일을 직접 조작
JavaScript이벤트와 상태 변경클릭 후 목록 추가, 입력값 검증구조와 표현까지 모두 JS에 몰림
Browser세 결과를 합쳐 화면 렌더링DOM, CSSOM, Event Loop책임 경계가 흐려 디버깅 어려움

같은 버튼 하나라도 태그 선택은 HTML, 보이는 규칙은 CSS, 클릭 후 변경은 JavaScript 책임이다.