[TIL]

Dev_min·2020년 6월 4일
0

TIL

목록 보기
46/61

함수형 컴포넌트 vs 클래스형 컴포넌트

클래스형 컴포넌트

  1. render 함수가 반드시 존재해야 한다.
  2. state 의 사용이 가능하다.
  3. lifecycle API의 사용이 가능하다.

함수형 컴포넌트

  1. 클래스형 컴포넌트에 비해 선언하기가 편하다.
  2. 메모리 자원을 클래스형 컴포넌트에 비해서 덜 차지한다.
  3. 빌드 후 배포시에 결과물의 크기가 작다.

클래스형 컴포넌트가 함수형 컴토넌트에 비해 가지는 단점

  1. 코드가 길고 복잡하다.
    : constructor, this, binding 등 지켜야할 규칙이 존재한다.
  2. Logic의 재사용이 어렵다.
    : 클래스형 컴포넌트에서는 High-Order Components(HOC)로 컴포넌트 자체를 재사용할 수는 있지만, 부분적인 DOM관련 처리나 API사용 및 state을 다루는 등의 logic에 있어서는 경우에 따라 같은 로직을 2개 이상의 Life Cycle method에 중복해서 넣어야하는 등 재사용에 제약이 따른다.
  3. 성능
    : performance상 우의가 있다는 글들이 많다. 대략 6 ~ 45% 상승

[참고] https://eodevelop.tistory.com/68
[참고] https://codingbroker.tistory.com/23

profile
TIL record

0개의 댓글