|
Ouvrir la newsletter dans le navigateur |
![arrow](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/50536961-81f5-4126-9737-079f8f73efed.png) |
|
|
|
💙️ Soutenir la newsletter 💙️ |
![arrow](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/50536961-81f5-4126-9737-079f8f73efed.png) |
|
|
|
|
![Image Les résultats du sondage de satisfaction Flutter du troisième trimestre](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/64aa5420-289e-e374-8af7-29af647790c5.png) |
![Image Les résultats du sondage de satisfaction Flutter du troisième trimestre](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/64aa5420-289e-e374-8af7-29af647790c5.png) |
|
Comme chaque trimestre, Google interroge les développeurs Flutter afin de réajuster sa feuille de route. Dans cette itération l'accent est porté sur Flutter pour le web, où les projets ciblant cette plateforme représentent désormais 12% des lancements.
Qualifié de stable depuis le mois de mars 2021, 86 points de pourcentage des interrogés se montrent satisfaits de cette technologie (63% positivement + 23% très satisfaits) et le taux monte même à 90 points de pourcentage, pour ce qui est des performances.
Les axes d'améliorations Certes ces taux sont élevés, mais il en ressort que le temps de chargement initial (48%) et le scroll (32%) restent les deux principales problématiques pour ce qui est des performances .
D'une manière générale sur la technologie Flutter Web, les améliorations souhaitées se trouvent autour du SEO (36%), de la taille du livrable (27%), le scroll (24%), l'exécution du code en arrière-plan (23%) et la possibilité d'avoir une fonctionnalité de type add-to-app (23%)
La documentation est satisfaisante D'une manière générale, l'accès au code source est un vrai point positif avec des recherches chaque jour pour 37% des développeurs, voire d'une manière générale 70 points de pourcentage qui y accèdent chaque semaine. Pour l'essentiel , il s'agit de comprendre l'implémentation et les différents paramètres offerts. La proportion copiant/collant des exemples de code tournent autour des 20%.
D'autres statistiques sont à découvrir dans le sondage du troisième trimestre , mais je trouve que l'échantillon interrogé est tout de même très enthousiaste… |
|
|
![Image Ubuntu poursuit son adoption de Flutter](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/bb7c5f36-23dc-24d5-ff01-a2e7c09412f1.png) |
![Image Ubuntu poursuit son adoption de Flutter](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/bb7c5f36-23dc-24d5-ff01-a2e7c09412f1.png) |
|
Une liaison toujours plus proche entre Flutter et Canonical Après un premier succès en recréant l'installateur graphique d'Ubuntu avec Flutter, Canonical, la société derrière cette distribution Linux à succès, a annoncé utiliser le framework comme référence pour tous ses nouveaux projets. C'est ainsi que l'application Paramètres du système est en cours de basculement et que les prochains développements suivront le même chemin.
Un outil de mise à jour de firmware fwupd est un outil pour mettre à jour les firmwares de vos ordinateurs directement depuis Linux (ex : votre carte réseau, une manette 8BitDo…). Conjointement à cet outil, on retrouve LVFS (pour Linux Vendor Firmware Service) qui permet aux fabricants de mettre en ligne de manière sécurisée lesdits firmwares. Jusqu'à présent un outil graphique pour Gnome était mis à disposition.
Une interface graphique en Flutter En naviguant sur les différents repos de Canonical sur GitHub, on remarque un projet nommé firmware-updater . Il semble vouloir offrir une alternative à l'application Gnome, afin d'offrir une meilleure intégration au système.
Une première copie d'écran (en une de cette actualité) a, par ailleurs, été partagée et montre que le projet n'en est encore qu'à ses balbutiements. Selon les informations glanées ici-et-là, le projet a débuté en août et devrait probablement être distribué sur snap à terme. |
|
|
![Image Les annonces du Firebase Summit](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/3874e5a1-74f2-813b-f79e-d973ca541f77.png) |
![Image Les annonces du Firebase Summit](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/3874e5a1-74f2-813b-f79e-d973ca541f77.png) |
|
Le 10 novembre, Firebase organisait son événement annuel Firebase Summit. Une nouvelle fois décliné au format 100% en ligne, plusieurs annonces sont intéressantes pour les développeurs Flutter.
tvOS et macOS en bêta Plutôt orienté mobile, Firebase s'ouvre maintenant aux box TV d'Apple, ainsi qu'à macOS. Vous y retrouverez notamment l'accès à Crashlytics pour identifier rapidement des bugs.
Le DartPad en partie compatible Firebase Les dépendances utilisables sur le DartPad sont relativement limitées, mais des nouvelles arrivent au catalogue : celles pour les bases de données (Database & Cloud Firestore), le push via FCM, ou encore pour l'authentification via Firebase. Vous avez même un exemple où vous pouvez tester le fonctionnement de Cloud Firestore + Auth.
Une fiche pour le Google Play Dans quelques mois, le Google Play affichera aux utilisateurs une nouvelle section "Data Safety" dans laquelle chaque éditeur devra faire preuve de transparence sur la manière dont les données sont collectées et (éventuellement) partagées. Si ces dernières sont stockées et gérées dans Firebase, une documentation est maintenant à disposition pour vous aider à remplir le formulaire.
Mais aussi… Cela avait déjà été partagé dans les précédents numéros de la newsletter, mais on retrouve dans l'outil Performance Monitoring des alertes lorsque certains seuils sont atteints (ex : le lancement de l'application devient tout à coup plus lent), dans Crashlytics des alertes, en cas de message "L'application ne répond plus" sur Android ou encore la fonctionnalité des signaux et enfin, dans App Check le support de Cloud Firestore. |
|
|
![Image Apple au cœur de l'actualité](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/d7e25776-941f-7b68-60e6-eddbfbbdaf61.png) |
![Image Apple au cœur de l'actualité](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/d7e25776-941f-7b68-60e6-eddbfbbdaf61.png) |
|
Apple a marqué la semaine dernière avec de nombreuses actualités. En voici un résumé des principales :
Apple sommé d'autoriser les solutions alternatives de paiement La première partie du fameux procès Apple vs Epic Games s'est refermée il y a quelques semaines. Les deux parties ayant fait appel, un deuxième acte aura lieu ultérieurement. De ce fait, Apple pensait pouvoir proliférer dans son coin, en ayant demandé de suspendre l'injection visant à autoriser les développeurs d'applications à ne plus passer par son propre système de paiement. Mais il n'en est rien, la justice américaine n'accorde aucun délai et dès le 9 décembre, les développeurs devront pouvoir faire autrement.
Apple toujours contre le "sideloading" Apple ne veut pas plier : l'installation d'applications sur iOS doit uniquement passer par l'App Store. Le sideloading (= en dehors de la boutique d'applications) est une marotte d'Epic Games qui souhaiterait offrir une alternative avec des frais moins élevés.
Cette semaine, Tim Cook a une nouvelle fois réitéré sa désapprobation en indiquant "si vous voulez sideloader, vous pouvez choisir un téléphone Android". "De notre point de vue, ce serait comme obliger un fabricant de voitures à ne pas installer d'Airbags ou de ceintures de sécurité dans ses véhicules. Ce serait inimaginable, ce serait trop risqué."
Le programme Apple Business Essentials Destiné aux entreprises de moins de 500 salariés, le programme est un service tout-en-un qui recouvre gestion de flotte, un support 24/7 et stockage de données sur iCloud. Disponible pour le moment uniquement aux États-Unis, l'Apple Business Essentials commence à partir de 2,99$/mois/terminal ou 6,99€/mois/utilisateur (jusqu'à 3 terminaux). Suffisamment rare pour être noté, le service est pour l'heure qualifié de bêta et il est gratuit !
L'App Store tournera même pendant les fêtes Apple va travailler pendant les fêtes de Thanksgiving (24 au 28/11) et de Noël (23 au 27/12) cette année, puisqu'il sera possible de soumettre des applications sur l'App Store sur ces deux périodes. Ce n'était pas le cas les années précédentes. |
|
|
Le reste de l'actu en bref' |
|
|
📅 La semaine prochaine (le lundi 22), ce sera le grand retour des Flutter App Clinic. N'hésitez pas à proposer votre application ! |
|
![](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/a1f693c7-c58f-f7a4-491d-940625ba30a0.png) |
La réalisation de cette newsletter nécessite plusieurs heures chaque semaine. Vous voulez soutenir Flutter Digest en donnant à partir d’un euro sur Tipee ? En contrepartie : vous n’aurez jamais de pub et vous recevrez la newsletter en avant première !
|
Soutenir sur Tipee
|
⏫ Une nouvelle version bêta de Flutter est disponible : 2.8.0-3.1-pre. La version stable se rapproche ! |
|
✨ Du côté des Pull Requests Flutter, on peut noter :
- Il ne faudra finalement pas compter sur la classe AppModel
, mais SharedAppData, car le nom était trop commun. Pour rappel, elle permet de facilement propager des données sous la forme clé/valeur aux widgets enfant (PR #93175 ) - Si vous utilisez Visual Studio 2022, l'exécution d'applications Flutter ne fonctionnait pas, contrairement à VS 2019. C'est désormais corrigé avec la PR #85922
![flag_lng](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/20c4c3c9-3f18-8102-ff38-aee2da8dd3c6.png) |
|
⚠️ [BREAKING CHANGE] Afin de mieux gérer les raccourcis via le Widget Actions sur les EditableText/TextField, la manière de remplir le texte d'un champ va changer dans la prochaine version de Flutter (2.8 normalement). La documentation n'est pas encore en ligne sur le site officiel, mais vous pouvez la consulter ici et anticiper le changement. |
|
🐞 Renommer un dossier n'est pas une chose si aisée à faire, comme le montre ce bug identifié en Dart (GITHUB) . En effet, sur Windows, l'appel à Directory.rename() va écraser le dossier de destination qu'il contienne des données ou non. Ce comportement va être supprimé. |
|
🐞 Après la sortie tant attendue de Riverpod 1.0, un bug est apparu uniquement sur la partie web et lié à Dart . Réfléchissez-donc bien avant de procéder à la migration. |
|
⛱️ Le programme Google Summer of Code finance chaque été des projets opensource par des étudiants. Google vient d'annoncer alléger ses critères d'exigibilité, puisque désormais n'importe quelle personne majeure (18 ans ou plus) pourra y participer. |
|
💻 Vous avez un Mac M1 et avez besoin d'y lancer Ubuntu ? Certes, les outils de virtualisation comme Virtualbox commencent à le gérer, mais cela reste des previews. Canonical a annoncé la semaine dernière sa solution stable & gratuite nommée Multipass et qui a la particularité d'être simple à mettre en œuvre. |
|
🪟 .NET MAUI (successeur de Xamarin.Forms) est disponible en Preview 10 (nouvelles fonctionnalités et corrections de bugs ) et se base sur .NET 6.0.
À la question de choisir entre Xamarin.Forms ou .NET MAUI… la réponse est… Flutter. Non, plus sérieusement, Microsoft indique qu'à l'exception des projets longs (4 mois au minimum), il est encore trop tôt pour s'y mettre. |
|
💡 L'API pour contrôler les ampoules Philips Hue (ou Signify) a été entièrement refaite dans une V2 . Elle gère désormais les scènes dynamiques ou le système de dégradés. |
|
🇫🇷 Le ministère français de la Transformation et de la Fonction publique a mis en ligne la plateforme code.gouv.fr qui réunit plus de 9 000 dépôts de code en opensource. |
|
📚 Recommandation de lecture : Nicolas Sabatier a écrit un livre autour de l'histoire d'Apple et publié aux éditions Omake books. Un excellent ouvrage qui revient, autant sur les succès, que sur les échecs de l'entreprise américaine. |
| |
Articles & tutoriaux Flutter |
|
|
|
L'application Shortcut Keeper est disponible sur macOS & Windows et sert de mémo aux différents raccourcis clavier que vous pouvez utiliser au quotidien. Son développeur, Minas Giannekas, a fait le choix de Flutter pour le développer et vous noterez que chaque plateforme a ses propres codes graphiques (Fluent Design & Human Interface). Dans cet article, il revient sur la manière dont il a procédé pour y parvenir. |
|
|
|
|
|
Pour poursuivre le précédent article, votre application doit certes s'adapter visuellement à la plateforme, mais elle ne doit pas oublier que l'utilisateur peut interagir de différentes manières. Support du défilement à la souris, raccourcis clavier, gestion de l'état "hover"… autant d'éléments qu'il ne faut pas négliger même sur Android et iOS, puisque le tactile n'est pas toujours le vecteur principal d'interaction. |
|
|
|
|
|
En Flutter, vous pouvez utiliser des Isolate pour exécuter du code en parallèle lorsque des tâches "intensives" le requièrent. Malheureusement le système ne fonctionne pas sur le web. Vous pouvez alors vous tourner vers des WebWorker…… ou du Web Assembly. Vous apprendrez dans cet article comment utiliser ce système fort prometteur. |
|
|
|
|
|
Vous utilisez Dio et curl ? Grâce au package curl_logger_dio_interceptor , vous avez la possibilité d'exporter les requêtes faites par Dio au "format" curl. Dans cet article, vous apprendrez comment le mettre en place, même si entre nous, il n'y a rien de très compliqué. |
|
|
|
|
|
GitHub Copilot est un outil fondé sur une intelligence artificielle, vous permettant d'avoir des suggestions de code souvent bluffantes. Si vous développez un plugin Flutter avec du code en Swift, cet article vous explique comment le lier à VSCode. |
|
|
| |
|
|
|
Les dix dernières commandes lancées sur un répertoire |
Si vous utilisez ZSH comme interpréteur de commande pour votre shell, vous pouvez utiliser jog qui offre un historique non pas général (les x dernières commandes), mais plutôt par dossier. Pratique pour s'y retrouver entre projets. |
|
|
|
|
Userflow sur Chrome : tout est déjà dans le navigateur |
Pour vos sites en Flutter Web, il est toujours pratique d'avoir des vidéos de ce que font vos utilisateurs. Vous avez peut-être pensé à intégrer un service tiers, mais en réalité Chrome sait déjà tout faire par lui même … ou tout au moins saura le faire, puisqu'il s'agit d'une fonction de Chrome 97 (la version stable est aujourd'hui à 95). |
|
|
|
|
Des dégradés plus réalistes |
Vous trouvez que les dégradés sur Flutter ne sont pas naturels, car ils s'affichent sous la forme de bandes ? Vous pouvez alors utiliser l'attribut enableDithering de la classe dart:ui/Paint. Attention à bien tester, car cela peut avoir un impact sur les performances selon les terminaux. |
|
|
| |
|
|
|
![Twitter logo](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/aa36e4b1-c700-4ca2-b298-f9d29bd2322d.png) |
|
I decided to check out CS193p, and I already learned a new thing just a few minutes in. Turns out, the canonical way to store all of your projects is by creating a ~/Developer folder. Finder has a special icon just for it.
|
|
|
|
C'est une petite astuce intéressante pour les utilisateurs du Finder sur macOS. Si vous créez un dossier nommé Developer dans votre répertoire personnel, il prendra automatiquement l'icône correspondante. De cette manière, si vous vous posiez la question de l'emplacement de vos dossiers & fichiers liés au développement, Apple vous en donne la réponse ! |
|
|
Bibliothèques Dart/Flutter |
|
|
|
|
|
|
|
|
![Image Outil Axolo](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/1d6fc552-5bed-4099-0b1a-3a5635eecdda.png) |
![Image Axolo](https://mcusercontent.com/680a000cb817c26ca49ef8da1/images/1d6fc552-5bed-4099-0b1a-3a5635eecdda.png) |
|
|
Axolo est un outil gratuit permettant d'accélérer et fluidifier la validation des Pull Requests. Pour cela, dès qu'une nouvelle est mise en ligne sur GitHub, un channel Slack éphémère est créé. Cela permet d'y retrouver les commentaires, résultats des CI/CD… Selon Axolo (à prendre avec des pincettes donc), des gains de productivité de 30% sont à la clé. |
|
|
|
|
|
18 novembre |
Paris |
Dojo Snake |
|
19 novembre |
Lille, France |
Devfest Lille |
|
|
03-04 décembre |
En ligne |
Dart Up |
|
02-03 février |
En ligne & Oslo |
Flutter Vikings |
|
|
|