I migliori libri sulla teoria e la pratica dell'architettura software? [chiuso]


32

Nella mia azienda ho un paio di sviluppatori che desiderano passare dalla programmazione all'architettura. Quali sono i migliori libri là fuori sulla teoria e la pratica dell'architettura software? Se possibile, includi un'immagine di copertina.

Sentiti libero di includere libri di carattere generale e anche libri relativi a una tecnologia specifica.


3
Non è una risposta diretta, quindi solo un commento. Il modo migliore (e davvero unico) per imparare ad essere un architetto è quello di un altro architetto, preferibilmente un maestro architetto. L'architettura e l'ingegneria del software in generale sono ancora in uno stato preindustrializzato dal punto di vista di altre discipline ingegneristiche. Facciamo ancora apprendista-> journeyman-> avanzamento di tipo master.
JP Alioto,

Risposte:


15

testo alternativo

(link al libro)

Questo è un bel libro, anche se non si occupa dell'architettura software in generale, ma dell'architettura delle applicazioni aziendali.


è stato un buon libro quando è stato pubblicato, ma penso che la maggior parte dei modelli non siano utilizzati molto nel settore. Non è un brutto libro ma di sicuro non uno dei primi 5 secondo me
Uberto il

Sebbene sia chiamato "Enterprise Application Architecture", è approssimativamente allo stesso livello del libro GoF Design Patterns, che è un design a livello di classe piuttosto che un'architettura a livello di applicazione.
Thomas Owens

Ugh, non mi piace questo libro. Non ti aiuterà a diventare un architetto.
JP Alioto,

Il libro è ok, ma in realtà riguarda solo le applicazioni aziendali. Se stai facendo qualsiasi altro tipo di sviluppo (ad esempio desktop, mobile, incorporato) non è molto utile.
Nikie,

16

testo alternativo

Incoraggerei questi sviluppatori a non spostarsi nell'architettura e a dimenticare completamente la programmazione. Se lo fanno, non avranno alcun rispetto da parte dei programmatori e non saranno adeguatamente attrezzati per prendere decisioni sull'architettura.


11

Il libro comunemente citato / referenziato sulle architetture software e il libro usato quando ho seguito il corso di Architettura del software nella mia università è Software Architecture in Practice (2a edizione) di Len Bass, Paul Clements e Rick Kazman .

Almeno un professore che insegna il corso ha trasformato il libro di testo in Software Systems Architecture di Nick Rozanski e Eoin Woods , ma non posso garantire la qualità o il contenuto di quel libro. Secondo Sergio Acosta (nei commenti), il libro di Rozanski è più recente, basato sul lavoro di Bass, e lo ritiene più facile da leggere. Raramente sono deluso dai libri usati nel programma di ingegneria del software.


2
Ho usato entrambi (Bass e Rozanski). Bass 'è stata la bibbia architettonica per lungo tempo, ma quella di Rozanski è più recente e aggiornata; è più facile da leggere e fortemente basato su Bass '. Consiglio vivamente di iniziare con Rozanski.
Sergio Acosta,

1
+1 il libro di Bass è stato una buona lettura quando ho iniziato a studiare architettura. È un po 'secco ma ti dà un'idea del tipo di cose a cui dovresti pensare.
RationalGeek,

10

2
Libro obsoleto ora. La maggior parte degli schemi della banda di quattro sono diventati così abusati che ora sono quasi anti-schemi. Come singleton e fabbrica astratta.
Uberto,

1
@Uberto Ecco perché tutti dovrebbero leggere questo libro. Spiega perché e come utilizzare ogni modello insieme a quando probabilmente dovresti considerare qualcos'altro. Se più persone leggessero l'intero schema, penso che molti di questi problemi sarebbero scomparsi.
Thomas Owens

Ho trovato quel libro molto pesante da leggere e da capire. Sospetto che la maggior parte delle persone faccia solo finta di leggerlo e incollare gli esempi. Quindi non lo suggerirò come primo libro per un futuro architetto. Sicuramente è importante per un punto di vista storico dell'attuale architettura sw.
Uberto,

Qualcun altro pensa che Groupthink sia una malattia enorme nella professione del software? Se seguire i guru alla cieca (non è quello che il libro si aspettava, ma ciò che in effetti è accaduto) è dove sta andando la professione, penso che la professione del software sia condannata. Non incolpo questo libro. Incolpo le persone che lo leggono e ho iniziato a pensare che il modello di grokking-fu potesse coprire la loro mancanza di cura per altre pratiche fondamentali di programmazione pulita.
Warren P,


