Erreurs et compromis en matière de logiciels : Comment prendre de bonnes décisions en matière de programmation

Note :   (4,3 sur 5)

Erreurs et compromis en matière de logiciels : Comment prendre de bonnes décisions en matière de programmation (Tomasz Lelek)

Avis des lecteurs

Résumé:

Ce livre propose une exploration détaillée des compromis à faire dans le domaine de l'ingénierie logicielle, en soulignant l'importance de comprendre les alternatives et les implications réelles des décisions de conception. Bien qu'il offre des perspectives intéressantes et encourage une approche pragmatique, il a reçu des critiques mitigées quant à sa qualité rédactionnelle et sa pertinence pour différents niveaux d'expérience.

Avantages:

Offre de précieuses perspectives sur les compromis et les scénarios réalistes dans le domaine du génie logiciel.
Encourage la réflexion critique sur le moment où il convient d'enfreindre les règles conventionnelles, telles que l'utilisation acceptable de la duplication du code.
Contient des exemples pratiques applicables à des situations réelles.
Aborde une série de sujets pertinents pour les ingénieurs logiciels de différents niveaux.
Favorise une compréhension équilibrée des meilleures pratiques par rapport à la mise en œuvre réelle.

Inconvénients:

Certains chapitres sont trop axés sur des sujets triviaux spécifiques à Java, ce qui peut ne pas être intéressant pour des développeurs expérimentés.
La qualité de l'écriture varie, certaines sections étant inutilement verbeuses ou simplistes.
Manque d'exploration en profondeur de scénarios complexes du monde réel et de références de lecture complémentaires.
Certains exemples peuvent sembler trop artificiels ou évidents, ce qui limite leur applicabilité pratique.

(basé sur 5 avis de lecteurs)

Titre original :

Software Mistakes and Tradeoffs: How to Make Good Programming Decisions

Contenu du livre :

Optimisez les décisions qui définissent votre code en explorant les erreurs courantes et les compromis intentionnels faits par les développeurs experts.

Dans Software Mistakes and Tradeoffs, vous apprendrez à :

Raisonner sur vos systèmes pour prendre des décisions de conception intuitives et meilleures.

Comprendre les conséquences et comment équilibrer les compromis.

Choisir la bonne bibliothèque pour votre problème.

Analyser en profondeur toutes les dépendances de votre service.

Comprendre la sémantique de livraison et comment elle influence l'architecture distribuée.

Concevoir et exécuter des tests de performance pour détecter les " hot paths " du code et valider le SLA d'un système.

Détecter et optimiser les " hot paths " dans votre code afin de concentrer les efforts d'optimisation sur les causes profondes.

Décider d'un modèle de données approprié pour la gestion de la date et de l'heure afin d'éviter les erreurs courantes (mais subtiles).

Réfléchir à la compatibilité et à la version pour éviter des problèmes inattendus pour les clients de l'API.

Comprendre le couplage étroit/libre et la manière dont il influence la coordination du travail entre les équipes.

Clarifier les exigences jusqu'à ce qu'elles soient précises, faciles à mettre en œuvre et à tester.

Optimisez vos API pour une expérience utilisateur conviviale.

Performance du code contre simplicité. Vitesse de livraison contre duplication. Flexibilité contre maintenabilité - chaque décision prise dans le domaine de l'ingénierie logicielle implique de faire des compromis. Dans Software Mistakes and Tradeoffs, vous apprendrez des erreurs coûteuses que Tomasz Lelek et Jon Skeet ont rencontrées au cours de leurs impressionnantes carrières. Vous explorerez des scénarios réels où une mauvaise compréhension des compromis a conduit à des problèmes majeurs, afin que vous puissiez éviter vos propres erreurs en adoptant une approche plus réfléchie de la prise de décision.

