Enfin Dart et la protection contre "null"

system-error-codes-2830869_640

Dart nous propose enfin la protection contre les données « null », l’un des grands changements de la dernière mise à jour disponible pour le moment avec le channel dev de Dart.

Grâce aux nouvelles déclarations, Dart arrive désormais à être sûr à 99% si votre variable peut-être null ou pas avant la compilation.

Résultats -> environ 20% de performance en plus au niveau de la compilation et une analyse plus poussée du code.

Avant il fallait que l’analyseur ajoute lui même des vérifications ce qui rajoutait automatiquement plus de temps pour compiler l’application.

Comment ça marche ?

int i = 42;
String m = '';
bool foo = false;

Si vous déclarez vos variables classiquement, Dart prendra pour acquis que les variables ne peuvent être « null » et signalera les erreurs en empêchant la compilation comme dans l’exemple ci-dessous.

Pour déclarer explicitement que vos variables peuvent être null, il faut rajouter ? derrière le type dans la déclaration de la variable.

Bien sûr vous pouvez l’utiliser dans d’autres situations comme sur un paramètre ou une fonction.

void counter(int? count) {
  // Il accepte un argument null
}

Foo? getFoo() {
  // La fonction peut retourner null au lieu de Foo
}

Si vous savez qu’une variable ne sera pas null avant son initialisation, vous pouvez l’indiquer à Dart avec le nouveau mot-clé late.

class Food {
  late FoodType food;
  Goo(this.food); 
}

On devrait avoir cette fonctionnalité dans le version stable bientôt si tout se passe bien, pour le moment vous pouvez l’essayer ici.

Prêt à l’utiliser ?

  • Oui
  • Non

0 votant