7

testo alternativo

questa sarebbe la mia scelta n. 2. Buon libro su pratiche e buon codice. Un po 'pedante a volte.


Sono d'accordo sul fatto che sia pedante, ma le pratiche che sostiene sono molto meglio delle 2000 funzioni di linea.
riwalk

Sì certo, il contenuto è molto buono.
Uberto,

Questo libro è troppo basso per essere considerato un'architettura software.
Steven Jeuris,

6

testo alternativo

Questa è la mia scelta numero 1 in questo momento. Il miglior libro su come costruire (crescere) l'applicazione ora.






3

Non citerò quelli che sono già stati di altri, quindi aggiungerò questo:

Concetti tecniche e modelli di programmazione informatica , di Peter Van Roy e Seif Haridi

Concetti Tecniche e modelli di programmazione informatica

Il problema ovvio è che ha usato il defunto Mozart Programming System e lo straordinario linguaggio di programmazione di Oz . Che ha poi generato altri interessanti esperimenti come il linguaggio di programmazione Alice ML .

È, tuttavia, un libro straordinario, sia per imparare la programmazione del computer sia per avere una profonda comprensione dei concetti di CS e una buona panoramica dei concetti di architettura senza usare parole d'ordine.

Un po 'prolisso a volte, ma molto ben scritto.

Forse più di un libro di teoria CS alla fine di un libro di architettura aziendale, ma trovo che i suoi insegnamenti siano molto utili da applicare al software industriale.




2

Un libro interessante è The Architecture of Open Source Applications

Gli architetti osservano migliaia di edifici durante la loro formazione e studiano le critiche di quegli edifici scritti da maestri. Al contrario, la maggior parte degli sviluppatori di software conosce sempre bene solo una manciata di programmi di grandi dimensioni - di solito programmi che hanno scritto da soli - e non studia mai i grandi programmi della storia. Di conseguenza, si ripetono reciprocamente gli errori piuttosto che basarsi sui reciproci successi.

L'obiettivo di questo libro è quello di cambiarlo. In esso, gli autori di venticinque applicazioni open source spiegano come sono strutturati i loro software e perché. Quali sono i componenti principali di ciascun programma? Come interagiscono? E cosa hanno imparato i loro costruttori durante il loro sviluppo? Nel rispondere a queste domande, i partecipanti a questo libro forniscono spunti unici su come pensano


2

Microsoft ha delle cose davvero buone su questo. Per cominciare hanno un grande libro gratuito disponibile qui:

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

Inoltre molti dei loro white paper sul design sono qui:

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

Probabilmente vuoi leggere i modelli di progettazione:

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

E poi ci sono i classici: mese uomo mitico, codice completo, programmatore pragmatico ecc. Un po 'di googling ti aiuterà a trovare i buoni libri.


2

prova questo piccolo libro .

Software Architecture for Developers - The Book Una guida pratica e pragmatica all'architettura software

Questo libro è una raccolta di saggi che insieme formano una guida pratica e pragmatica all'architettura del software.

  1. Cos'è l'architettura software?

  2. Qual è il ruolo di un architetto del software?

  3. Come si definisce l'architettura software?

  4. Come condividi l'architettura software?

  5. Come fornite l'architettura software?


Il blog codingthearchitecture.com contiene anche alcuni post eccellenti sulla disciplina dell'architettura software.
RationalGeek,


1

La domanda che stai ponendo è inimmaginabile, in un certo senso. L'architettura del software è qualcosa di diverso e gli architetti del software sono un gruppo molto diversificato.

Alcune note, tuttavia:

"Clean Code" di cui sopra è uno dei migliori libri che abbia mai letto sulla programmazione . Ma non è certamente un libro sull'architettura. Lettura obbligatoria per gli sviluppatori, sì, ma non fornisce molte informazioni su come le cose più grandi si incastrano, imo.

"PoEAA" di Fowler è un buon libro, ma come ha detto qualcun altro, un po 'vecchio ormai, e molti dei modelli presentati sono stati obsoleti diversi anni fa.

Il libro DDD di Eric Evans è un libro molto solido e molto stimolante sulla costruzione di software e sulla collaborazione con i clienti: competenze preziose per gli architetti, ma anche per gli sviluppatori.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.