Tutti i corsiTutti gli articoli
Generazione di codice attraverso plugin e annotations

Generazione di codice attraverso plugin e annotations

Aggiornato il26.giu.2024/Fudeo.it/2 minuti

Dopo aver creato diverse applicazioni in Flutter, di diversa natura e grandezza, ho collezionato un insieme di packages per permettermi di risparmiare tempo durante lo sviluppo, in particolare andando a generare codice per me!

E no, non sto parlando di ChatGPT o qualsiasi altra intelligenza artificiale, quello sarà per un'altra edizione della nostra newsletter!

Sto parlando di generazione di codice attraverso plugin ed annotations, per permettermi di:

  • Generare in automatico .toJson e .fromJson

  • Generare in automatico equals, copyWith e toString

  • Importare assets in maniera type-safe

  • Ottimizzare png a tempo di compilazione

  • Gestire l'internazionalizzazione in maniera migliore

Ecco quindi una lista di packages per la generazione di codice che uso quotidianamente e che mi aiutano a sviluppare più velocemente:

## JSON Serialization

Il package json_serializable genera codice per convertire le classi Dart da e verso JSON:

Package:https://pub.dev/packages/json_serializable

## Equals, copyWith, toString

Il package freezed ci permette di avere in automatico i metodi equals, copyWith e toString generati per le nostre classi Dart.

Package:https://pub.dev/packages/freezed

## Importazione Sicura degli Asset

Il package flutter_gen ci permette di accedere in maniera type-safe ai nostri assets (immagini e font) usando codice Dart invece che facendo riferimento agli asset via stringhe.

Package:https://pub.dev/packages/flutter_gen

## Ottimizzazione degli Assets

È possibile applicare stili ed ottimizzazioni alle immagini utilizzate nelle nostre applicazioni a tempo di compilazione.

Per fare questo utilizziamo delle funzioni dette 'transformers' che vengono dichiarate all'interno del nostro pubspec.yaml.

Package:https://docs.flutter.dev/ui/assets/asset-transformation

## Traduzioni

Il package i69n ci permette di gestire l'internazionalizzazione attraverso dei file .yaml che vengono usati per generare classi Dart, che poi possiamo usare nel codice per accedere in maniera type-safe alle traduzioni.

Package:https://pub.dev/packages/i69n

Ci auguriamo che questi strumenti possano migliorare il vostro flusso di lavoro in Flutter tanto quanto hanno migliorato il nostro :)

Per questa edizione è tutto:

Se ti è piaciuta questa edizione della nostra newsletter mensile su Flutter, condividila a chi potrebbe interessare!

PS. ti hanno inoltrato questa newsletter e vorresti riceverla anche tu una volta al mese? Clicca qui per iscriverti gratuitamente.