Accès illimité 24h/24 à tous nos livres & vidéos ! Découvrez la Bibliothèque Numérique ENI. Cliquez ici.
  1. Livres et vidéos
  2. Software Craftsmanship - L'art du code et de l'agilité technique en entreprise

Software Craftsmanship L'art du code et de l'agilité technique en entreprise

  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte pendant 1 an
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement et pour une durée de 10 ans
  • Version HTML
  • Accès illimité 24h/24, 7J/7
  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne

Présentation

Au cours de ces dernières décennies, les pratiques et outils de développement se sont nettement transformés pour permettre à l'entreprise de livrer mieux et plus rapidement ses applications. Avec ces nouvelles pratiques, l'art de coder prend toute son importance. Qu'est-ce qui fait qu'un développeur est mieux formé qu'un autre ? Qu'une équipe utilise une librairie de code mieux qu'une autre ? Qu'une entreprise réalise un logiciel mieux qu'une autre ? : le Software Craftsmanship.

Rédigé comme le journal d'un aspirant à l'excellence technique, ce livre a pour objectif d'initier avec consistance les développeurs ou professionnels IT aux pratiques du Software Craftsmanship qui, au-delà d'un manifeste d'excellence technique est surtout un état d'esprit à adopter.

Agrémentée d'anecdotes, d'exercices, de convictions techniques et de restitutions diverses sur des principes clés du monde informatique, la lecture est rythmée par quatre parties qui stimulent le savoir-être, le savoir-faire, le savoir-structurer et le savoir-penser nécessaires pour une bonne conception logicielle.

Au fil des pages, le lecteur intègre ainsi la posture d'un artisan du code et découvre les compétences nécessaires pour agir en professionnel du code. Il apprend à utiliser à bon escient les outils et technologies logicielles en mode Agile, étudie les principes de programmation clés pour créer des applications de qualité, comprend l'importance des tests dans la réalisation des projets, découvre les ingrédients permettant de créer une architecture robuste et maintenable ou encore les réflexes à avoir pour maintenir la vitalité technique dans un modèle de déploiement continu.



Quizinclus dans
la version en ligne !
  • Testez vos connaissances à l'issue de chaque chapitre
  • Validez vos acquis

Table des matières

Avant-propos
  1. 1. Remerciements
  2. 2. Avatars
  3. 3. Introduction
Savoir-être
  1. 1. Introduction
  2. 2. Manifeste de l'artisan codeur
    1. 2.1 Élever le niveau
    2. 2.2 Artisan et non pas héros
    3. 2.3 Solutions économiquement viables
    4. 2.4 Savoir dire NON pour le bien de TOUS
  3. 3. Éthique et attitude codeur responsable
    1. 3.1 Zéro Mythos - Dire ce qu’on fait, faire ce qu’on dit
      1. 3.1.1 Osez dire : « je ne sais pas ». Ça vous grandira !
      2. 3.1.2 Définir ses priorités
      3. 3.1.3 Franchise et engagement
      4. 3.1.4 Communiquez, communiquez, communiquez
    2. 3.2 Respect - L’art et la manière de dire non au big boss
    3. 3.3 Cavern - TDD face à la glace
    4. 3.4 Le bon état d’esprit - Vous êtes une start-up
  4. 4. Agile, feedback en continu
    1. 4.1 Rituels
      1. 4.1.1 TDD, BDD, ATDD, CTDD
      2. 4.1.2 Daily Stand Up
      3. 4.1.3 Réunions rétrospectives
    2. 4.2 Réflexes
      1. 4.2.1 Releases périodiques et fréquentes
      2. 4.2.2 Vision Client : Products Owners et utilisateurs
      3. 4.2.3 Performances en préproduction
    3. 4.3 Automatisation
      1. 4.3.1 Pull Requests et revue de code
      2. 4.3.2 Intégration et déploiement continu
    4. 4.4 Outils
      1. 4.4.1 Debug et profiling de Code
      2. 4.4.2 Sondes à l’expérience utilisateur
  5. 5. Outillage Craft et DX
    1. 5.1 IDE - Environnement de développement intégré
    2. 5.2 Encore plus d’outils
    3. 5.3 Bonnes pratiques pro-DX
  6. 6. Synthèse et exercices
    1. 6.1 Takeaways
    2. 6.2 Actions et exercices pratiques
Savoir-faire
  1. 1. Introduction
  2. 2. TDD, au-delà du DD
    1. 2.1 Un cycle vertueux
    2. 2.2 TU et l’ironie du coût
    3. 2.3 Legacy : Refuse, Resist
    4. 2.4 Chacun sa bible
    5. 2.5 Bonnes pratiques et anti-patterns
  3. 3. BDD, encore du DD
    1. 3.1 Les origines [source]
    2. 3.2 Communication, collaboration, documentation
    3. 3.3 Ubiquitous Language, approche outillée
      1. 3.3.1 Cucumber - Aslak Hellesøy
      2. 3.3.2 Jasmine - Pivotal Software
      3. 3.3.3 Robot framework - Pekka Klärck, Janne Härkönen
    4. 3.4 Quelques bons réflexes
  4. 4. Agile Testing
    1. 4.1 Agile Testing Manifesto
    2. 4.2 Test en Agile, de la phase à l’activité
    3. 4.3 Toast TK - Cultiver son ADN
    4. 4.4 Quelques bons réflexes
  5. 5. Performance et sécurité
    1. 5.1 Security by design et by mindset
    2. 5.2 Cybersécurité - Piratage éthique
    3. 5.3 Performances
      1. 5.3.1 Complexité algorithmique
      2. 5.3.2 Gestion de mémoire
      3. 5.3.3 Performances en JavaScript
    4. 5.4 Performance orientée Monitoring et Programming patterns
    5. 5.5 Quinze healthy checks
  6. 6. Synthèse et exercices
    1. 6.1 Takeaways
    2. 6.2 Actions et exercices pratiques
