왜 자꾸 const를 쓰라고 하는거지?

2024. 8. 26. 13:25·Flutter/Flutter

무수한 const의 요청

 UI를 만들고 있는데, 수많은 노란 줄이 뜬다

 

다 const를 쓰라는 요청인데, 자세히 읽어보면 Use 'const' with the constructor to improve performance 라고 나온다.

즉 const의 사용이 퍼포먼스 향상에 도움이 된다는건데, 왜인지 살펴보도록 하자


const는 상수를 쓸 때 썼던 키워드다

컴파일 타임에 값을 고정하는 개념으로, 불변성을 보장한다

 

즉 const의 역할은 

1. 객체를 재사용하고,

2. 불필요한 빌드를 방지하며, 런타임 연산을 줄임으로써 성능을 최적화하는 것이다.

📖 정리

런타임 연산엔 cpu의 자원을 쓴다. const를 쓰면 const로 값을 고정한다. (더 이상 변하지 않는다)
그렇다면 cpu는 한 번만 값을 기억하면 더 이상 자원을 써도 되지 않게 된다. 고정된 값은 메모리에서 계속 재사용하면 되므로.

 

 


 

+) 그렇다면 같이 상수를 선언하는 final도 퍼포먼스 향상에 도움이 될까? final도 잠깐 짚고가 보자

 

final: 런타임에 값을 결정할 수 있는 친구. 값이 런타임 과정에서 결정되고 그 이후에 변이후에는 값이 변경되지 않도록 보장함! 따라서 얘도 성능 최적화에 도움이 되긴한다 (const만큼은 아님), 참조하는게 결정되는거라서 객체 내부는 변경될 수 있다.

이 친구도 변수의 재할당을 막아 불필요한 연산과 메모리 낭비를 줄이며, 런타임 성능을 최적화함. 

 

 

 

'Flutter > Flutter' 카테고리의 다른 글

1. 앱에 어울리는 애니메이션 구현하기 <Lottie편>  (1) 2024.09.16
mainColor를 const로 고정해주고 싶었을 뿐인데  (0) 2024.08.30
위젯 만들 때 마다 계속 나오는 @override와 super.key는 뭐지?  (2) 2024.08.26
개발자의 스레드 관리는 비효율적 in 플러터  (2) 2024.08.21
Flutter/Dart 기본 개념 파악하기 (그니까 이게 뭔데)  (0) 2024.07.30
'Flutter/Flutter' 카테고리의 다른 글
  • mainColor를 const로 고정해주고 싶었을 뿐인데
  • 위젯 만들 때 마다 계속 나오는 @override와 super.key는 뭐지?
  • 개발자의 스레드 관리는 비효율적 in 플러터
  • Flutter/Dart 기본 개념 파악하기 (그니까 이게 뭔데)
복복씨
복복씨
개발자여, 사고하라 !
  • 복복씨
    정리노트
    복복씨
  • 전체
    오늘
    어제
    • 분류 전체보기 (118)
      • 개발새발자 (22)
        • 의 삶 (7)
        • 의 회고 (9)
        • 의 낙서장 (6)
        • 영어 (0)
      • Flutter (38)
        • 새싹 (5)
        • Dart (8)
        • Flutter (14)
        • iOS 에서 Flutter 로 전환하며 (2)
        • 챗지피티랑놀.기 (3)
        • 하루 한 입 플러터 (2)
      • CS (7)
        • 짤막지식 (6)
      • IOS (6)
        • Swift (0)
        • UIKit (1)
        • SwitUI (4)
      • 머신러닝-딥러닝 (28)
        • 논문리뷰 (3)
        • study (16)
        • Kaggle (9)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    IOS
    새싹 용산
    시그널링데이터
    깊은참조
    멋쟁이 사자처럼
    FLUTTER
    swiftui 플러터
    유리과일 자르기
    플러터 di
    futurerecord2
    플러터
    플러터 새싹
    용산캠
    유리과일
    asmr 프롬프트
    flutter 애니메이션
    부트캠프
    getit
    dart
    ai asmr
    새싹
    unawaited
    새싹 플러터
    핫 리로드
    사그널링서버
    코드 결합도
    schedulemicrotask
    runzonedguarded
    expando
    veo3
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
복복씨
왜 자꾸 const를 쓰라고 하는거지?
상단으로

티스토리툴바