Flutter development : les ressources utiles

Grâce à une super présentation d’Edouard Marquez lors d’un Meetup organisé par le CDG de Tours, j’ai le plaisir d’être en pleine découverte de Flutter.

Donc, Flutter est un projet Open Source porté par Google, et basé sur le langage Dart. C’est (entre autres…) LE nouveau framework de Google pour la création d’applications mobiles multiplateformes.

Encore un me direz vous… oui mais celui-là est différent (je sais, on nous l’a déjà faite celle-là 🙂 ). Plus sérieusement, le fait qu’il soit porté par Google, avec une communauté de développeur.ses en constante augmentation, donne de très bons augures pour l’avenir de ce framework.

Je ne rentrerai pas ici dans la discussion Flutter vs React Native vs Cordova vs Xamarin… cela n’est pas le propos. Par contre, à titre perso, je peux dire que le langage Dart me plaît bien, et venant de Swift (avec aussi un passé en Java et en C), la courbe d’apprentissage n’est pas trop ardue.

Bref, vous l’aurez compris, je kiffe Flutter 🙂

Et comme je sais à que point c’est parfois compliqué de débuter avec un nouveau framework, j’ai décidé ici de vous partager mes ressources ! (bien entendu, je ferai évoluer cette liste au fur et à mesure de mes avancées dans le domaine…)

Les bases :

https://flutter.dev : le site de base. Plein de tutoriels, d’infos et surtout toujours à jour !

https://dart.dev : le site de référence pour le langage Dart

La communauté :

https://www.edouard-marquez.me/blog/ : plein de news sur l’évolution de Flutter et de sa communauté

Les tutoriels :

http://www.iflutter.in : le site de tutoriels le plus complet que j’ai pu trouver à ce jour

https://kodestat.gitbook.io/flutter/ : de nombreux tutos également

https://hackr.io/tutorials/learn-flutter

https://www.didierboelens.com

http://tphangout.com

https://flutterbyexample.com

Programmation Swift : iOS Developer Notes For Professionals

ios Dev Pros

Voici mon nouveau livre de chevet : iOS Developer Notes for Professionals !

Je crois que tout le langage Swift est abordé dans ce livre ! Cela va de la création toute simple d’une UIView au parsing de JSON, tout en passant par l’usage de des frameworks les plus utilisés (Fastlane…) et des designs paterns (MVC, MVVM…).

Bref, le top du top pour le développeur Swift !

Bon, finalement, le lire avant de s’endormir n’est pas forcément la meilleure idée, mais c’est le genre de livre à garder impérativement sous la main toute la journée de développement !

En plus, il est gratuit !

A télécharger (sans modération) ici :

iosDeveloperBook

Tutoriel Swift : formatage de numéros de téléphones avec PhoneNumberKit

PhoneNumConverterExample

Dans le cadre de mon activité de freelance, j’ai récemment dû répondre à une offre dans laquelle il était demandé :

 

– De créer un champ texte intégrant un numéro de téléphone

 

– Ce champ texte devra formater le numéro de téléphone pour avoir le même affichage que dans l’appli « Contacts » d’Apple.

 

– Le formatage doit se faire dans les normes locales de chaque pays.

 

– Puis le numéro de téléphone doit, toujours en fonction de la localisation, être converti à la norme E164.

 

– L’utilisation de frameworks externes est autorisée.

 

– Forcément, il faut réaliser tout cela pour moins de 5 euros et en 5 mn 😦 …

 

Comme j’ai trouvé le challenge intéressant (et avec l’espoir de facturer à un tarif un peu plus décent…), je me suis penché sur la question.

La première option qui m’est venue à l’esprit est de partir d’une « page blanche », et de tout coder. Après tout, filtrer et formater des entrées utilisateur n’est pas bien compliqué.

Oui mais pour que cela fonctionne pour tous les pays, cela devient nettement plus gourmand en temps et en neurones…

C’est ainsi que j’ai découvert le génialissime framewok « PhoneNumberKit« 

Lire la suite

Tutoriel Swift : des animations faciles avec Lottie !

IphoneX Lottie Snowman

Je ne sais pas si vous vous êtres déjà frotté à la programmation d’animations pour iOS ou mac OS, mais moi je trouve cela passablement compliqué et rébarbatif !