Savoir structurer
  1. 1. Introduction
  2. 2. Gestion de la dette technique
    1. 2.1 Codes smells les plus populaires - [wikipedia]
    2. 2.2 Une affaire personnelle : c’est mieux quand ça sent bon !
    3. 2.3 Une affaire d’équipe
    4. 2.4 La quête aux KPI
  3. 3. Initiation au DDD
    1. 3.1 Un jargon commun
    2. 3.2 Model - La base, le squelette, l’essence même
    3. 3.3 Instance - Donner vie au model
      1. 3.3.1 Langage omniprésent (Ubiquitous Language)
      2. 3.3.2 Continuous Integration
    4. 3.4 Layer - Séparer pour mieux régner
      1. 3.4.1 Bounded context
      2. 3.4.2 Modules
      3. 3.4.3 Context map
      4. 3.4.4 Shared kernel
      5. 3.4.5 Anti-corruption layer
      6. 3.4.6 Big Ball of Mud
    5. 3.5 DDD à bon escient
  4. 4. Architecture propre et solide
    1. 4.1 Principes SOLID - Martin Fowler et Robert C. Martin
    2. 4.2 clean architecture
    3. 4.3 Architecture Cloud : 12 facteurs de succès
    4. 4.4 Architecture émergente : JiT, Dry, Yagni et Kiss
  5. 5. Gestion du Legacy
    1. 5.1 Les origines du mal
    2. 5.2 La métaphore du toréador
    3. 5.3 Avoir un plan et des roues
    4. 5.4 Une histoire de trou noir
    5. 5.5 Bonnes pratiques
  6. 6. Synthèse et exercices
    1. 6.1 Takeaways
    2. 6.2 Actions et exercices pratiques
Savoir penser
  1. 1. Introduction
  2. 2. Veille techno. et non Vieille techno.
    1. 2.1 Veille active : open source, ami du craft
    2. 2.2 Veille passive : à flux détendu
    3. 2.3 Veille hybride : savoir s’entourer
      1. 2.3.1 Où sont les experts ?
      2. 2.3.2 Médias sociaux
      3. 2.3.3 Meetups et conférences
    4. 2.4 Un brin d’organisation
  3. 3. Qui est Martin Fowler ?
    1. 3.1 Jeff Bezos - Two-Pizzas
    2. 3.2 Chris Richardson - MicroServices.io
    3. 3.3 Greg Young - Event Sourcing & CQRS
    4. 3.4 Michael Geers - Micro Frontends
    5. 3.5 Martin Odersky - Scala
    6. 3.6 Andrew Ng - Coursera & IA
    7. 3.7 Martin Fowler - MartinFowler.com
    8. 3.8 Ainsi que...
  4. 4. Craftsmanship Thinking
    1. 4.1 Design Thinking
    2. 4.2 MVP - Minimum Viable Product
    3. 4.3 MVP et DX - Developer Experience
    4. 4.4 Pragmatisme et concentration - Keep Focus
  5. 5. Think First, Act Last
    1. 5.1 Une histoire de dette technique
    2. 5.2 Une histoire d’APIfication du legacy
    3. 5.3 Une histoire de MVP
    4. 5.4 Une histoire de reconnaissance d’image
  6. 6. Synthèse et exercices
    1. 6.1 Takeaways
    2. 6.2 Actions et exercices pratiques
  7. 7. Bonus - Craft appliqué au Machine Learning
    1. 7.1 Réglage de classificateur
      1. 7.1.1 Métriques d’évaluation de classificateurs
      2. 7.1.2 Gestion des collections
    2. 7.2 Analyses difformes et classifications
    3. 7.3 Distributions non uniformes
    4. 7.4 Modes d’apprentissage
  8. Index

Auteur

Sallah KOKAINAEn savoir plus

Ingénieur diplômé en informatique de l'Institut National des Sciences Appliquées de Lyon (INSA LYON), Sallah KOKAINA possède une expérience de plus de 10 ans en développement logiciel et en management de la qualité logicielle. Aujourd'hui Consultant et Expert Digital, il accompagne les entreprises dans leur transformation Agile, digitale et technique en Europe, aux USA et récemment en Afrique du Nord. En parallèle de ses activités professionnelles, il contribue au monde open source avec la création de Toast TK, un framework d'automatisation de tests qui aide à améliorer la qualité des applications dans les projets Agiles, et fonde la communauté Moroccan Software Crafters qui regroupe des passionnés du Software Craftsmanship désireux de partager leur connaissance et de contribuer à l'optimisation du niveau technique au Maroc.

Caractéristiques

  • Niveau Initié à Confirmé
  • Nombre de pages 282 pages
  • Parution novembre 2019
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-02153-4
    • EAN : 9782409021534
    • Ref. ENI : DPCRAF
  • Niveau Confirmé à Initié
  • Parution novembre 2019
    • HTML
    • ISBN : 978-2-409-02154-1
    • EAN : 9782409021541
    • Ref. ENI : LNDPCRAF

Nos nouveautés

voir plus