|
|
|
Publicité Pour ne plus voir de publicités, soutenez-nous à partir de 1 €. |
Les actualités marquantes |
|
|
|
|
|
Ne vous précipitez pas trop vite, il s'agit d'une des futures annonces de la Google I/O.
Google I/O dans moins d'un mois Chaque année, Google organise au mois de mai une conférence dédiée aux développeurs. C'est l'occasion pour le géant américain d'annoncer tout un tas de nouveautés, y compris pour Flutter. Selon toute vraisemblance, une nouvelle version stable de Flutter devrait y être annoncée.
Après Windows, le support de macOS La version actuelle du framework (2.10) n'est pas très riche en nouveautés, mais qualifie désormais les applications Windows, de stables. Dans son annonce, Google indiquait que Linux et macOS devaient suivre dans "les prochains mois".
Et c'est macOS qui devrait prendre le flambeau puisqu'une Pull Request, validée il y a quelques jours, indique clairement : "Supprime la mention de qualité bêta pour macOS". Alors que Flutter bénéficie du support officiel de Microsoft et Canonical, l'intégration de macOS s'est faite sans grandes difficultés, car au final proche d'iOS. |
|
|
|
|
|
Le futur concurrent de Flutter, conçu par Microsoft, s'approche de la version stable.
Microsoft et le multiplateforme Entre le mobile et Microsoft, c'est un peu "je t'aime, moi non plus". Malgré les échecs de Windows Phone, puis Windows Mobile, l'entreprise américaine avait racheté Xamarin afin d'avoir sa propre solution pour concevoir des applications multiplateformes. Malheureusement les chiffres sont là : c'est un échec (11% de parts de marché pour Xamarin contre 42% pour Flutter), car distancé par React Native, Cordova et Ionic.
Un reboot Sous le nom de .NET MAUI (pour .NET Multi-platform App UI), voici le remplaçant officiel de Xamarin.Forms. Après un retard de plusieurs mois, la première Release Candidate pointe enfin le bout de son nez et sème les graines d'une version stable. Concrètement .NET MAUI permet la conception d'applications pour Android, iOS, Windows et macOS. Ne comptez pas sur Linux, mais il est en revanche possible de faire du web par l'intermédiaire de Blazor. |
|
|
|
|
|
Conditions de test : Livre envoyé par l'éditeur, pas de relecture
Flutter a apporté un vent de fraîcheur dans la manière de concevoir des applications multiplateformes, notamment grâce à l'expérience acquise, en comparant les solutions du marché. Malheureusement tout n'est pas toujours bien ficelé et c'est le cas du state management. D'un côté, le framework propose des outils et de l'autre, il existe une myriade d'alternatives sur Pub.dev.
Le problème est tel, qu'un livre vient même d'y être dédié : Managing State in Flutter Pragmatically (lien affilié). Waleed Arshad y explique non pas, quelle est la meilleure solution, mais offre plutôt une comparaison basée sur l'exemple. Autour d'une application de shopping avec un panier, il montre comment implémenter la gestion de l'état avec les outils internes (InheritedWidget), les bibliothèques les plus répandues (BLoC, Cubit, Provider et Riverpod), avec une approche réactive (Redux et MobX) ou encore Binder, GetIt et GetX.
La conclusion, que je trouve un peu courte, ne tient qu'en une seule page. L'auteur indique tout de même quelle est la solution la plus appropriée en fonction du contexte. Mais pour lui, la meilleure approche reste celle de l'hybridation, à savoir, utiliser plusieurs méthodes (ex : BLoC et Provider). |
|
|
Publicité Pour ne plus voir de publicités, soutenez-nous à partir de 1 €. |
|
⏫ Une nouvelle version bêta de Flutter est disponible : 2.13.0-0.1.pre. |
|
✨ Quelles sont les nouveautés côté Flutter et de sa communauté ?
- Le support des ordinateurs s'améliore avec l'arrivée des gestes sur le trackpad (PR #89944 )
- Sur la prochaine version de Flutter, les FlatButton seront supprimés du framework. Pensez à bien les retirer de votre code ! (PR #98545 )
- Le clic droit sur du texte, sélectionnera automatiquement le mot, comme il est de rigueur sur les ordinateurs (PR ouverte #101588 )
- Le positionnement des Tooltip sera prochainement plus fin, avec un offset et une direction (PR ouverte #101472 )
- Plugin google_sign_in : il ne sera plus nécessaire de mettre le fichier de configuration GoogleService-Info.plist dans le projet, mais à la place, donner les informations dans le code. Pratique pour les projets avec de nombreuses variantes (PR ouverte #5250 )
|
|
🚨 Certains utilisateurs ont leur écran qui clignote depuis Flutter 2.10. Est-ce le cas chez vous ? Si oui, n'hésitez pas à contribuer à cette issue qui manque de détails pour pouvoir résoudre le problème. |
|
⏫ IntelliJ Idea, l'un des deux IDEs supportés officiellement par Flutter, est disponible en version 2022.1. Aucune modification spécifique à Dart/Flutter n'est au programme, mais de nombreux changements sont prévus sur la partie VCS, Markdown et l'interface dans sa globalité. |
|
🏆 Un hackathon en collaboration entre Appwrite et DEV.to est organisé pour gagner un prix d'une valeur de 2 000 $. |
|
💻 Workstation est le reference design pour Fuchsia. Vous trouverez dans cet article comment le builder et ensuite l'exécuter dans l'émulateur Fuchsia ou sur un Intel NUC. |
|
📃 Un nouveau standard se propose de créer des CVs au format JSON. |
|
🦹♂️ En 2021, GitHub a reçu plus de 1 820 demandes de DMCA (violation des droits d'auteur), conduisant à une suppression de 19 000 projets. |
|
🔥 SwiftUI est la manière de code des interfaces à la Flutter (Declarative UI) pour iOS. Malheureusement, le langage ne gère pas nativement le Hot Reloading. Toutefois, grâce à un développeur de la communauté, cette fonctionnalité peut être ajoutée au langage, et ainsi faire gagner énormément de temps. |
|
☁️ Annoncé à la WWDC 2021, Apple propose un CI/CD dans le cloud nommé… Xcode Cloud. Encore en version limitée, les développeurs de Le BonCoin ont la chance de pouvoir l'utiliser depuis plusieurs semaines et donnent leurs retours sur l'outil. |
|
🚇 Métro, 👨💼 boulot, 🛏️ dodo ? Pourquoi faire si compliqué quand vous pouvez avoir un lit-bureau-cuisine au même endroit… |
| |
Articles & tutoriaux Flutter |
|
|
|
Cet article vous explique comment les éditeurs d'une application, qui avait initialement été conçue pour le marché européen et américain, s'y sont pris pour l'adapter au marché chinois. Bien évidemment, il y a la traduction, mais les utilisateurs ont des habitudes différentes, qu'il faut considérer. |
|
|
|
|
|
Pour rendre vos applications plus réalistes, il faut souvent appliquer les mêmes règles que dans le monde réel. Prenez pour exemple une balle qu'on lance. Dans la "vraie vie", on s'attend à ce qu'elle vienne rebondir plusieurs fois au sol. Mais comment reproduire ce comportement en Flutter ? Grâce à quelques calculs mathématiques bien sûr. Mais au lieu de ressortir vos cahiers et stylos, vous trouverez toutes les réponses dans cet article. |
|
|
|
|
|
BLoC est une solution de state management comme bien d'autres. Pour faciliter les tests et le debug, saviez-vous que vous pouvez observer le comportement d'un Bloc à travers diverses méthodes comme onChange , onTransition , onEvent , onError ? |
|
|
|
|
|
Pour les tests de vos Widgets, vous utilisez probablement find.byType , find.text and find.byKey . Mais parfois ces méthodes ne peuvent pas s'appliquer à votre arborescence de Widgets. Des solutions vous sont proposées dans cet article. |
|
|
|
|
|
Selon l'objet de votre application, il est parfois nécessaire de restreindre l'utilisation à un compte pour un téléphone. Si vous utilisez Firebase, Louis Dachet vous explique comment vous assurer, qu'une fois, une connexion effective sur un terminal, aucune autre ne soit acceptée en parallèle. |
|
|
|
|
|
Pour du contenu hébergé en GraphQL, vous pouvez vous tourner vers les bibliothèques GraphQL et GraphQL Flutter . Toutes deux viennent de connaître une mise à jour dans la manière de concevoir les requêtes qui utilisent désormais des Hooks. Cet article vous explique pourquoi ce système est meilleur et comment l'implémenter. |
|
|
|
|
|
Si vous êtes amenés à concaténer plusieurs chaînes de caractères, il est préférable d'éviter d'utiliser le symbole +, puisqu'il nécessitera l'allocation d'un nouvel objet. Mais comment optimiser votre code ? Tout simplement en passant par des StringBuffer , dont cet article vous explique l'usage. |
|
|
|
|
|
Vous avez sûrement déjà utilisé le addPostFrameCallback en Flutter. Il se cache derrière le SchedulerBinding , mais il en existe une myriade : GestureBinding , ServicesBinding , SemanticsBinding … Cet article vous aide à mieux comprendre leur fonctionnement. |
|
|
|
|
|
Sur iOS, les développeurs doivent fournir un message expliquant l'utilisation de chaque permission. Par exemple : l'accès à l'appareil photo pour scanner des code-barres.
Cette information doit être donnée dans un fichier externe nommé Info.plist , car Apple ne souhaite pas que ce message puisse être modifié dynamiquement. Mais, comment faire en sorte de traduire ce fameux Info.plist ? N'ayant pas trouvé facilement la réponse, je vous ai écrit un article vous expliquant comment procéder. |
|
|
| |
Publicité Pour ne plus voir de publicités, soutenez-nous à partir de 1 €. |
|
|
|
|
|
Testing tip: You can use `predicate` to perform complex expectations on a value
|
|
|
|
Pour vos tests en Dart/Flutter, la validation d'un résultat n'est pas aussi simple qu'un isNull , isTrue … Dans ce cas, vous pouvez passer par un predicate . |
|
|
Les bibliothèques Dart/Flutter |
|
|
|
|
Publicité Pour ne plus voir de publicités, soutenez-nous à partir de 1 €. |
|
|
|
|
|
C'est une très vieille archive qui vient d'être mise en ligne sur YouTube : la présentation de Windows 95 avec Bill Gates et Jay Leno. Alors que seuls des extraits étaient disponibles jusqu'à présent, la chaîne Blue OS Museum a obtenu la conférence dans sa globalité et l'a mise en ligne. Un peu de nostalgie ne fait pas de mal ! |
|
|
|
|
|
|
|
Mason est un générateur de templates écrit en Dart. Particulièrement pratique quand vous lancez un nouveau projet, il ne proposait jusqu'à présent qu'un nombre limité de choix. Mais bonne nouvelle, un registre permet maintenant à n'importe qui d'en publier et d'en faire bénéficier toute la communauté. |
|
|
|
|
|
|
Dart vous donne mal au crâne ? Cet outil vous permet d'écrire des applications en Pug ou HTML et de gérer le style grâce à du Sass ou CSS. Bien évidemment, l'outil n'est qu'un utilitaire, puisqu'il génère en réalité du code Flutter classique. |
|
|
|
|
|
|
Command Control est une fonctionnalité permettant de basculer sa souris entre plusieurs écrans sous macOS et iPadOS. Input Director est un peu son pendant, mais pour Windows. Il va vous permettre de transférer votre souris et votre clavier d'un ordinateur à l'autre, comme s'il n'y en avait qu'un seul. Deux exigences : être sous Windows 7 et sur le même réseau. |
|
|
|
19 avril |
Paris, France |
Dojo Flutter
|
|
19 avril |
Paris, France |
CocoaHeads
|
|
|
25-26 avril |
Montrouge, France |
Android Makers
|
|
11-12 mai |
USA & en ligne |
Google I/O
|
|
|
|