Heureusement, Airbnb à eu la bonne idée de mettre à notre disposition le framework Lottie !

Il s’agit ni plus ni moins que d’une méthode simple pour importer directement un fichier d’animation créé avec Adobe After Effects dans notre application Swift !

Comment ? Voyons cela…

Lire la suite

Tutoriel Swift : Initiation aux tests unitaires

skills-3371153_1920

« Tester, c’est douter ! », oui mais souvent, douter évite de grosses boulettes !!

C’est pour cela que j’ai décidé de publier une série de tutoriels sur les tests unitaires en programmation Swift.

Mais voyons en premier ce qu’est un test unitaire et quel est son but !

Lire la suite

Mise à jour de l’application mobile « Mes Animaux et Moi » !

rubber-stamp-1560308_1280

6 mois sans updates, c’est vrai que l’application « mes animaux et moi » prenait un peu la poussière…

C’est maintenant chose faite !

Screenshot1FRiphoneX

Pour cette fois, pas de mise nouvelles fonctionnalités (mais promis, je réserve une surprise pour la prochaine update…).

L’application est maintenant optimisée pour les nouveaux iPhones XR et XS, ainsi que pour le nouvel iPad Pro.

Quelques corrections de bugs mineurs, mais surtout un gros refactoring du code, un passage en Swift 4.2 et une migration de la base de donnée cloud sur Firebase 5.

Tout cela apporte une diminution de la taille de l’application, tout en améliorant ses performances globales sur des devices relativement anciens.

Bref, ce n’est pas forcément visible sur l’UI, mais un gros travail d’optimisation à été réalisé sur l’appli. Elle est prête à affronter 2019 et ses futures mises à jour !

Retrouvez « Mes animaux et moi » sur l’App Store :

download_on_the_app_store_badge_us-uk_135x40

Tutoriel Swift : mise à jour Firebase 5

Firebase 5

Google à récemment mis à jour son API pour l’utilisation de Firebase… et a cassé la compatibilité avec les anciennes versions… (:

Pas grave, c’est l’occasion de faire une petite update de l’application mobile Mes Animaux et Moi !

Cet article n’est pas un tutoriel à proprement parler, mais plutôt un mémo pour vous montrer les changements nécessaires à la partie du code s’occupant de l’enregistrement des données et des photos.

Voici donc l’ancien code :

firebase4-Storage

et le nouveau :

firebase 5-Storage.png

Les changements se situent au niveau de la méthode « storageRef« .

Attention, je précise (à toutes fins utiles…) qu’il s’agit d’extraits de code, donc vous pouvez vous en inspirer mais pas les utiliser tels quels !

 

Tutoriel Swift : la gestion des entrées utilisateurs sur une Apple Watch

ES-WatchOS

Comment récupérer une entrée utilisateur personnalisée (ex : un nom de fichier, un message…) sur une Apple Watch qui, comme vous l’avez sans doute constaté, ne possède pas de clavier ?

En fait, une fois de plus, c’est quelque chose de très simple à réaliser en Swift.

L’application Apple Watch que je vous propose en démo est très basique : lorsque l’utilisateur appuie sur le bouton « Get input », une liste de phrases pré-définies lui est proposée. En cliquant sur le micro, on lui propose de prononcer sa propre phrase. Celle-ci est ensuite récupérée et affichée dans un label.

Voici l’appli terminée :

Allez, on plonge…

Lire la suite

Tutoriel Swift : Geocoding et Reverse Geocoding en Swift

Geocoding

Comment obtenir une adresse à partir de coordonnées géographiques ? Et comment obtenir les coordonnées géographiques à partir d’une adresse ?

Voici (un des) problèmes auxquels je me suis frotté pour la réalisation de l’application KayakTracker…

Et cela se nomme le géocodage et le géodécodage (geocoding et reverse geocoding). Une recherche Google montre que cela est réalisable entre autres grâce à leur API Maps…

Mais Apple à également pensé à nous, et c’est cette méthode que je vais vous présenter.

Comme d’habitude, je m’appuie sur une petite application « POC » qui, une fois terminée, donnera cela :

Motivés ? C’est parti !

Lire la suite