Skip to main content

Flutter - PrĂ©requis et Installation đŸ› ïž

Avant de plonger dans le développement Flutter, il est essentiel de bien préparer ton environnement de développement. Cette étape déterminera ta productivité et la qualité de ton expérience de développement.

🎯 Vue d'ensemble des prĂ©requis

Flutter est un framework de développement mobile qui permet de créer des applications natives pour iOS et Android avec un seul code source. Pour développer efficacement, tu auras besoin :

  • đŸ’» Un environnement de dĂ©veloppement - IDE configurĂ© pour Flutter
  • đŸ“± Un moyen de tester - Émulateur ou device physique
  • 🔧 Les SDK nĂ©cessaires - Flutter, Android, et optionnellement iOS
  • ⚡ Une configuration optimisĂ©e - Pour des performances maximales

đŸ’» Choix de l'IDE

Android Studio (Recommandé) ⭐

Android Studio reste le choix de référence pour Flutter :

Avantages :

  • ✅ Support officiel Flutter - Plugins intĂ©grĂ©s
  • ✅ Outils Android intĂ©grĂ©s - SDK Manager, AVD Manager
  • ✅ DĂ©bogage avancĂ© - Layout Inspector, Memory Profiler
  • ✅ Émulateurs performants - AVD avec accĂ©lĂ©ration matĂ©rielle
  • ✅ AutocomplĂ©tion intelligente - Code insight et refactoring

Configuration recommandée :

