[Frontend] 렌더링 파이프라인 이해와 Reflow/Repaint 최소화 전략
왜 렌더링 과정을 알아야 할까? 프론트엔드 개발을 하다 보면 자연스럽게 ‘성능 최적화’라는 벽에 부딪히게 됩니다. React나 Vue 같은 훌륭한 프레임워크들이 많은 것을 대신 처리해주지만, 결국 우리가 짠 코드가 실행되고 화면에 그려지는 곳은 ‘브라우저’입니다. 화면을 스크롤할 때마다 버벅거리는 현상(Jank)이 발생하거나, 초기 로딩 속도가 느...
왜 렌더링 과정을 알아야 할까? 프론트엔드 개발을 하다 보면 자연스럽게 ‘성능 최적화’라는 벽에 부딪히게 됩니다. React나 Vue 같은 훌륭한 프레임워크들이 많은 것을 대신 처리해주지만, 결국 우리가 짠 코드가 실행되고 화면에 그려지는 곳은 ‘브라우저’입니다. 화면을 스크롤할 때마다 버벅거리는 현상(Jank)이 발생하거나, 초기 로딩 속도가 느...
CSR(Client-Side Rendering) 개념 클라이언트 사이드 렌더링(Client-Side Rendering, CSR)은 웹 애플리케이션의 렌더링을 클라이언트 측에서 처리하는 방식 CSR은 서버로부터 초기 HTML 페이지를 받아오고, 그 이후에 JavaScript를 사용하여 동적으로 콘텐츠를 렌더링하고 업데이트함. 이를 통해 빠른...
SPA(Single Page Application) 개념 모던 웹의 패러다임 한 개(Single)의 Page로 구성된 Application 서버로부터 완전한 새로운 페이지를 불러오지 않고 현재의 페이지를 동적으로 다시 작성함으로써 사용자와 소통하는 웹 애플리케이션이나 웹사이트를 말함 SPA의 핵심 가치는 사용자 경험(UX) 향상에 ...
Package Manager 패키지 매니저는 개발에 필요한 다양한 패키지를 설치하고 수정하고 업데이트하는 등의 작업을 편리하게 도와주는 도구라고 할 수 있다. 자바스크립트로 프로젝트를 진행하다 보면 해당 프로젝트에 필요한 다양한 패키지들이 있고 이 패키지들을 설치하고 또 관리해야 하는 경우가 있는데, 이 패키지들을 의존성 있게 관리해 주는 것이 바...
FileReader type이 file인 input 태그 <input type="file"/> 또는 API 요청과 같은 File 또는 Blob 객체를 처리할 수 있는 방법을 제공하는 객체 abort, load, error와 같은 이벤트에서 발생한 프로세스를 처리하는데 주로 사용됨 File 또는 Blob 객체를 읽어 result...
최적화 기본 원리 옵티마이저 옵티마이저(Optimizer)는 사용자가 질의한 SQL문에 대해 최적의 실행 방법을 결정하는 역할을 수행한다. 이러한 최적의 실행 방법을 실행계획(Execution Plan)이라고 한다. 규칙기반 옵티마이저(RBO, Rule Based Optimizer) 규칙기반 옵티마이저는 규칙(우선 순위)을 가지고 실행계획을 생...
SQL 활용 일반 집합 연산자 일반 집합 연산자를 SQL과 비교 UNION 연산은 UNION 기능으로 INTERSECTION 연산은 INTERSECT 기능으로 DIFFERENCE 연산은 EXCEPT(Oracle은 MINUS) 기능으로 PRODUCT 연산은 CROSS JOIN 기능으로 구현되었다. 순수 관계 연산자 순수 관계 ...
SQL 기본 SQL SQL 문장들의 종류 명령어의 종류 명령어 설명 데이터 조작어(DML; Data Manipulation Language) SELECT 데이터베이스에 들어 있는 데이터를 조회하거나 검색하기 위한 명령어를 말하는 것으로 RETRIEVE 라고도 한다. INSERTUPDATEDELETE 데이터베이스이 테이블에 들어 있...
데이터 모델과 성능 성능 데이터 모델링 데이터베이스 성능 향상을 목적으로 설계단계의 데이터 모델링 때부터 성능과 관련된 사항이 데이터모델링에 반영될 수 있도록 하는 것 성능 데이터 모델링 특징 데이터의 증가가 빠를수록 성능저하에 따른 성능개선비용 증가 데이터모델은 성능을 튜닝하면서 변경 될 수 있음 분석/설계 단계에서 성능을 고려한...
데이터 모델링의 이해 데이터 모델링 설계과정에서 시스템의 중요한 개념을 논리적인 데이터 모델을 구성하는 작업을 의미하며, 일반적으로 물리적인 데이터베이스 모델 구현, 시스템 데이터베이스 반영 과정을 포함한다. 데이터 모델링은 단순 데이터를 다루는 것 뿐만 아니라 시스템의 구체적인 Flow를 정의하는데도 매우 큰 영향을 미친다. 정보시스템을 ...