Meilleurs livres sur la théorie et la pratique de l'architecture logicielle? [fermé]

32

J'ai quelques développeurs dans mon entreprise qui souhaitent passer de la programmation à l'architecture. Quels sont les meilleurs livres sur la théorie et la pratique de l'architecture logicielle? Incluez une photo de couverture si vous le pouvez.

N'hésitez pas à inclure des livres généraux, ainsi que des livres relatifs à une technologie spécifique.

Craig Schwarze
la source
3
Ce n'est pas une réponse directe, alors juste un commentaire. La meilleure (et vraiment la seule) façon d'apprendre à être architecte est d'un autre architecte, de préférence un maître architecte. L'architecture et l'ingénierie logicielles en général sont encore dans un état pré-industrialisé du point de vue d'autres disciplines de l'ingénierie. Nous faisons toujours des apprentissages-> compagnons-> avancement de type master.
JP Alioto du

Réponses:

15

texte alternatif

(lien vers le livre)

C'est un assez bon livre, bien qu'il ne traite pas de l'architecture logicielle en général, mais de l'architecture des applications métier.

azheglov
la source
c'était un bon livre lors de sa publication, mais je pense que la plupart des modèles ne sont pas très utilisés dans l'industrie. Pas un mauvais livre mais certainement pas l'un des 5 meilleurs à mon avis
Uberto
Bien qu'il s'appelle «Enterprise Application Architecture», il est à peu près au même niveau que le livre GoF Design Patterns, qui est une conception de niveau classe plutôt qu'une architecture de niveau application.
Thomas Owens
Ugh, je n'aime pas ce livre. Cela ne vous aidera pas à devenir architecte.
JP Alioto
Le livre est correct, mais il ne concerne vraiment que les applications d'entreprise. Si vous faites tout autre type de développement (par exemple, ordinateur de bureau, mobile, intégré), ce n'est pas très utile.
nikie
16

texte alternatif

Mais, j'encouragerais ces développeurs à ne pas passer à l'architecture et à oublier totalement la programmation. S'ils le font, ils n'auront aucun respect des programmeurs et ils ne seront pas correctement équipés pour prendre des décisions architecturales.

TaylorOtwell
la source
11

Le livre couramment cité / référencé sur les architectures logicielles, et le livre utilisé lorsque j'ai suivi le cours d'architecture logicielle dans mon université est Architecture logicielle en pratique (2e édition) par Len Bass, Paul Clements et Rick Kazman .

Au moins un professeur qui enseigne le cours a changé le manuel en architecture de systèmes logiciels par Nick Rozanski et Eoin Woods , mais je ne peux pas garantir la qualité ou le contenu de ce livre. Selon Sergio Acosta (dans les commentaires), le livre de Rozanski est plus récent, basé sur le travail de Bass, et il le considère plus facile à lire. Je suis rarement déçu par les livres utilisés dans le programme de génie logiciel.

Thomas Owens
la source
2
J'ai utilisé les deux (Bass et Rozanski). Bass 'a longtemps été la bible architecturale, mais celle de Rozanski est plus récente et plus à jour; il est plus facile à lire et fortement basé sur Bass '. Je recommande fortement de commencer par Rozanski.
Sergio Acosta
1
+1 le livre Bass était une bonne lecture quand j'ai commencé à me lancer dans l'architecture. C'est un peu sec mais ça vous donne une idée du genre de choses auxquelles vous devriez penser.
RationalGeek
10

Modèles de conception

Une lecture incontournable pour tous les programmeurs:

http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612

Glace noir
la source
2
Livre obsolète maintenant. La plupart des modèles du Gang of Four sont devenus si mal utilisés qu'ils sont presque anti-modèles maintenant. Comme singleton et usine abstraite.
Uberto
1
@Uberto C'est pourquoi tout le monde devrait lire ce livre. Il explique pourquoi et comment utiliser chaque modèle ainsi que le moment où vous devriez probablement envisager autre chose. Si plus de personnes lisaient l'intégralité de l'entrée du modèle, je pense que beaucoup de ces problèmes disparaîtraient.
Thomas Owens
J'ai trouvé ce livre très lourd à lire et à comprendre. Je soupçonne la plupart des gens de faire semblant de le lire et de copier-coller les exemples. Je ne le proposerai donc pas comme premier livre pour un futur architecte. C'est certainement important pour un point de vue historique de l'architecture sw actuelle.
Uberto
Est-ce que quelqu'un d'autre pense que Groupthink est une énorme maladie dans la profession du logiciel? Si suivre des gourous aveuglément (pas ce à quoi le livre s'attendait, mais ce qui s'est en fait passé) est là où va la profession, je pense que la profession de logiciel est vouée à l'échec. Je ne blâme pas ce livre. Je blâme les gens qui l'ont lu et j'ai commencé à penser que le motif-fu grokking pouvait couvrir leur manque de soins pour d'autres pratiques fondamentales de codage propre.
Warren P
8

97 choses que tout architecte logiciel devrait savoir

entrez la description de l'image ici

Zachary K
la source
Zach, tu en as lu un? Je le regardais avant, mais ses critiques sur Amazon n'étaient pas si bonnes.
DXM
J'en ai lu des morceaux. Je ne sais pas si j'ai lu chaque essai mais certains de ceux que j'ai lus en valaient la peine.
Zachary K
7

texte alternatif

