Jetpack Compose Academy · Lezione

Parametri stabili e instabili

Comprenda cosa permette di saltare le Composable.

Lezione 1 di 413 passaggi

Parametri stabili e instabili è una lezione Jetpack Compose Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Jetpack Compose Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Jetpack Compose Academy include 4 lezioni in totale.

Cosa significa saltare

Quando un Composable viene rieseguito, ma i suoi input non sono cambiati, Compose può saltarlo completamente. È così che le app Compose veloci restano veloci. 🚀

La stabilità determina gli skip

Compose salta un Composable solo quando ogni parametro è stable. Basta un input non stabile e l'intera funzione viene rieseguita a ogni ricomposizione.

Cosa garantisce "stable"

Un tipo è stable quando Compose può fidarsi del fatto che equals() sia affidabile e che le proprietà pubbliche non cambino senza informare Compose.

Tipi naturalmente stabili

I tipi primitivi, String e i tipi funzione sono stable già in partenza, quindi passare un Int o una lambda non impedisce mai lo skip.

fun Greeting(name: String, count: Int) {
  Text("Hello $name x$count")
}

Le proprietà val sono stabili

Una classe con sole proprietà val di tipi stabili è a sua volta stabile. I dati immutabili sono l'input più adatto da fornire a Compose.

data class User(val id: Int, val name: String)

var rende instabile un tipo

Una proprietà var mutabile può cambiare alle spalle di Compose, quindi la classe diventa instabile e il relativo Composable non può più essere saltato.

data class Counter(var value: Int)

Le collezioni sembrano instabili

List, Map e Set semplici vengono trattati come instabili, perché l'interfaccia potrebbe nascondere internamente un ArrayList mutabile.

fun ItemRow(items: List<String>) { }

Perché le interfacce preoccupano Compose

Un parametro di tipo interfaccia è instabile: l'implementazione concreta è sconosciuta in fase di compilazione, quindi Compose non può garantire che il suo equals() si comporti correttamente.

Modalità strong skipping

Le versioni più recenti di Compose includono strong skipping, che consente di confrontare per riferimento i parametri instabili; in questo modo molti casi vengono saltati senza annotazioni aggiuntive.

Individuare gli input instabili

Se un Composable viene ridisegnato a ogni frame senza un motivo visibile, sospetti un parametro unstable che forza una riesecuzione completa ogni volta.

La stabilità è una questione di fiducia

La stabilità è una promessa fatta a Compose, non una magia. Più i suoi input sono immutable, più lavoro Compose può saltare liberamente.

Verifica rapida

Verifichi la sua comprensione della stabilità.

Riepilogo: la stabilità vince

Compose salta un Composable solo quando ogni input è stable. Preferisca primitivi, String e classi composte solo da val per mantenere economici i ridisegni. ✅

Gratis per iniziare

Impara Kotlin con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «Parametri stabili e instabili» è gratuita?

Sì — il testo completo di «Parametri stabili e instabili» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Jetpack Compose Academy, passa a CoddyKit PRO. Il corso Jetpack Compose Academy include 4 lezioni in totale.

Cosa imparerò in «Parametri stabili e instabili»?

Comprenda cosa permette di saltare le Composable. Eserciti Jetpack Compose Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Jetpack Compose Academy?

Non è richiesta alcuna esperienza precedente. Jetpack Compose Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Parametri stabili e instabili»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Jetpack Compose Academy?

Sì. Ogni lezione Jetpack Compose Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Parametri stabili e instabili
  2. Skipping, @Stable e @Immutable
  3. Rimandare la lettura dello stato
  4. Layout Inspector e conteggi delle ricomposizioni
← Torna a Jetpack Compose Academy