Introducció

En aquest tema, aprendrem sobre les variables i els tipus de dades en Dart, el llenguatge de programació utilitzat per Flutter. Les variables són fonamentals en qualsevol llenguatge de programació, ja que ens permeten emmagatzemar i manipular dades. Els tipus de dades defineixen el tipus de valors que una variable pot contenir.

Variables

Declaració de Variables

En Dart, podem declarar variables utilitzant les paraules clau var, final, o const. Aquí teniu una breu explicació de cadascuna:

  • var: Utilitzada per declarar una variable que pot canviar el seu valor.
  • final: Utilitzada per declarar una variable que només es pot assignar una vegada.
  • const: Utilitzada per declarar una variable constant en temps de compilació.

Exemples de Declaració

void main() {
  var name = 'John'; // Variable que pot canviar
  final age = 30; // Variable que no pot canviar després de ser assignada
  const pi = 3.14; // Variable constant en temps de compilació

  print(name); // Output: John
  print(age); // Output: 30
  print(pi); // Output: 3.14
}

Tipus de Dades

Dart és un llenguatge amb tipus de dades estàtics, però també pot inferir el tipus de dades automàticament. A continuació, es mostren els tipus de dades més comuns en Dart:

Tipus de Dades Bàsics

  1. int: Enter
  2. double: Número decimal
  3. String: Cadena de text
  4. bool: Booleà (true o false)
  5. List: Llista (array)
  6. Map: Mapa (diccionari)

Exemples de Tipus de Dades

void main() {
  int age = 25;
  double height = 5.9;
  String name = 'Alice';
  bool isStudent = true;
  List<String> colors = ['red', 'green', 'blue'];
  Map<String, int> scores = {'math': 90, 'science': 85};

  print(age); // Output: 25
  print(height); // Output: 5.9
  print(name); // Output: Alice
  print(isStudent); // Output: true
  print(colors); // Output: [red, green, blue]
  print(scores); // Output: {math: 90, science: 85}
}

Inferència de Tipus

Dart pot inferir el tipus de dades d'una variable basant-se en el valor assignat. Això significa que no sempre és necessari especificar el tipus de dades explícitament.

Exemple d'Inferència de Tipus

void main() {
  var age = 25; // Dart infereix que age és de tipus int
  var height = 5.9; // Dart infereix que height és de tipus double
  var name = 'Alice'; // Dart infereix que name és de tipus String
  var isStudent = true; // Dart infereix que isStudent és de tipus bool

  print(age.runtimeType); // Output: int
  print(height.runtimeType); // Output: double
  print(name.runtimeType); // Output: String
  print(isStudent.runtimeType); // Output: bool
}

Exercicis Pràctics

Exercici 1

Declara una variable var anomenada city i assigna-li el valor "Barcelona". Després, imprimeix el valor de city.

void main() {
  var city = 'Barcelona';
  print(city); // Output: Barcelona
}

Exercici 2

Declara una variable final anomenada country i assigna-li el valor "Spain". Intenta canviar el valor de country després de la seva assignació i observa què passa.

void main() {
  final country = 'Spain';
  // country = 'France'; // Això donarà un error perquè country és final
  print(country); // Output: Spain
}

Exercici 3

Crea una llista de tres números enters i imprimeix el segon element de la llista.

void main() {
  List<int> numbers = [10, 20, 30];
  print(numbers[1]); // Output: 20
}

Resum

En aquesta secció, hem après sobre les variables i els tipus de dades en Dart. Hem vist com declarar variables utilitzant var, final, i const, i hem explorat els tipus de dades bàsics com int, double, String, bool, List, i Map. També hem vist com Dart pot inferir el tipus de dades automàticament. Finalment, hem practicat aquests conceptes amb alguns exercicis pràctics.

En el següent tema, explorarem les sentències de flux de control en Dart, que ens permetran prendre decisions i repetir accions en el nostre codi.

Curs de Desenvolupament Flutter

Mòdul 1: Introducció a Flutter

Mòdul 2: Conceptes Bàsics de Programació en Dart

Mòdul 3: Widgets de Flutter

Mòdul 4: Gestió de l'Estat

Mòdul 5: Navegació i Enrutament

Mòdul 6: Xarxes i APIs

Mòdul 7: Persistència i Emmagatzematge

Mòdul 8: Conceptes Avançats de Flutter

Mòdul 9: Proves i Depuració

Mòdul 10: Desplegament i Manteniment

Mòdul 11: Flutter per a Web i Escriptori

© Copyright 2024. Tots els drets reservats