Affichage des articles dont le libellé est développement. Afficher tous les articles
Affichage des articles dont le libellé est développement. Afficher tous les articles

mardi 15 mai 2018

Screen Cast #7 : Mise en oeuvre de Mockito en TDD

Après avoir vu, dans la précédent vidéo, les utilisations possibles de Mockito pour créer et manipuler des mocks, voici un exemple de mise en oeuvre, en reprenant l'exemple du Driver et du Connector vu dans les précédents épisodes.


Les sources sont sur Github.

N'oubliez pas de réagir, commenter ou questionner !

Merci :-)

jeudi 3 mai 2018

Screen Cast #6 : Mockito, créer et utiliser un mock

Dans ce screencast, je vous présente rapidement la librairie Mockito, et je vous montre comment créer un mock, quels sont ses comportements par défaut, comment lui donner des comportements spécifiques, comment vérifier les interactions qui ont eu lieu avec ce mock et comment lui faire déclencher des exceptions.




jeudi 26 avril 2018

Screen Cast #5 : Inversion de contrôle et Injection de dépendance

Dans cet épisode, je vous montre en quoi l'inversion de contrôle (IoC = Inversion of Control) et l'injection de dépendance (DI = Dependency injection) sont indispensables pour avoir une architecture testable, et en comparant avec l'approche "test after", je vous montre comment le TDD nous pousse naturellement vers ce type d'architecture et donc vers du code testable.


Les sources sont sur Github.

N'oubliez pas de réagir, commenter ou questionner !

Merci :-)

jeudi 19 avril 2018

Screen Cast #4 : premier tests unitaires "after" et "TDD"

Dans cet épisode, je vais insister sur un point important qui consiste à partir de l'usage, c'est-à-dire écrire directement commet on aimerait utiliser la classe qui n'existe pas encore.



jeudi 12 avril 2018

Screen Cast #3 : premier tests unitaires "after" et "TDD"

Dans cet épisode, je vous montre un premier exemple de test unitaire "after", c'est-à-dire écrit après le code de production, et le même résultat, ou presque, en approche TDD.


Les sources sont sur Github.

N'oubliez pas de réagir, commenter ou questionner !

Merci :-)

mardi 10 avril 2018

Human Talks - 10/04/2018 - Tests unitaires et TDD

Ce soir, à la soirée " Human Talks Grenoble ", j'ai proposé une introduction aux tests unitaires et au TDD, voici le diaporama :



lundi 9 avril 2018

Screen Cast #2 : installation Intellij IDEA et environnement de tests

Dans le précédent article, j'ai montré comment installer Eclipse et un environnement minimal pour écrire et jouer des tests unitaires. Aujourd'hui, je vous propose une nouvelle vidéo pour installer Intellij IDEA et là encore, le configurer pour avoir tout ce qu'il faut pour écrire et jouer des tests unitaires.

mercredi 4 avril 2018

Screen Cast #1 : installation Eclipse et environnement de tests

Je vais essayer de proposer une série de petites vidéos autour du développement logiciel, en abordant des thèmes qui me passionnent comme les tests unitaires, le TDD, le clean code, etc... et qui ne sont pas forcément facile à appréhender et mettre en oeuvre au quotidien dans notre métier.

mardi 28 novembre 2017

Agile Grenoble 2017


C'est dans mes habitudes, donc cette année encore, j'étais à Agile Grenoble. Mais pour la 10e édition, le format avait changé pour 3 jours "classiques" de conférences et 2 soirées : sacré cuvée !

lundi 16 mars 2015

Laissez l'équipe faire ses choix techniques !

Introduction


Ce que j'aime bien dans l'agilité, c'est le côté "bons sens" et pragmatique. Et ce que j'aime particulièrement dans Scrum, c'est le nombre limité de rôles, et la précision du périmètre de responsabilité pour chacun de ces rôles. Voir mon précédent article "Scrum : quel est le rôle le plus important ?".

Pour un projet de développement logiciel, les équipiers sont essentiellement des développeurs. Tout comme le Product Owner a la responsabilité de la partie fonctionnelle (quelles fonctionnalités et pour quand ?), les équipiers ont la responsabilité de tout ce qui est technique : choix des technologies, choix de l'architecture de l'application, règles communes de codage, qualités, innovation, etc ...

lundi 10 février 2014

Un bon titre pour une bonne session TDD et coding-dojo

Introduction

Je me permets de solliciter la(les) communauté(s) pour recueillir des avis et propositions pour un titre de session.

La session

A l'automne, j'ai animé une session "L'apprentissage du TDD en Coding-dojo" lors des conférences agiles de Marseille, Montpellier et Grenoble. Cet atelier d'environ 2h me permet de présenter un peu de théorie sur les tests unitaires et le TDD, puis de faire une rapide démo live avant d’enchaîner sur un coding-dojo de type randori (donc sur un seul poste vidéo-projeté) pour permettre à une partie des participants de s'essayer, en pair-programming, au TDD pendant 5-6', sur un sujet simple, avec mes conseils, mes remarques et le soutien de l'assistance.

lundi 16 décembre 2013

Développeur : un métier de passion !

Pour faire suite à mon article Développeur : une passion et un métier, sinon rien !, et conforme à ma motivation du moment pour diffuser ce point de vue, mardi dernier (10 décembre), j'ai proposé d'aborder ce sujet lors des Human Talks Grenoble.

Ma session de 10' a été filmée, vous pouvez donc la consulter ici (la qualité d'image n'est pas géniale, mais le son et les slides y sont, c'est l'essentiel) :

