Blog
Comment XcodeGen peut faciliter la vie d’un développeur iOS ? (version Multi Frameworks)
Dans cette deuxième partie sur XcodeGen, nous passons à présenter comment on peut régénérer les xcodeproj de nos frameworks et de notre application principal. Lorsque j’ai travaillé sur ce sujet, j’avais un seul souci, comment je peux automatiser la création de ce pipeline dans one line command ? Je vais vous montrer mon approche 🙂 […]
Librairies et Frameworks, voyage dans le monde de la modularité
Dans mon dernier article sur l’utilisation de XcodeGen version multi framework, j’ai évoqué le sujet de librairie static et dynamique. Je pense que beaucoup de développeurs veulent connaître la différence concrète entre ses deux types de frameworks et même entre une framework et une librairie. C’est pour cela j’ai décidé de vous ramener dans ce […]
Injection et inversion de dépendances en pratique avec Async Await
Dans son livre Clean Code a handbook of software craftsmanship, Robert C. Martin connu sous le nom de oncle Bob définit deux concepts: injection de dépendances et inversion de dépendances. Plusieurs développeurs iOS comme moi ou d’autres, appliquent sans connaitre l’arrière plan et les avantages qui ont donnée naissance au pattern DI et du principe […]
Test unitaires avec Async Await – comment rendre votre client HTTP indépendant de l’infrastructure? (Partie 1)
Introduction: Dans cette article, qui constitue une continuation de mon dernier article sur l’injection et l’inversion de dépendances à base de async await, j’essayerai de vous présenter les méthodes qui existent pour faire des tests unitaires de valeurs à base de async await et comment ensuite rendre nos tests indépendamment de async await ou d’autres […]
Test unitaires avec Async Await – Utilisation de URL Loading System (URLProtocol) pour un client HTTP (Partie 2)
Introduction Dans le dernier article, nous avons présenté deux des trois méthodes pour mocker nos appels HTTP à savoir: Mocking à travers l’héritage. Mocking à travers les protocoles. On a expliqué que la première méthode ne peut pas être appliquée avec Async Await du à des restrictions techniques de l’API et que la meilleur façon […]