반응형
https://www.youtube.com/watch?v=IOyq-eTRhvo
1. 문제상황
우리가 자주 재사용되는 위젯을 따로 코드로 빼 놓을 때 두가지 방법이 있다.
- 헬퍼메소드 사용(위젯을 리턴하는 함수를 의미)
- 클래스 위젯을 사용
이 두가지 방법중 뭘 선택해야 할 까?
2. 정답은 클래스 위젯
구글에서 답을 정해줬다. 따로 위젯을 만들라는거다. 이유는 퍼포먼스적인 이슈 때문이라는데..
내가 추정한 이유는 다음과 같다.
- 헬퍼 메소드는 setState같은걸 활용할 수 없다. 고로 헬퍼메소드를 사용하면 상위 위젯의 setState에 의지해야 하고, 헬퍼메소드 내에 위젯만 바뀌어야 하는거면, 불필요한 렌더링이 발생한다
- const 생성자를 사용할 수 없다. 역시나 불필요한 렌더링을 발생시길 가능성이 있다.
구글에서 말하길, 헬퍼메소드는 코드 좀 간단한거 빼고 기능적으로 아무 이점이 없다. 고로 클래스 위젯을 사용하라고 한다.
반응형
'Flutter' 카테고리의 다른 글
Delay가 있는 TweenAnimationBuilder (0) | 2024.01.05 |
---|---|
AnimatedSwitcher가 동작하지 않을 때 해결방법 (1) | 2024.01.03 |
CustomPaint에서 drawPath가 안그려 질 때 (0) | 2023.12.19 |
CustomPainter사용시 주의사항 RepaintBoundary (0) | 2023.12.19 |
Flutter에서 네이티브 뷰 호출하기 (1) | 2023.11.01 |
댓글