‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ 

Numéro 45 (15 novembre 2021)

Ouvrir la newsletter dans le navigateur

arrow

💙️ Soutenir la newsletter 💙️

arrow

Les actualités

Image Les résultats du sondage de satisfaction Flutter du troisième trimestre

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 flag_lng.

D'une manière générale sur la technologie Flutter Web, les améliorations souhaitées flag_lng 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 flag_lng 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 flag_lng, 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 flag_lng, mais je trouve que l'échantillon interrogé est tout de même très enthousiaste…

Image Ubuntu poursuit son adoption de Flutter

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 flag_lng 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 flag_lng (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 flag_lng sur GitHub, on remarque un projet nommé firmware-updater flag_lng. 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

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 flag_lng 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 flag_lng 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" flag_lng 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 flag_lng 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é

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 flag_lng 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 flag_lng 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 flag_lng 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 flag_lng !

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 flag_lng, 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 flag_lng)
  • 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

⚠️ [BREAKING CHANGE] Afin de mieux gérer les raccourcis via le Widget Actions flag_lng 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 flag_lng 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) flag_lng. 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 flag_lng et lié à Dart flag_lng. 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 flag_lng 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 flag_lng et qui a la particularité d'être simple à mettre en œuvre.

🪟 .NET MAUI (successeur de Xamarin.Forms) est disponible en Preview 10 flag_lng (nouvelles fonctionnalités et corrections de bugs flag_lng) 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 flag_lng. 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

Trucs & astuces

Le tweet

Twitter logo
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.
Image tweet

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

Lib flutter_gen

flutter_gen : Accéder à vos ressources de manière fiable

Android iOS Web Linux Mac Windows

Flutter est le framework multi-plateforme le plus récent et on s'attend à ce qu'il vienne gommer les erreurs faites par ses prédécesseurs. Autant ce paradigme se valide dans la majeure partie des cas, autant la gestion des assets est une véritable catastrophe. Le fait d'écrire en dur dans l'application l'emplacement des fichiers est une bombe à retardement, car il suffit de renommer un fichier pour que tout plante à l'exécution.

Pour éviter cela, Fluttergen flag_lng va regarder vos fichiers et générer automatiquement le code pour vous, qu'il s'agisse de fichiers (images, animations…), polices ou couleurs. Dépendant de build_runner, je vous conseille derry flag_lng présenté dans le dernier numéro flag_lng pour éviter tout problème.

Lib flutter_slidable

flutter_slidable : Le package désormais disponible en version 1.0

Android iOS Web Linux Mac Windows

Particulièrement utilisé sur iOS, le composant graphique consistant à afficher des actions qui se révèlent par un geste de swipe n'existe ni sur Cupertino, ni dans Material.

Grâce au fabuleux travail de Romain Rastel, une implémentation en Flutter flag_lng existe depuis 2018. Après avoir été mis en sommeil pendant quelques mois, une toute nouvelle version est disponible (1.0 🥳) et requiert une migration flag_lng.

Lib lucifer

lucifer : Un (énième) framework pour concevoir un serveur web

Android iOS Web Linux Mac Windows

Depuis la fin du support d'Aqueduct flag_lng, les frameworks, pour réaliser des serveurs en Dart, se sont multipliés, à tel point que devant un choix si pléthorique, on en vient à se demander que choisir.

La collection est agrémentée cette semaine de Lucifer flag_lng qui semble en même temps répondre au cahier des charges en termes de fonctionnalités, le tout dans une implémentation assez simple.

La vidéo

Image L'histoire d'Android

L'histoire d'Android

Romain Guy est le directeur d'ingénierie Toolkit sur Android chez Google. Il a la double particularité d'être français, et d'avoir travaillé sur le système d'exploitation dès le rachat de la société éponyme.

Dans cette vidéo, il revient sur les différentes versions du système en les agrémentant d'anecdotes. Vous apprendrez ainsi les challenges qu'il y a eu autour de la tablette Nexus 10, pourquoi certains éléments graphiques portent mal leur nom (ex : Spinner)… Bref, du contenu très enrichissant pendant près d'une heure (le reste étant des questions).

En parallèle, n'hésitez pas à vous procurer le livre "Androids: The Team That Built the Android Operating System" par Chet Haase flag_lng.

Les outils

Image Outil Axolo

Axolo : Lier Slack et GitHub

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é.

Image Outil Raspberry Pi Colocation

Raspberry Pi Colocation : Accéder à des Raspberry Pi hébergés dans une colocation allemande

Les Raspberry Pi sont ces petites cartes au rapport qualité/prix impressionnant (même si les tarifs vont augmenter flag_lng). Elles peuvent notamment vous servir pour déployer un serveur web (en Dart ou des BaaS façon AppWrite flag_lng), mais encore faut-il une connexion stable et un endroit pour les stocker chez vous. C'est le pari fou qu'ont fait ces Allemands dans leur colocation où vous pouvez soit utiliser une carte déjà déployée, soit envoyer la vôtre avec votre propre SSD !

Image Outil Scaphandre

Scaphandre : Mesurer la consommation énergétique

Alors que la COP26 s'est clôturée il y a quelques jours, cet outil permet d'obtenir des métriques sur la consommation électrique des services que vous avez déployés. Cela peut concerner des machines virtuelles sur Qemu/KVM, des serveurs en bare metal… Voici d'ailleurs un exemple de ce que vous pouvez obtenir flag_lng comme résultat.

Prochains évènements

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
Votre avis sur ce numéro
😍😆🙄😡👍👎