⬅️ Retour au sommaire Flutter
flutter doctor
flutter create mon_app
flutter pub get
pubspec.yaml
flutter pub add nom_du_package
flutter run
flutter devices
flutter test
flutter build apk --release
flutter build appbundle --release
flutter build ios --release
flutter clean
flutter analyze
// Variables var x = 10; int y = 5; final z = 3; const pi = 3.14; String? nullable; // peut être null nullable ??= "valeur par défaut"; // assigne seulement si null // Conditions & boucles if (x > 5) { } else if (x == 5) { } else { } for (var i = 0; i < 10; i++) { } for (final item in liste) { } while (condition) { } // Fonctions int addition(int a, int b) => a + b; // fonction fléchée void fn({required String nom, int age = 18}) { } // paramètres nommés void fn2([String? optionnel]) { } // paramètre positionnel optionnel // Collections List<int> liste = [1, 2, 3]; Map<String, int> map = {"a": 1, "b": 2}; Set<int> set = {1, 2, 3}; liste.map((e) => e * 2).where((e) => e > 2).toList(); // Classes class Animal { final String nom; Animal(this.nom); void crier() => print("$nom fait du bruit"); } class Chien extends Animal { Chien(super.nom); @override void crier() => print("$nom aboie"); } // Asynchrone Future<String> recupererDonnee() async { await Future.delayed(const Duration(seconds: 1)); return "Donnée"; }
Text
Icon
Image.network
Image.asset
Container
Row
Column
Stack
Expanded
Flexible
SizedBox
Padding
ListView.builder
GridView.builder
Scaffold
AppBar
Drawer
FloatingActionButton
ElevatedButton
TextButton
OutlinedButton
TextField
TextFormField
Form
Card
ListTile
CircularProgressIndicator
AlertDialog
SnackBar
FutureBuilder
Consumer<T>
ChangeNotifier
// Enregistrer ChangeNotifierProvider(create: (_) => MonProvider(), child: ...) MultiProvider(providers: [...], child: ...) // Lire (dans build, se reconstruit sur notifyListeners) context.watch<MonProvider>() // Lire (dans un callback, sans abonnement) context.read<MonProvider>() // Reconstruire seulement une sous-partie de l'arbre Consumer<MonProvider>(builder: (context, provider, child) => ...)
Navigator.push(context, MaterialPageRoute(builder: (_) => PageB())); Navigator.pop(context); Navigator.pop(context, valeurDeRetour); Navigator.pushReplacement(context, MaterialPageRoute(builder: (_) => PageB())); Navigator.pushNamed(context, '/route');
import 'package:http/http.dart' as http; import 'dart:convert'; final response = await http.get(Uri.parse(url)); final response = await http.post(Uri.parse(url), headers: {...}, body: jsonEncode({...})); final response = await http.put(Uri.parse(url), headers: {...}, body: jsonEncode({...})); final response = await http.delete(Uri.parse(url)); response.statusCode // 200, 201, 204, 400, 401, 404, 500... jsonDecode(response.body) jsonEncode(monObjet.toJson())
go_router
riverpod
dio
freezed
json_serializable
flutter_bloc
sqflite
drift
hive
isar
cached_network_image
flutter_launcher_icons
intl