mercredi 27 novembre 2013

Agile Grenoble et Agile Innovation cuvée 2013

Les 21 et 22 novembre dernier, j'ai assisté à Agile Grenoble 2013 et Agile Innovation 2013. En voici quelques éléments de retour.


Qualité :

  • Il n'y aurait pas "la" qualité mais "les" qualités ?
  • Du moins, il y a plusieurs éléments de qualité, selon qu'on regarde le code, la stabilité de l'application, sa réponse au besoin, son utilisabilité, etc ...
  • Mais pour commencer, l'important est déjà de se poser des questions, quelques soient les critères d’évaluation : quelle est la qualité attendue ? quelle est la qualité de l'application actuelle ?

lundi 18 novembre 2013

Développeur : une passion et un métier, sinon rien !

Introduction


Dans le développement logiciel depuis plus de 20 ans, je réalise depuis 2 ans (seulement mais réellement), et de plus en plus, à quel point le métier de développeur doit être une passion !

C'est un métier d'artisanat, où l'on fait rarement 2 fois la même chose, où il faut innover tous les jours. L'éco-système bouge très vite, les langages existants évoluent (pas très vite, mais tout de même), de nouveaux langages voient le jour (sont-ils adaptés à mon besoin ou pas ?), de nouvelles librairies sortent régulièrement, une techno révolutionnaire aujourd'hui sera remplacée par une autre encore mieux dans 3 ou 6 mois. Sans compter les bonnes pratiques que je vois évoluer et s'affiner sans cesse ...

Le métier de développeur est difficile ...

mardi 8 octobre 2013

Tests unitaires : comment en ajouter sur du code existant?

Suite à cette question de Jérôme Avoustin, Nicolas Noullet pose une autre question très intéressante :
"Comment faire avec une énorme base de code sans test ? N'en écrire que pour les bug fixes et nouvelles features ?"
Cette question rejoint celles qui me sont souvent posées lors de mes formations en entreprises ou lors des conférences.

Les tweets étant trop courts pour un tel sujet, je poste quelques éléments de réponses ici, en espérant en éclairer certains, et susciter des réactions ...

lundi 6 mai 2013

Play Framework : pourquoi j'ai migré de V2 à V1

Introduction

Utilisateur mordu de Play Framework, il y a plusieurs mois, j'ai migré mon projet en cours de V2 à ..... V1 ! L'information a un peu circulé, j'ai pu en parler ici ou là, et on m'a souvent demandé de partager mes raisons, ce que je vais faire dans ce post. 

Avec le temps, j'ai un peu oublié toutes les raisons qui m'ont poussé à cette migration, je m'en excuse par avance, mais les principales sont là !

lundi 29 avril 2013

Mon retour sur Mix-IT 2013

Introduction

Les 25 et 26 avril 2013, j'ai participé à Mix-IT 2013, avec une particularité cette année puisque j'étais "speaker" : voici mon retour sur ces 2 journées de folie !

lundi 11 février 2013

CodeStory 2013 : l'addiction inattendue

Introduction

Qui ne connait pas CodeStory ? Voir cette page pour tout savoir, mais j'imagine que les développeurs passionnés, comme moi, connaissent, au moins de nom.

Pour ma part, j'avais suivi l'édition 2012 de loin. J'étais allé voir le sujet de pré-sélection, et je ne m'étais pas lancé dans l'aventure : je ne me sentais pas à la hauteur, et le sujet ne m'inspirait pas vu le peu de temps que je pouvais envisager d'y consacrer.

Pourquoi pas ? Pour voir ...

Cette année, lorsque j'ai vu passer l'annonce sur Twitter, par curiosité, je suis allé voir le sujet. Et là surprise, pas grand chose, à part qu'il faut implémenter et déployer un serveur WEB pour répondre à une seule requête "Quelle est ton adresse mail ?".

lundi 3 décembre 2012

Speed Boat pour état des lieux

Introduction

Il y a quelques mois, j'ai réalisé une mission de formation auprès d'une équipe pour l'aider à migrer de développements d'applications autonomes en .Net C#, vers des applications client-serveur avec interfaces WEB. En résumé : formation au développement WEB.

Lorsque j'ai débuté mon intervention, l'équipe avait déjà commencé à faire de la R&D et à développer, et rencontrait bon nombres de difficultés.

Je ne connaissais pas du tout cette équipe de 6 personnes, ni leur compétences du moment, ni les difficultés rencontrées, ni les attentes par rapport à mon intervention.

J'ai donc proposé de commencer par faire un état des lieux, avec l'équipe. Pour cela, j'ai choisi le "Speed boat" qui fait partie des Innovation Games, et qui me semblait tout à fait adapté au besoin. En voici un retour.

Déroulement de l'atelier

jeudi 13 septembre 2012

Développement logiciel agile : informations sur l'outillage


Introduction

De plus en plus d’entreprises et d’équipes s’intéressent aux outillages modernes permettant d’industrialiser et automatiser leurs productions logicielles. Et récemment, à plusieurs reprises, lors d’échanges avec des clients, j’ai pu me rendre compte que les confusions sont nombreuses entre les différents outils, leurs rôles, leurs intérêts, leurs interactions, etc …

Je vous propose donc ce petit article pour essayer de recenser ces outils avec des présentations rapides et succinctes. Nous parlerons donc de :

  • Gestionnaire de sources et de versions
  • Système de build
  • Gestionnaire de repositories
  • Séquenceur pour intégration continue