<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - Dart</title>
		<link>https://www.developpez.net/forums/</link>
		<description>Forum sur développement Dart, langage de programmation Web développé par Google. Avant de poster : Cours Dart et FAQ Dart.</description>
		<language>fr</language>
		<lastBuildDate>Mon, 31 Aug 2026 20:46:57 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title>Forum du club des développeurs et IT Pro - Dart</title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title>Flutter 3.47, le kit de développement logiciel open source pour interfaces utilisateur, est disponible</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2185203&amp;goto=newpost</link>
			<pubDate>Tue, 18 Aug 2026 07:45:33 GMT</pubDate>
			<description>*Flutter 3.47, le kit de...</description>
			<content:encoded><![CDATA[<div><b><font size="4">Flutter 3.47, le kit de développement logiciel open source pour interfaces utilisateur créé par Google, dédié au développement multiplateforme, introduit des paquets d’interface utilisateur autonomes</font></b><br />
<br />
<b>Flutter 3.47 est disponible. Flutter est un kit de développement logiciel open source pour interfaces utilisateur créé par Google. Il permet de développer des applications multiplateformes à partir d’une base de code unique. Flutter 3.47 propose désormais des paquets d’interface utilisateur autonomes Material et Cupertino, permettant des mises à jour indépendantes des bibliothèques de conception en dehors du SDK principal. Le moteur de rendu Impeller est activé par défaut sur macOS, Windows et Linux, remplaçant Skia pour offrir des graphismes de bureau améliorés et des animations plus fluides.</b><br />
<br />
Flutter est un kit de développement logiciel open source pour interfaces utilisateur créé par Google. Il permet de développer des applications multiplateformes à partir d’une base de code unique pour le Web, Fuchsia, Android, iOS, Linux, macOS et Windows. Présenté pour la première fois en 2015, Flutter a été lancé en mai 2017. Flutter est utilisé en interne par Google dans des applications telles que Google Pay et Google Earth, ainsi que par d'autres développeurs de logiciels, notamment ByteDance et Alibaba.<br />
<br />
Flutter intègre son propre moteur de rendu qui transmet directement les données de pixels à l’écran. Cela contraste avec de nombreux autres frameworks d’interface utilisateur qui s’appuient sur la plateforme cible pour fournir un moteur de rendu, comme les applications Android natives qui s’appuient sur le SDK Android au niveau de l’appareil ou le SDK iOS qui utilise la pile d’interface utilisateur intégrée à la plateforme cible. Le contrôle exercé par Flutter sur son pipeline de rendu simplifie la prise en charge multiplateforme, car un code d’interface utilisateur identique peut être utilisé pour toutes les plateformes cibles. L’une des fonctionnalités clés de Flutter est le « hot reload », qui permet aux développeurs de voir instantanément les modifications apportées au code sans avoir à redémarrer l’application.<br />
<br />
Récemment, Flutter 3.47 est disponible, et propose désormais des paquets d’interface utilisateur autonomes Material et Cupertino, permettant des mises à jour indépendantes des bibliothèques de conception en dehors du SDK principal. Le moteur de rendu Impeller est activé par défaut sur macOS, Windows et Linux, remplaçant Skia pour offrir des graphismes de bureau améliorés et des animations plus fluides. Les aperçus de widgets ont atteint le stade de la version stable, ce qui rationalise le développement et les tests de l’interface utilisateur. Une prise en charge expérimentale de WebAssembly et toute une série d’améliorations spécifiques à chaque plateforme sont également incluses.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p678253d1787047619/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/1.jpg/" border="0" alt="Nom : 1.jpg
Affichages : 833
Taille : 38,6 Ko"  style="float: CONFIG" /></div><br />
Voici la présentation des principales nouveautés de Flutter 3.47 :<br />
<br />
<b><font size="3">Choisissez votre propre aventure UI</font></b><br />
<br />
La première étape vers un Flutter découplé est franchie : Material et Cupertino sont désormais disponibles sous forme de paquets autonomes !<br />
<br />
L’une des plus grandes forces de Flutter réside dans sa capacité à afficher des widgets Material et Cupertino au pixel près. Cependant, comme ces bibliothèques de design étaient historiquement intégrées directement au SDK principal, cela ralentissait leur développement et rendait plus difficile toute contribution ou mise à jour.<br />
<br />
Bien que le SDK principal inclue toujours ces bibliothèques dans cette version, vous pouvez désormais opter pour les paquets autonomes <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">material_ui</span> et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">cupertino_ui</span>, qui ont officiellement atteint la version 1.0 sur <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">pub.dev</span>.<br />
<br />
<b>Dissociation des feuilles de route de conception (option d’activation opt-in)</b><br />
<br />
En optant pour les systèmes de conception dissociés, vous prenez le contrôle de votre feuille de route de conception. Comme <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">material_ui</span> et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">cupertino_ui</span> sont désormais hébergés sur <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">pub.dev</span>, ils peuvent publier des corrections de bogues et de nouveaux composants selon leurs propres calendriers hebdomadaires, indépendamment des versions trimestrielles du SDK Flutter.<br />
<br />
Le découplage des systèmes de design nous apporte les avantages suivants :<br />
<br />
- Vous pouvez utiliser les derniers styles de widgets Cupertino et Material sans être obligé de mettre à jour l’intégralité de votre version du SDK Flutter.<br />
- Nous pouvons intégrer les contributions et les mises à jour plus rapidement et plus fréquemment.<br />
- Nous posons les bases d’un catalogue de widgets Flutter de base neutre en termes de style, ce qui facilitera la création de systèmes de conception personnalisés à l’avenir.<br />
<br />
<b>Comment migrer</b><br />
<br />
Pour migrer votre projet vers les nouveaux paquets autonomes, exécutez la commande suivante :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">dart fix --apply --code=migrate_design_widgets</code><hr />
</div><br />
<br />
Cet outil met automatiquement à jour vos importations depuis <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">package:flutter/material.dart</span> et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">package:flutter/cupertino.dart</span> vers les nouveaux paquets autonomes.<br />
<br />
Remarque : si l’outil de migration rencontre des problèmes lors de la mise à jour de votre fichier <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">pubspec.yaml</span> (un bug connu en cette phase précoce), vous pouvez y remédier en exécutant manuellement la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">flutter pub add material_ui</span> (et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">cupertino_ui</span> si vous l’utilisez), puis en relançant la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">dart fix --apply</span>.<br />
<br />
Les bibliothèques de design d’origine incluses dans le SDK de base devraient être officiellement dépréciées lors de la prochaine version stable d’automne, prévue en novembre. Si vous migrez un paquet au sein de l’écosystème, considérez ce passage aux paquets autonomes comme une mise à jour majeure.<br />
<br />
<b>Combler le fossé de la migration</b><br />
<br />
Pour faciliter la transition de l’écosystème vers les nouvelles bibliothèques de conception autonomes, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">material_ui</span> et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">cupertino_ui</span> sont fournis avec des utilitaires de migration. Le <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">MaterialUiCompatibilityBridge</span> permet à votre application de migrer immédiatement vers les paquets autonomes, même si certaines des dépendances de votre paquet utilisent encore des importations héritées du SDK de base.<br />
<br />
Par exemple, vous pouvez encapsuler votre application dans le pont de compatibilité :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">import</span> <span style="color: #FF0000;">'package:material_ui/material_ui.dart'</span>;
&nbsp;
<span style="color: #0000ff;">void</span> main<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
  runApp<span class="br0">&#40;</span><span style="color: #0000ff;">const</span> MyApp<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;
<span class="br0">&#125;</span>
&nbsp;
<span style="color: #0000ff;">class</span> MyApp <span style="color: #0000ff;">extends</span> StatelessWidget <span class="br0">&#123;</span>
  <span style="color: #0000ff;">const</span> MyApp<span class="br0">&#40;</span><span class="br0">&#123;</span><span style="color: #0000ff;">super</span>.key<span class="br0">&#125;</span><span class="br0">&#41;</span>;
&nbsp;
  <span style="color: #339933;">@override</span>
  Widget build<span class="br0">&#40;</span>BuildContext context<span class="br0">&#41;</span> <span class="br0">&#123;</span>
    <span style="color: #0000ff;">return</span> MaterialApp<span class="br0">&#40;</span>
      theme: ThemeData<span class="br0">&#40;</span>
        colorScheme: ColorScheme.fromSeed<span class="br0">&#40;</span>seedColor: <span style="color: #0000ff;">const</span> Color<span class="br0">&#40;</span><span style="color: #cc66cc;">0xFF6750A4</span><span class="br0">&#41;</span><span class="br0">&#41;</span>,
      <span class="br0">&#41;</span>,
      builder: <span class="br0">&#40;</span>BuildContext context, Widget? child<span class="br0">&#41;</span> <span class="br0">&#123;</span>
        <span style="color: #0000ff;">return</span> MaterialUiCompatibilityBridge<span class="br0">&#40;</span>child: child!<span class="br0">&#41;</span>;
      <span class="br0">&#125;</span>,
      home: <span style="color: #0000ff;">const</span> HomeScreen<span class="br0">&#40;</span><span class="br0">&#41;</span>,
    <span class="br0">&#41;</span>;
  <span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><br />
<br />
<b>Localisations dissociées</b><br />
<br />
Dans le cadre de cette transition, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">flutter_localizations</span> a également été dissocié. Les délégués de localisation et les chaînes traduites pour les widgets Material et Cupertino se trouvent désormais respectivement dans <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">package:material_ui</span> et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">package:cupertino_ui</span>.<br />
<br />
Avant :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">import</span> <span style="color: #FF0000;">'package:flutter_localizations/flutter_localizations.dart'</span>;
<span style="color: #0000ff;">import</span> <span style="color: #FF0000;">'package:flutter/material.dart'</span>;
&nbsp;
<span style="color: #808080;">// ...</span>
localizationsDelegates: <span style="color: #0000ff;">const</span> &lt;LocalizationsDelegate&lt;<span style="color: #0000ff;">dynamic</span>&gt;&gt;<span class="br0">&#91;</span>
  GlobalCupertinoLocalizations.delegate,
  GlobalMaterialLocalizations.delegate,
  GlobalWidgetsLocalizations.delegate,
<span class="br0">&#93;</span>,</pre></td></tr></table></code><hr />
</div><br />
<br />
Après :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">import</span> <span style="color: #FF0000;">'package:material_ui/material_ui.dart'</span>;
&nbsp;
<span style="color: #808080;">// ...</span>
localizationsDelegates: GlobalMaterialLocalizations.delegates,</pre></td></tr></table></code><hr />
</div><br />
<br />
Définir <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">localizationsDelegates</span> sur <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">GlobalMaterialLocalizations.delegates</span> inclut désormais également les délégués Cupertino et Widgets, ce qui simplifie votre configuration.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p678254d1787047624/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/2.jpg/" border="0" alt="Nom : 2.jpg
Affichages : 770
Taille : 61,0 Ko"  style="float: CONFIG" /></div><br />
<b>Ouvert aux contributions</b><br />
<br />
En gelant les contributions aux bibliothèques Material et Cupertino en avril dernier, nous avons pu garantir une migration en douceur. Les bibliothèques qui vous attendent dans <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">material_ui</span> et <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">cupertino_ui</span> sont les mêmes que celles que vous utilisez déjà.<br />
<br />
Maintenant que nous sommes prêts à lever ce gel, attendez-vous à ce que davantage de corrections et de fonctionnalités soient déployées régulièrement dans les nouveaux paquets, avec des versions actuellement prévues chaque semaine. Nous sommes également ravis d’ouvrir officiellement ces paquets aux contributions de la communauté.<br />
<br />
<b><font size="3">Se préparer à la prochaine vague de mises à jour Apple</font></b><br />
<br />
Avec l’arrivée prévue cet automne de Xcode 27, iOS 27 et macOS 27, nous nous sommes fortement attachés à faire en sorte que Flutter soit prêt pour les mises à jour à venir. Afin d’éviter à vos utilisateurs toute mauvaise surprise dès le premier jour, nous vous recommandons de tester dès maintenant vos applications avec les versions bêta d’Apple.<br />
<br />
De plus, pour prendre en charge Xcode 27, les versions minimales prises en charge du système d’exploitation ont été revues à la hausse :<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p678255d1787047628/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/3.jpg/" border="0" alt="Nom : 3.jpg
Affichages : 768
Taille : 12,4 Ko"  style="float: CONFIG" /></div><br />
<b>Obligation relative au cycle de vie UIScene</b><br />
<br />
Le SDK iOS 27 impose désormais le cycle de vie <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">UIScene</span> pour toutes les applications basées sur UIKit. Les applications créées avec Xcode 27 qui n’adoptent pas <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">UIScene</span> ne pourront pas se lancer au démarrage.<br />
<br />
Pour la plupart des applications, la CLI Flutter gère automatiquement cette migration lors de la compilation. Cependant, une migration manuelle est nécessaire si votre <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">AppDelegate</span> contient du code natif personnalisé ou si vous utilisez des plugins qui s’appuient encore sur l’ancien cycle de vie de l’application. Dans ces cas-là, vous devez effectuer la migration manuellement en suivant le guide d’adoption d’UIScene/Delegate.<br />
<br />
<b>Fin progressive de la prise en charge des Mac Intel</b><br />
<br />
Conformément à la transition d’Apple vers Apple Silicon, Flutter met progressivement fin à la prise en charge des Mac équipés de processeurs Intel. Nous avons désactivé les exécutions de tests automatisés sur le matériel Intel, et la CLI Flutter affiche désormais des avertissements lors de la compilation sur des hôtes Intel ou lorsque l’application cible deux architectures. Ces avertissements deviendront des erreurs dans une prochaine version.<br />
<br />
Vous pouvez choisir dès maintenant de compiler des applications macOS exclusivement pour ARM64 en exécutant la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">flutter config --enable-macos-arm64-only</span>.<br />
<br />
<b>Progrès concernant Swift Package Manager</b><br />
<br />
La communauté a réalisé des progrès incroyables dans la transition vers Swift Package Manager : 92 des 100 principaux plugins iOS ont désormais été migrés. Si vous aviez précédemment désactivé Swift Package Manager, vous pouvez l’essayer à nouveau en exécutant la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">flutter config --enable-swift-package-manager</span>.<br />
<br />
CocoaPods étant désormais en mode de maintenance, les plugins qui ne migrent pas vers SwiftPM cesseront à terme de fonctionner. Les plugins non migrés obtiennent également des scores <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">pub.dev</span> plus faibles. <br />
<br />
Cette version propose également des temps de compilation optimisés avec des améliorations des pipelines de compilation en filtrant les schémas de paquets SwiftPM inutiles dès le début du processus de compilation.<br />
<br />
<b><font size="3">Cap sur Wasm par défaut</font></b><br />
<br />
Nous travaillons activement à l’activation par défaut de WebAssembly (Wasm) pour les applications web Flutter, afin d’apporter des performances proches de celles des applications natives au navigateur. Si vous n’avez pas encore testé vos applications web avec Wasm, vous pouvez l’activer dès aujourd’hui en passant l’indicateur <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">--wasm</span> à votre commande de compilation de version :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">flutter build web --release --wasm</code><hr />
</div><br />
<br />
Alors que vous vous préparez à cette transition, gardez à l’esprit que Wasm nécessite la migration de votre base de code vers le nouveau paquet d’interopérabilité JS (<span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">package:web</span>), car l’ancienne bibliothèque <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">dart:html</span> n’est plus prise en charge. La mise à jour des dépendances de paquets de votre projet résout souvent automatiquement ces problèmes d’interopérabilité hérités.<br />
<br />
Pour faciliter la mise à l’échelle des applications web de grande envergure, cette version introduit également une prise en charge expérimentale du chargement différé sur Wasm. Disponible via un indicateur sur le canal principal, cette fonctionnalité vous permet de diviser votre application Wasm en modules plus petits chargés de manière différée, optimisant ainsi les temps de chargement initiaux :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">flutter build web --release --wasm --enable-wasm-deferred-loading</code><hr />
</div><br />
<br />
<b><font size="3">Les graphismes modernes font leur entrée sur les ordinateurs de bureau avec Impeller</font></b><br />
<br />
Nous nous engageons à faire des plateformes de bureau des cibles de premier ordre pour les graphismes hautes performances. Dans Flutter 3.47, Impeller devient le moteur de rendu par défaut pour macOS, Windows et Linux.<br />
<br />
Si vous ne connaissez pas encore Impeller, il s’agit du moteur de rendu de nouvelle génération de Flutter, entièrement conçu pour remplacer Skia. En s’appuyant sur les API matérielles modernes (telles que Metal sur macOS et Vulkan sur Windows et Linux), Impeller compile un ensemble fixe de shaders au moment de la compilation plutôt que de les compiler dynamiquement lors de l’exécution. Cela élimine le bref à-coup, appelé « shader compilation jank », qui survient lors de la première lecture d’une animation, offrant ainsi des transitions fluides et constantes dès la toute première image. Pour en savoir plus, consultez la documentation sur le moteur de rendu Impeller.<br />
<br />
Si vous devez désactiver temporairement Impeller, procédez comme suit :<br />
<br />
- macOS : définissez <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">FLTEnableImpeller</span> sur <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"><span style="color: #0000ff;">false</span></span> dans <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">Info.plist</span>.<br />
- Windows : ajoutez <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">project.set_impeller_switch<span class="br0">&#40;</span>flutter::ImpellerSwitch::Disabled<span class="br0">&#41;</span></span> dans <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">main.cpp</span>.<br />
- Linux : appelez <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">fl_dart_project_set_enable_impeller<span class="br0">&#40;</span>project, FALSE<span class="br0">&#41;</span></span> dans <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">my_application.cc</span>.<br />
<br />
Les options de repli seront supprimées dans une prochaine version ; veuillez donc signaler tout bug si vous devez revenir à l’utilisation de Skia. De plus, la prise en charge des couleurs à large gamme (Wide Gamut Color) est désormais activée par défaut sur macOS, offrant un rendu des couleurs riche, éclatant et précis sur le matériel pris en charge.<br />
<br />
<b>Progrès en matière de gestion multi-fenêtres expérimentale</b><br />
<br />
En partenariat avec Canonical, nous étendons nos API expérimentales de gestion des fenêtres sur bureau. Linux et Windows prennent désormais en charge les fenêtres contextuelles, ce qui vous permet de créer des menus contextuels et des palettes d’outils natifs.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p678256d1787047632/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/4.jpg/" border="0" alt="Nom : 4.jpg
Affichages : 70
Taille : 46,4 Ko"  style="float: CONFIG" /></div><br />
Vous pouvez désormais interroger la propriété <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">windowHandle</span> sur les contrôleurs spécifiques à une plateforme pour obtenir un pointeur direct vers la fenêtre native sous-jacente (<span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">HWND</span>, <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">NSWindow</span> ou <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">GtkWindow</span>). Cela permet d'accéder à des fonctionnalités natives avancées, telles que les volets ancrables sous Windows.<br />
<br />
Nous avons également corrigé plusieurs bogues liés au focus et à la réalisation des fenêtres. Sous Windows, l’activation d’une fenêtre ne fait plus remonter les fenêtres en arrière-plan ni ne récupère le focus lors de la reprise de l’application.<br />
<br />
Sous Linux, la création de plusieurs fenêtres réalise désormais explicitement les fenêtres avant qu’elles ne reçoivent leur première image du compositeur, ce qui corrige les avertissements de rendu précoce et les assertions du compositeur.<br />
<br />
Nous avons également ajouté une nouvelle API « sized-to-content » qui vous permet de créer des fenêtres standard et des fenêtres de dialogue dont la taille s’adapte automatiquement à leur contenu.<br />
<br />
<b>Variantes pour ordinateur de bureau</b><br />
<br />
Windows et Linux prennent désormais en charge les variantes Flutter.<br />
<br />
Par exemple, votre fichier <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">pubspec.yaml</span> peut utiliser des ressources différentes selon les variantes :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br /></div></td><td valign="top"><pre style="margin: 0">flutter:
  assets:
    - path: assets/flavor_a/images
      flavors:
        - flavor_a
    - path: assets/flavor_b/images
      flavors:
        - flavor_c</pre></td></tr></table></code><hr />
</div><br />
<br />
Utilisez l’option <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">--flavor</span> pour spécifier votre variante. Par exemple :<br />
<br />
- <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">flutter build windows --flavor flavor_a</span>,<br />
- <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">flutter build linux --flavor flavor_a</span>.<br />
<br />
<b>Un texte plus net sur ordinateur</b><br />
<br />
Les écrans d’ordinateur ont souvent une densité de pixels inférieure à celle des écrans mobiles, mais disposent d’une plus grande puissance de calcul graphique. Pour offrir un texte plus net et des courbes vectorielles plus précises sur ordinateur, le moteur Flutter utilisant Impeller recourt désormais au rendu SDF (Signed Distance Function) sous macOS, Linux et Windows.<br />
<br />
<b>Source</b> : <a rel="nofollow" href="https://flutter.dev/blog/whats-new-in-flutter-3-47" target="_blank">Flutter 3.47</a><br />
<br />
<b>Et vous ?</b><br />
<br />
:fleche: Pensez-vous que cette version est crédible ou pertinente ?<br />
:fleche: Quel est votre avis sur le sujet ?<br />
<br />
<b>Voir aussi :</b><br />
<br />
:fleche: <a href="https://programmation.developpez.com/actu/340801/Google-publie-Flutter-3-7-et-evoque-l-avenir-du-framework-de-developpement-d-applications-cette-version-ameliore-le-support-de-Material-You-les-performances-et-la-gestion-de-la-memoire/" target="_blank">Google publie Flutter 3.7 et évoque l'avenir du framework de développement d'applications. Cette version améliore le support de Material You, les performances et la gestion de la mémoire</a><br />
<br />
:fleche: <a href="https://dart.developpez.com/actu/364242/-Flock-en-tant-que-nouveau-Flutterplus-Fork-du-kit-de-developpement-logiciel-d-interface-utilisateur-open-source-Flutter-pour-aider-a-etendre-la-main-d-oeuvre-de-Flutter-et-accelerer-le-developpement/" target="_blank">&quot;Flock&quot; en tant que nouveau &quot;Flutter+&quot; : Fork du kit de développement logiciel d'interface utilisateur open-source Flutter? pour aider à étendre la main d'œuvre de Flutter et accélérer le développement</a><br />
<br />
:fleche: <a href="https://programmation.developpez.com/actu/357732/Flutter-le-framework-de-developpement-d-applications-multiplateformes-est-il-sur-le-point-de-disparaitre-Flutter-remplit-il-toujours-son-role-chez-Google/" target="_blank">Flutter, le framework de développement d'applications multiplateformes, est-il sur le point de disparaître ? Flutter remplit-il toujours son rôle chez Google ?</a></div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p678253d1787047619/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/1.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p678254d1787047624/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/2.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p678255d1787047628/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/3.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p678256d1787047632/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/4.jpg/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1998/javascript/dart/">Dart</category>
			<dc:creator>Jade Emy</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2185203/javascript/dart/flutter-3-47-kit-developpement-logiciel-open-source-interfaces-utilisateur-disponible/</guid>
		</item>
	</channel>
</rss>
