CodeBlanks Logo Icon CodeBlanks

Özet - Performans

Profile, RepaintBoundary ve const'u birleştirerek optimizasyon yaparsın.

Özet - Performans

Bir uygulama optimize ederken üç silah birlikte kullanılır: profile modu ile darboğazları bul, RepaintBoundary ile gereksiz çizim alanlarını ayır, const ile sabit widget'ları yeniden yaratmaktan kaçın. Bu üçü birlikte büyük performans kazancı sağlar.

RepaintBoundary(
  child: const Text('Sablon'),
)
// profile modunda darboğazı ölç

Uygulama RepaintBoundary ve const birleştir

main içinde bir RepaintBoundary widget'ı oluştur: child olarak const Text('Sablon') ver. Widget'ın runtimeType'ını yazdır.

Başlangıç kodu

main.dart
import 'package:flutter/material.dart';

void main() {
  // RepaintBoundary oluştur, child Sablon metnini const olarak tutsun
  // runtimeType yazdır
}

Örnek çözüm

main.dart
import 'package:flutter/material.dart';

void main() {
  final widget = RepaintBoundary(
    child: const Text('Sablon'),
  );
  print(widget.runtimeType);
}

Beklenen çıktı

RepaintBoundary

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 RepaintBoundary ve const birlikte ne sağlar?

  • Daha iyi state yönetimi
  • Yeniden çizim ve rebuild maliyetini azaltır Doğru cevap
  • Sadece bellek tasarrufu
  • Daha hızlı HTTP

Açıklama: RepaintBoundary gereksiz paint'i önler, const gereksiz rebuild'i önler; ikisi birlikte çizim ve yeniden oluşturma maliyetini düşürür.

2 const RepaintBoundary child

Soru
RepaintBoundary(
  child: ____ Text('Sablon'),
)
Cevap
RepaintBoundary(
  child: const Text('Sablon'),
)

Açıklama: const Text('Sablon') derleme zamanında oluşturulur; new, final ve var runtime nesnesi üretir ve rebuild maliyeti doğurur.

3 Optimizasyon eşleşmeleri

Kavram Anlamı
profile Darboğaz ölçümü
RepaintBoundary Çizim alanı ayırma
const Sabit widget
ListView Verimli liste

Uzman seviye bölümündeki tüm dersler