Dart Academy · Lezione

Costruttori denominati per un intento chiaro

Offrire più modalità di costruzione.

Lezione 2 di 413 passaggi

Costruttori denominati per un intento chiaro è una lezione Dart Academy gratuita su CoddyKit. Questa è la lezione 2 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 Dart Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Dart Academy include 4 lezioni in totale.

Perché usare costruttori con nome

Spesso una classe deve offrire diversi modi per essere creata. Un named constructor assegna a ogni percorso un'etichetta chiara, così i chiamanti sanno esattamente che cosa ottengono.

La sintassi dei nomi

Scrivi il nome della classe, un punto e poi la tua etichetta. La forma ClassName.label si legge come una breve frase nel punto della chiamata.

class Point {
  int x, y;
  Point.origin() : x = 0, y = 0;
}

Chiamare un costruttore con nome

Lo invochi proprio come quello senza nome, ma includendo l'etichetta. In questo modo l'intent dell'oggetto risulta evidente nel codice.

var p = Point.origin();
print(p.x); // 0

Molti costruttori con nome

Aggiungine quanti vuoi, descrivendo ogni caso d'uso. Qui uno crea un carrello vuoto e un altro un carrello preset.

class Cart {
  int items;
  Cart.empty() : items = 0;
  Cart.preset() : items = 3;
}

Costruttori con nome e parametri

Possono accettare anche argomenti, combinando un'etichetta chiara con valori personalizzati per un punto di accesso factory-style flessibile ma leggibile.

class User {
  String name;
  User.guest(this.name);
}

Affiancare costruttori con e senza nome

Una classe può mantenere il normale costruttore senza nome e aggiungere accanto quelli con nome, coprendo sia i casi comuni sia quelli special.

class Color {
  int value;
  Color(this.value);
  Color.black() : value = 0;
}

Rappresentare origini diverse

I costruttori con nome sono utili quando gli stessi dati arrivano da origini diverse, come una mappa JSON o valori grezzi, ciascuno con la propria label.

class User {
  String name;
  User.fromName(this.name);
}

Leggibilità nel punto della chiamata

Confronta Temperature.celsius(20) con un numero isolato. L'etichetta elimina ogni dubbio, quindi i costruttori con nome migliorano la clarity per chi legge.

var t = Temperature.celsius(20);

Creano comunque lo stesso tipo

Qualunque costruttore chiami, ottieni un'istanza della stessa classe. L'etichetta cambia solo il modo in cui viene initialized, non il tipo.

var a = Point.origin();
print(a is Point); // true

Combinare con le scorciatoie this.

I costruttori con nome accettano la stessa scorciatoia this.field, mantenendo concisa l'inizializzazione anche con un'etichetta descrittiva.

class Box {
  int w, h;
  Box.square(this.w) : h = w;
}

Scegliere etichette descrittive

Scegli etichette che descrivano il risultato, come fromMap o withDefaults. Una buona label trasforma il punto della chiamata in documentazione.

class Config {
  Config.withDefaults();
  Config.fromMap(Map m);
}

Controllo rapido

Controllo rapido sulla sintassi dei costruttori con nome.

Riepilogo: intenzione chiara

Hai imparato ad aggiungere named constructors con la sintassi del punto, a combinarli con quello senza nome e a passare parametri per creare oggetti in modo leggibile e indicativo dell'intento. 👍

Gratis per iniziare

Impara Dart 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 «Costruttori denominati per un intento chiaro» è gratuita?

Sì — il testo completo di «Costruttori denominati per un intento chiaro» è 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 Dart Academy, passa a CoddyKit PRO. Il corso Dart Academy include 4 lezioni in totale.

Cosa imparerò in «Costruttori denominati per un intento chiaro»?

Offrire più modalità di costruzione. Eserciti Dart 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 Dart Academy?

Non è richiesta alcuna esperienza precedente. Dart 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 2 di 4.

Quanto tempo richiede la lezione «Costruttori denominati per un intento chiaro»?

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 Dart Academy?

Sì. Ogni lezione Dart 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. Costruttori predefiniti e parametrizzati
  2. Costruttori denominati per un intento chiaro
  3. Liste di inizializzazione e reindirizzamento
  4. Costruttori factory e const
← Torna a Dart Academy