본문 바로가기

프론트엔드/코드스테이츠 회고

최적화

 최적화 방법들

 

최적화 기법

(1) DOM 트리 가볍게 만들기

// 수정 전
<div>
	<ol>
		<li> 첫 번째 </li>
		<li> 두 번째 </li>
		<li> 세 번째 </li>
	</ol>
</div>

// 수정 후 : 불필요한 div 요소 제거
<ol>
	<li> 첫 번째 </li>
	<li> 두 번째 </li>
	<li> 세 번째 </li>
</ol>

(2) 인라인 스타일 사용하지 않기

//수정 전
<div style="margin: 10px;"> 마진 10px </div>
<div style="margin: 10px;"> 이것도 마진 10px </div>

//수정 후 : class와 CSS로 대체
<div class="margin10"> 마진 10px </div>
<div class="margin10"> 이것도 마진 10px </div>

.margin10 {
	margin: 10px;
}

(3) 사용하지 않는 CSS 제거하기

(4) 간결한 셀렉터 사용하기

 

캐시 사용하기

  • 캐시가 유효한 시간 동안 네트워크 리소스를 아낄 수 있음
  • 파일을 다시 받아올 필요가 없기 때문에 브라우저 로딩이 빨라짐
  • 로딩이 빨라진 만큼 빠른 사용자 경험 제공 가능

자바스크립트 트리쉐이킹

(1) 필요한 모듈만 import 하기

(2)Babelrc파일 설정하기

{
  “presets”: [ 
    [
      “@babel/preset-env”,
      {
	    "modules": false
      }
    ]
 ]
}

(3) sideEffects 설정하기

웹팩은 사이드 이펙트를 일으킬 수 있는 코드의 경우, 사용하지 않는 코드라도 트리쉐이킹 대상에서 제외시킵니다. 이 경우

package.json 파일에서 sideEffects를 설정하여 사이드 이펙트가 생기지 않을 것이므로 코드를 제외시켜도 됨을 웹팩에게 알려줄 수 있습니다.

{
  "name": "tree-shaking",
  "version": "1.0.0",
  "sideEffects": false
}
{
  "name": "tree-shaking",
  "version": "1.0.0",
  "sideEffects": ["./src/components/NoSideEffect.js"]
}

(4) ES6 문법을 사용하는 모듈 사용하기

 

Lighthouse

 

* Performance - 웹성능 측정

* Accessibility  -  웹 페이지가 웹 접근성을 잘 갖추고 있는지 확인

* Best Practices  -  웹 페이지가 웹 표준 모범 사례를 잘 따르고 있는지 확인

* SEO -  웹 페이지가 검색 엔진 최적화가 잘 되어있는지 확인

* PWA - 해당 웹 사이트가 모바일 애플리케이션으로서도 잘 작동하는지 확인

'프론트엔드 > 코드스테이츠 회고' 카테고리의 다른 글

웹팩 만들기  (0) 2022.09.26
웹표준 웹접근성  (0) 2022.09.06
UI/UX  (0) 2022.08.23
Rest Api  (0) 2022.08.05
객체지향 프로그래밍 (프로토타입과 클래스)  (0) 2022.07.22