Flutter - Introduzione alla programmazione Dart

Dart è un linguaggio di programmazione generico open source. È stato originariamente sviluppato da Google. Dart è un linguaggio orientato agli oggetti con sintassi in stile C. Supporta concetti di programmazione come interfacce, classi, a differenza di altri linguaggi di programmazione Dart non supporta gli array. Le raccolte Dart possono essere utilizzate per replicare strutture di dati come array, generici e digitazioni facoltative.

Il codice seguente mostra un semplice programma Dart -

void main() {
   print("Dart language is easy to learn");
}

Variabili e tipi di dati

La variabile è denominata posizione di archiviazione e Tipi di dati si riferisce semplicemente al tipo e alla dimensione dei dati associati a variabili e funzioni.

Dart utilizza la parola chiave var per dichiarare la variabile. La sintassi di var è definita di seguito,

var name = 'Dart';

Le parole chiave final e const vengono utilizzate per dichiarare le costanti. Sono definiti come di seguito:

void main() {
   final a = 12;
   const pi = 3.14;
   print(a);
   print(pi);
}

Il linguaggio Dart supporta i seguenti tipi di dati:

  • Numbers - Viene utilizzato per rappresentare i valori letterali numerici: Integer e Double.

  • Strings- Rappresenta una sequenza di caratteri. I valori stringa sono specificati tra virgolette singole o doppie.

  • Booleans- Dart utilizza la parola chiave bool per rappresentare i valori booleani: vero e falso.

  • Lists and Maps- Viene utilizzato per rappresentare una raccolta di oggetti. Un semplice elenco può essere definito come di seguito -.

void main() {
   var list = [1,2,3,4,5];
   print(list);
}

L'elenco mostrato sopra produce l'elenco [1,2,3,4,5].

La mappa può essere definita come mostrato qui -

void main() {
   var mapping = {'id': 1,'name':'Dart'};
   print(mapping);
}
  • Dynamic- Se il tipo di variabile non è definito, il suo tipo predefinito è dinamico. L'esempio seguente illustra la variabile di tipo dinamico:

void main() {
   dynamic name = "Dart";
   print(name);
}

Processo decisionale e cicli

Un blocco decisionale valuta una condizione prima che le istruzioni vengano eseguite. Dart supporta le istruzioni If, If..else e switch.

I loop vengono utilizzati per ripetere un blocco di codice fino a quando non viene soddisfatta una condizione specifica. Dart supporta i cicli for, for..in, while e do.. while.

Cerchiamo di capire un semplice esempio sull'utilizzo di istruzioni e cicli di controllo:

void main() {
   for( var i = 1 ; i <= 10; i++ ) {
      if(i%2==0) {
         print(i);
      }
   }
}

Il codice precedente stampa i numeri pari da 1 a 10.

Funzioni

Una funzione è un gruppo di istruzioni che insieme svolgono un compito specifico. Esaminiamo una semplice funzione in Dart come mostrato qui:

void main() {
   add(3,4);
}
void add(int a,int b) {
   int c;
   c = a+b;
   print(c);
}

La funzione precedente aggiunge due valori e produce 7 come output.

Programmazione orientata agli oggetti

Dart è un linguaggio orientato agli oggetti. Supporta funzionalità di programmazione orientata agli oggetti come classi, interfacce, ecc.

Una classe è un modello per la creazione di oggetti. Una definizione di classe include quanto segue:

  • Fields
  • Getters e setter
  • Constructors
  • Functions

Ora, creiamo una semplice classe usando le definizioni di cui sopra:

class Employee {
   String name;
   
   //getter method
   String get emp_name {
      return name;
   }
   //setter method
   void set emp_name(String name) {
      this.name = name;
   }
   //function definition
   void result() {
      print(name);
   }
}
void main() {
   //object creation
   Employee emp = new Employee();
   emp.name = "employee1";
   emp.result(); //function call
}