Image of an arrow

Revue de presse Inno #2

Avatar

admin_sflinux

Mobilité

FireStore : la nouvelle base de données en temps réel de Google

En tant que développeur mobile, nous rencontrons une problématique récurrente : la gestion de la synchronisation des données avec un back-end et la prise en compte d’un mode déconnecté.

Google apporte une nouvelle réponse à cette question : FireStore. Ce service, encore en version bêta, fait partie de la suite FireBase. Il est présenté comme la nouvelle solution de stockage en temps réel de Google. Ce stockage est orienté document (NoSQL), cela signifie que l’on y stocke des collections de données organisées en couple clé/valeur, à la manière de JSON. Cette solution gère ainsi de façon transparente la synchronisation des données entre plusieurs appareils, mais également la perte de connexion. En cas de coupure réseau, les données sont alors toujours accessibles localement et les mises à jour sont répercutées de façon transparente à la reprise de connexion. Ci-dessous deux tutoriaux Youtube de Brian Advent vous montrent la facilité d’intégration de ce service dans une application de messagerie. Les deux tutoriaux d’intégration du SDK FireStore sous iOS de Brian Advent sont disponibles aux adresses :

Vous pouvez aussi accéder à la documentation officielle de FireStore.

RxSwift 4, supportant Swift 4, se précise en version RC.

Les développeurs, comme à chaque montée de version de Swift, travaillent d’arrache-pied pour mettre à jour leurs librairies et ainsi supporter la nouvelle version du langage. C’est bien entendu le cas pour les développeurs derrière RxSwift, qui ont déployé ce 8 octobre la version candidate de RxSwift 4. Cette version est disponible via les différents outils de gestion de dépendances et Github. Les auteurs d’RxSwift encouragent la contribution et vous présente les règles à suivre.

Découverte de l’architecture Model View Intent

J’avais un gros à priori sur l’architecture MVI, à cause de son nom. Pour moi, un Intent = new Intent(). Du coup, j’ai tout de suite pensé tomber dans un pattern d’architecture se basant sur les Intent Android, j’imaginais déjà le code spaghetti remplaçant RX par des IntentReceiver/Broadcaster. Un gros retour arrière donc. Mais suite à la Droidcon NYC, mes petits camarades ont assisté à une présentation MVI et ont eu l’air convaincu.
J’ai donc retroussé mes manches et mis les mains dedans. J’ai d’abord trouvé cet article par Hannes Dorfmann qui explique de façon très didactique les avantages du MVI. Tout d’abord, le MVI adresse une problématique non abordée dans les autres patterns comme le MVVM ou le MVP : le State ou l’état de l’application. 
En implémentant un Reducer, on peut être capable de gérer les changements d’état de l’application de façon déterministe.  
Hannes Dorfmann propose son implémentation du MVI, mais, elle est écrite en java et utilise l’héritage. La prochaine étape serait de proposer une implémentation, en Kotlin par composition/protocol.

Articles similaires

Image of an arrow

Le développement Android progresse constamment avec de nouvelles fonctionnalités pour faciliter la création d’applications. Construction d’interface utilisateur avec Jetpack Compose, injection de dépendances avec Hilt, extensions de développement de jeux, librairies de compatibilité emoji, et la liste continue. Les nouveaux projets n’ont aucun souci à prendre avantage de ces nouvelles fonctionnalités. Cependant, les projets anciens […]

En juin dernier, Savoir-faire Linux a participé à la 10ᵉ édition du DrupalCamp Montréal, qui a eu lieu à l’Université Concordia. Ce fût l’occasion de voir une bonne partie de la communauté de développeurs Drupal montréalaise, d’échanger avec les autres entreprises qui travaillent avec cette technologie et de faire l’état de l’évolution de Drupal de […]

Thumbnail image

Développement Web Bien démarrer avec le rendu côté serveur avec Angular Par Kévin Barralon Cette semaine, nous avons mis en ligne un tutoriel pour les développeurs qui utilisent le framework JavaScript Angular. Ce tutoriel a pour but de les aider à initialiser un projet Angular avec le rendu côté serveur pré-configuré. L’intérêt de la mise […]

Gestion du rendu côté serveur : Une nouveauté Angular imposant un défi Angular est un framework utilisant le langage de programmation TypeScript. La version 5 a été mise en ligne en novembre 2017, avec de nouvelles fonctionnalités et corrections de bugs. Cette dernière version est accompagnée de l’outil en ligne de commande Angular CLI, mais […]

Thumbnail image

Design Qu’est ce que design system ? Par Patrick Bracquart Depuis plusieurs années, la complexité des sites et applications nous ont poussé à repenser le design et les méthodologies tant les champs de compétences nécessaires se sont élargis (analyste web, designer UI/UX, designer d’interaction, développeur front-end, …). C’est dans ce contexte qu’est apparu le design […]