# Plugins essentiels Ă  installer
- Flutter
- Dart
- Flutter Inspector
- Flutter Intl (pour l'internationalisation)
- Rainbow Brackets (lisibilité)

Alternatives populaires

Visual Studio Code

# Extensions essentielles
- Flutter
- Dart
- Flutter Widget Snippets
- Bracket Pair Colorizer
- GitLens

# Configuration settings.json
{
"dart.flutterSdkPath": "/path/to/flutter",
"dart.openDevTools": "flutter",
"dart.debugExternalLibraries": false,
"dart.debugSdkLibraries": false
}

IntelliJ IDEA

  • Excellent pour le dĂ©veloppement professionnel
  • Support multiplateforme intĂ©grĂ©
  • Outils de refactoring avancĂ©s

đŸ“± StratĂ©gies de test

Émulateurs vs Devices physiques

AspectÉmulateurDevice physique
PerformanceConvenableNative
Tests réseauLimitéRéel
SensorsSimulésRéels
CoûtGratuitAchat device
PortabilitéMaximumTransport requis

Configuration pour Android

Prérequis systÚme :

  • Mac ou PC (Windows/Linux)
  • 8 GB RAM minimum (16 GB recommandĂ©)
  • 50 GB d'espace disque libre
  • Android Studio
  • Émulateur Android ou device physique

Setup émulateur Android :

# Créer un AVD (Android Virtual Device)
# Dans Android Studio : Tools > AVD Manager > Create Virtual Device

# Recommandations émulateur :
- Device: Pixel 6 ou Pixel 7
- API Level: 33 (Android 13) ou plus récent
- ABI: x86_64 (pour performance)
- RAM: 4 GB minimum
- Storage: 8 GB minimum

Configuration pour iOS

Prérequis strictement Mac :

  • macOS 12.0 ou plus rĂ©cent
  • Xcode 14.0 ou plus rĂ©cent
  • iOS Simulator intĂ©grĂ©
  • Compte dĂ©veloppeur Apple (pour device physique)

Limitations importantes :

  • ⚠ Development iOS impossible sur PC/Linux
  • 💰 Compte dĂ©veloppeur Apple requis (99$/an) pour tester sur device physique
  • 🔒 Signature de code obligatoire pour distribution

🚀 Installation dĂ©taillĂ©e

Étape 1 : Flutter SDK

Installation sur macOS

# Option 1 : Téléchargement direct
curl -O https://storage.googleapis.com/flutter_infra_release/releases/stable/macos/flutter_macos_3.16.5-stable.zip
unzip flutter_macos_3.16.5-stable.zip
sudo mv flutter /usr/local/

# Option 2 : Avec Homebrew (recommandé)
brew install flutter

# Configurer PATH
echo 'export PATH="$PATH:/usr/local/flutter/bin"' >> ~/.zshrc
source ~/.zshrc

Installation sur Windows

# Télécharger Flutter SDK depuis https://docs.flutter.dev/get-started/install/windows
# Extraire dans C:\flutter
# Ajouter C:\flutter\bin au PATH systĂšme

# Vérification
flutter --version

Installation sur Linux

# Télécharger et extraire Flutter
wget https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.16.5-stable.tar.xz
tar xf flutter_linux_3.16.5-stable.tar.xz
sudo mv flutter /opt/

# Configurer PATH
echo 'export PATH="$PATH:/opt/flutter/bin"' >> ~/.bashrc
source ~/.bashrc

Étape 2 : Android Studio et SDK

# 1. Télécharger Android Studio
# https://developer.android.com/studio/

# 2. Installer les composants SDK nécessaires
# SDK Tools Ă  installer via SDK Manager :
- Android SDK Build-Tools
- Android SDK Command-line Tools
- Android Emulator
- Android SDK Platform-Tools
- Google USB Driver (Windows)

# 3. Configurer variables d'environnement
export ANDROID_HOME=$HOME/Android/Sdk # Linux/Mac
export ANDROID_HOME=%LOCALAPPDATA%\Android\Sdk # Windows

export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools

Étape 3 : Configuration iOS (Mac uniquement)

# 1. Installer Xcode depuis Mac App Store
# 2. Installer Xcode Command Line Tools
sudo xcode-select --install

# 3. Accepter les licences
sudo xcodebuild -license accept

# 4. Installer CocoaPods (gestionnaire de dépendances iOS)
sudo gem install cocoapods
pod setup

# 5. Configurer le simulateur iOS
open -a Simulator

Étape 4 : VĂ©rification de l'installation

# Diagnostic complet de l'installation
flutter doctor

# Résultat attendu :
✓ Flutter (Channel stable, 3.16.5)
✓ Android toolchain - develop for Android devices
✓ Xcode - develop for iOS and macOS # Mac uniquement
✓ Chrome - develop for the web
✓ Android Studio
✓ VS Code
✓ Connected device

Résolution des problÚmes courants :

# ProblĂšme licences Android
flutter doctor --android-licenses

# Réinstaller Flutter Doctor
flutter doctor -v

# Nettoyer le cache Flutter
flutter clean
flutter pub get

⚡ Optimisation de l'environnement

Configuration IDE optimisée

Android Studio

# Dans Android Studio > Preferences :

# 1. Augmenter la mémoire heap
Help > Edit Custom VM Options
-Xms2048m
-Xmx8192m

# 2. Activer le mode développeur
Appearance > System Settings > Android SDK > Enable Developer mode

# 3. Configurer l'émulateur
Tools > AVD Manager > Advanced Settings
- RAM: 4 GB
- VM Heap: 512 MB
- Graphics: Hardware - GLES 2.0

Performance du développement

# Activer hot reload avancé
flutter config --enable-web # Support web
flutter config --enable-windows-desktop # Support desktop

# Optimiser les builds
flutter build apk --split-per-abi # APK optimisé par architecture
flutter build appbundle # Format recommandé pour Play Store

Workflow de développement efficace

# Commandes essentielles Ă  connaĂźtre
flutter create mon_app # Créer nouveau projet
flutter run # Lancer en mode debug
flutter run --release # Lancer en mode release
flutter hot-reload # R pour recharger
flutter hot-restart # Ctrl+C puis flutter run

# Debugging
flutter analyze # Analyse statique du code
flutter test # Exécuter les tests
flutter logs # Voir les logs

đŸ› ïž Outils de dĂ©veloppement avancĂ©s

DevTools Flutter

# Lancer Flutter DevTools
flutter pub global activate devtools
flutter pub global run devtools

# Fonctionnalités clés :
- Widget Inspector (structure des widgets)
- Timeline View (performance)
- Memory View (gestion mémoire)
- Debugger (points d'arrĂȘt)
- Network View (requĂȘtes rĂ©seau)

Extensions et plugins utiles

Packages de développement

# pubspec.yaml - Dépendances de développement
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^3.0.0 # Linting Dart/Flutter
build_runner: ^2.3.3 # Génération de code
json_serializable: ^6.6.2 # Sérialisation JSON
mockito: ^5.4.0 # Mocking pour tests

Outils CI/CD

Codemagic (Recommandé)

# codemagic.yaml
workflows:
flutter-workflow:
environment:
flutter: stable
scripts:
- flutter test
- flutter build apk --release
- flutter build ios --release --no-codesign

GitHub Actions

# .github/workflows/flutter.yml
name: Flutter CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: subosito/flutter-action@v2
with:
flutter-version: '3.16.5'
- run: flutter test

📋 Checklist de prĂ©paration

✅ Installation complùte

  • Flutter SDK installĂ© et dans le PATH
  • Android Studio configurĂ© avec plugins Flutter/Dart
  • Android SDK et Build Tools installĂ©s
  • Émulateur Android créé et fonctionnel
  • Xcode installĂ© (Mac) avec simulateur iOS
  • flutter doctor sans erreurs critiques

✅ Environnement optimisĂ©

  • IDE configurĂ© avec thĂšme et raccourcis
  • Git configurĂ© pour versioning
  • DevTools Flutter activĂ©
  • Extensions/plugins de productivitĂ© installĂ©s
  • Workflow de build configurĂ©

✅ Test de l'environnement

  • CrĂ©ation d'un projet test rĂ©ussie
  • Build Android APK rĂ©ussi
  • Build iOS rĂ©ussi (Mac uniquement)
  • Hot reload fonctionnel
  • DĂ©bogage opĂ©rationnel

🚀 Projets d'entraünement

Projet 1 : Hello Flutter

// Créer une app simple pour tester l'environnement
flutter create hello_flutter
cd hello_flutter
flutter run

Projet 2 : Multi-platform

// Tester sur plusieurs plateformes
flutter run -d android # Android
flutter run -d ios # iOS (Mac uniquement)
flutter run -d chrome # Web
flutter run -d macos # Desktop Mac

Installation RĂ©ussie ! 🎉

Ton environnement Flutter est maintenant configurĂ© et optimisĂ© ! Tu es prĂȘt Ă  crĂ©er des applications mobiles performantes et multiplateformes. Cette base solide te permettra de dĂ©velopper efficacement et de rĂ©soudre rapidement les problĂšmes techniques.

🔗 Ressources essentielles

Un environnement bien configurĂ© est la fondation de tout dĂ©veloppement rĂ©ussi ! đŸ—ïž