Apprenez comment la duplication du code a un impact sur le couplage et la vitesse d'évolution de vos systèmes, et comment des exigences simples peuvent avoir des nuances cachées en ce qui concerne les informations relatives à la date et à l'heure. Découvrez comment réduire efficacement votre champ d'optimisation selon les principes 80/20 de Pareto, et assurez la cohérence de vos systèmes distribués. Vous aurez bientôt construit le type de base de connaissances que seules des années d'expérience permettent d'acquérir.

L'achat du livre imprimé inclut un livre électronique gratuit aux formats PDF, Kindle et ePub de Manning Publications.

À propos de la technologie.

Chaque étape d'un projet logiciel implique de faire des compromis. Lorsqu'il s'agit de trouver un équilibre entre la vitesse, la sécurité, le coût, le délai de livraison, les fonctionnalités et bien plus encore, des choix de conception raisonnables peuvent s'avérer problématiques en production. Les points de vue d'experts et les histoires de guerre racontées dans ce livre vous aideront à faire les bons choix lors de la conception et du développement d'applications.

À propos du livre.

Software Mistakes and Tradeoffs explore des scénarios réels dans lesquels de mauvaises décisions ont été prises en matière de compromis et met en lumière ce qui aurait pu être fait différemment. Les auteurs, Tomasz Lelek et Jon Skeet, y partagent leur sagesse basée sur des décennies d'expérience en ingénierie logicielle, y compris des erreurs délicieusement instructives. Vous apprécierez les conseils spécifiques et les techniques pratiques qui accompagnent chaque exemple, ainsi que les modèles toujours d'actualité qui changeront la façon dont vous aborderez vos prochains projets.

Ce qu'il y a à l'intérieur.

Comment raisonner sur votre logiciel de manière systématique.

Comment choisir des outils, des bibliothèques et des frameworks.

Comment le couplage étroit et le couplage lâche affectent la coordination de l'équipe.

Des exigences précises, faciles à mettre en œuvre et à tester.

A propos du lecteur.

Pour les développeurs et architectes de niveau intermédiaire et supérieur qui prennent des décisions sur la conception et l'implémentation des logiciels.

A propos de l'auteur.

Tomasz Lelek travaille quotidiennement avec un large éventail de services de production, d'architectures et de langages JVM. Ingénieur chez Google et auteur de C# in Depth, Jon Skeet est célèbre pour ses nombreuses contributions pratiques à Stack Overflow.

Table des matières.

1 Introduction.

2 La duplication de code n'est pas toujours mauvaise : Duplication du code vs. flexibilité.

3 Exceptions vs. autres modèles de gestion des erreurs dans votre code.

4 Équilibre entre flexibilité et complexité.

5 Optimisation prématurée ou optimisation du chemin le plus court : Les décisions qui ont un impact sur les performances du code.

6 Simplicité et coût de maintenance de votre API.

7 Travailler efficacement avec des données de date et d'heure.

8 Exploitation de la localité des données et de la mémoire de vos machines.

9 Bibliothèques tierces : Les bibliothèques que vous utilisez deviennent votre code.

10 Cohérence et atomicité dans les systèmes distribués.

11 La sémantique de livraison dans les systèmes distribués.

12 Gestion des versions et de la compatibilité.

13 Rester à jour avec les tendances par rapport au coût de maintenance de votre code.

Autres informations sur le livre :

ISBN :9781617299209
Auteur :
Éditeur :
Langue :anglais
Reliure :Broché
Année de publication :2022
Nombre de pages :300

Achat:

Actuellement disponible, en stock.

Je l'achète!

Autres livres de l'auteur :

Erreurs et compromis en matière de logiciels : Comment prendre de bonnes décisions en matière de...
Optimisez les décisions qui définissent votre...
Erreurs et compromis en matière de logiciels : Comment prendre de bonnes décisions en matière de programmation - Software Mistakes and Tradeoffs: How to Make Good Programming Decisions

Les œuvres de l'auteur ont été publiées par les éditeurs suivants :

© Book1 Group - tous droits réservés.
Le contenu de ce site ne peut être copié ou utilisé, en tout ou en partie, sans l'autorisation écrite du propriétaire.
Dernière modification: 2024.11.14 07:32 (GMT)