Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Faire du-code-centre-sur-l-humain devoxx

3,481 views

Published on

Présentation de Yannick Grenzinger au Devoxx France 2012 : Faire du code centré sur l'humain

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Faire du-code-centre-sur-l-humain devoxx

  1. 1. Faire du code centré sur l’humain ! par Yannick Grenzinger @ygrenzinger 1
  2. 2. Faire du codecentré surl’humain difficile de faire du code Pourquoi est il si qu’un autre humain puisse facilement comprendre et maintenir ? Parce que nous avons tous notre vision du monde ! Mais les concepts du design et de l’utilisabilité peuvent nous aider ! 2
  3. 3. Yannick Grenzinger•@ygrenzinger•Développeur chez Objet Direct•avec une passion pour la psychologie, l’agilité et l’expérience utilisateur (UX)en général•Blog UX : http://ux-fr.com•http://about.me/yannick.grenzinger 3
  4. 4. “Always code as if the guy who ends up maintaining your code will be aviolent psychopath who knows where you live.” Martin Golding 4
  5. 5. 5
  6. 6. Le modèle mental du code Modèle mental – codeur original ≠ Modèle mental - mainteneur 6
  7. 7. Les ergonomes ont déjà trouvé des solutions pour les objets de tous les jours ! Design centré sur l’utilisateur 7
  8. 8. Voir le code comme un objet ? = 8
  9. 9. Créons de bonnes affordances 9
  10. 10. Les concepts 10
  11. 11. Associations symboliques Dans le code : le nommage les patterns … 11
  12. 12. Associations naturelles Behaviour driven development: • Given [condition] • When [action] • Then [resultat] 12
  13. 13. Contraintes Evitons le code générique: • main (String[] args){ … } • void changeValeur( Object o, String nomChamp, Object val) 13
  14. 14. Visibilité Evitons ce genre de piège : @Service Class MonService { @Scheduled void chaqueMatin() { reveilleToi(); } @Transactional void reveilleToi() { … } } 14
  15. 15. Codons pour l’erreur code défensif Trace d’erreurs claires et complètes 15
  16. 16. Standardisez ! Faites des opérations similaires pour des tâches similaires 16
  17. 17. La boucle de feedback • Test Driven Development • Intégration continue • Déploiement continu Permettent d’accélérer le feedback ! 17
  18. 18. Documentez ! “Good code is its own best documentation.” Steve McConnell Mais ne laissez pas le développeur seul face à votre génie ;) 18
  19. 19. En appliquant ces concepts Votre modèle mental = Celui du mainteneur + documentation 19
  20. 20. Vous aurez un code plus facile à comprendre plus lisible plus maintenablecentré sur l’humain ! 20

×