ce serait mon choix # 2. Bon livre sur les pratiques et le bon code. Un peu pédant parfois.

Uberto
la source
Je suis d'accord pour dire que c'est pédant, mais les pratiques qu'il préconise sont bien meilleures que 2000 fonctions de ligne.
riwalk
Oui bien sûr, le contenu est très très bon.
Uberto
Ce livre est trop bas pour être considéré comme une architecture logicielle.
Steven Jeuris
6

texte alternatif

C'est mon choix numéro 1 en ce moment. Meilleur livre sur la façon de créer (développer) une application maintenant.

Uberto
la source
3

J'ai trouvé les volumes 1 et 4 de l' architecture logicielle orientée modèle très utiles. Je suis sûr que les autres volumes sont bons aussi, je ne les ai tout simplement pas lus donc je ne peux pas les recommander.

RGT
la source
3

Je ne citerai pas ceux qui l'ont déjà été par d'autres, alors j'ajouterai celui-ci:

Concepts Techniques et modèles de programmation informatique , par Peter Van Roy et Seif Haridi

Concepts Techniques et modèles de programmation informatique

Le problème évident est qu'il a utilisé le système de programmation Mozart (aujourd'hui une sorte de défunt) et l'incroyable langage de programmation Oz . Ce qui a ensuite engendré d'autres expériences intéressantes comme le langage de programmation Alice ML .

C'est, cependant, un livre étonnant, à la fois pour apprendre la programmation informatique et pour avoir une compréhension approfondie des concepts CS et une bonne vue d'ensemble des concepts d'architecture sans utiliser de mots à la mode.

Un peu bavard parfois, mais très bien écrit.

Peut-être plus un livre de théorie CS à la fin qu'un livre d'architecture d'entreprise, mais je trouve ses enseignements très utiles à appliquer aux logiciels de l'industrie.

haylem
la source
2

Un livre intéressant est L'architecture des applications Open Source

Les architectes examinent des milliers de bâtiments au cours de leur formation et étudient les critiques de ces bâtiments rédigées par des maîtres. En revanche, la plupart des développeurs de logiciels ne connaissent bien qu'une poignée de gros programmes - généralement des programmes qu'ils ont eux-mêmes écrits - et n'étudient jamais les grands programmes de l'histoire. En conséquence, ils se répètent les erreurs les uns des autres plutôt que de s'appuyer sur leurs succès mutuels.

L'objectif de ce livre est de changer cela. Dans ce document, les auteurs de vingt-cinq applications open source expliquent comment leur logiciel est structuré et pourquoi. Quelles sont les principales composantes de chaque programme? Comment interagissent-ils? Et qu'ont appris leurs constructeurs au cours de leur développement? En répondant à ces questions, les contributeurs de ce livre fournissent des informations uniques sur la façon dont ils pensent

larsen
la source
2

Microsoft a de très bonnes choses à ce sujet. Pour commencer, ils ont un excellent livre gratuit disponible ici:

http://msdn.microsoft.com/en-us/library/ff650706.aspx

De plus, beaucoup de leurs livres blancs sur le design sont ici:

http://msdn.microsoft.com/en-us/practices/bb190351

Vous voudrez probablement vous renseigner sur les modèles de conception:

http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612

Et puis il y a les classiques - mois homme mythique, code complet, programmeur pragmatique, etc. Un peu de recherche vous aidera à trouver les bons livres.

Rocklan
la source
2

essayez ce petit livre .

Architecture logicielle pour les développeurs - Le livre Un guide pratique et pragmatique de l'architecture logicielle

Ce livre est une collection d'essais qui forment ensemble un guide pratique et pragmatique de l'architecture logicielle.

  1. Qu'est-ce que l'architecture logicielle?

  2. Quel est le rôle d'un architecte logiciel?

  3. Comment définissez-vous l'architecture logicielle?

  4. Comment partagez-vous l'architecture logicielle?

  5. Comment livrez-vous l'architecture logicielle?

Negm Phlestin
la source
Le blog codingthearchitecture.com a également d'excellents articles sur la discipline de l'architecture logicielle.
RationalGeek
1

La question que vous posez est en quelque sorte très intangible. L'architecture logicielle est différente et les architectes logiciels sont un groupe très diversifié.

Quelques notes cependant:

"Clean Code" mentionné ci-dessus est l'un des meilleurs livres que j'ai jamais lu sur la programmation . Mais ce n'est certainement pas un livre sur l'architecture. Lecture obligatoire pour les développeurs, oui, mais ne donne pas beaucoup de détails sur la façon dont les gros éléments s'emboîtent, imo.

"PoEAA" de Fowler est un bon livre, mais comme quelqu'un l'a dit, un peu vieux maintenant, et bon nombre des modèles présentés sont obsolètes il y a plusieurs années.

Le livre DDD d'Eric Evans est un livre très solide et très inspirant sur la construction de logiciels et la collaboration client - des compétences précieuses pour les architectes, mais aussi pour les développeurs.

NisLSimonsen
la source
1

Ce que je suggérerais, veuillez d'abord lire Code Complete 2 . Cela vous aidera à façonner vos pensées et à trouver la meilleure façon de faire les choses.

Du point de vue de l'architecture, c'est un bon début avec les modèles de conception GOF ou Head First.

Patterns of Enterprise Application Architecture est un excellent livre

Sarat
la source