Come dovrei imparare l’architettura e la progettazione del software?

Se stai parlando di progetti open source, la revisione e il debug del codice in progetti open source potrebbe essere utile. Ma penso che sarebbe molto confuso all'inizio. Un interessante progetto open source può essere davvero grande e il codice sarà così travolgente. Ci vuole molto tempo per capire come funzionano le grandi basi di codice. Gli autori del progetto non si preoccupano di spiegare il design e la struttura interna e troverete che la maggior parte della documentazione riguarda la funzionalità di alto livello che conta per l'utente finale. Tuttavia, essere coinvolti nel team e contribuire al progetto è un'enorme esperienza di apprendimento.

Nulla è paragonabile all'esperienza con team professionali. Ma è necessario selezionare il team con cui si vuole lavorare, non tutti i team si preoccupano della qualità dell'architettura e del design. Infatti alcuni team leader e manager spingono contro di essa! Quindi prima di entrare in un team, assicurati di imparare dal tuo team leader e dai tuoi colleghi.

La buona notizia è: Non è l'unico modo per imparare. I "buoni" libri sono un'altra buona opzione.

Essenzialmente, devi imparare a scrivere codice migliore. Refactoring e Amazon.com: Design Patterns: Elementi di Software Orientato agli Oggetti Riutilizzabili eBook: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Grady Booch: Kindle Store sono così importanti all'inizio.

Ci sono così tanti materiali utili in internet scritti da esperti ingegneri del software, consulenti e architetti. Un esempio è martinfowler.com un brillante architetto con un grande stile di scrittura.

Vorrei raccomandare la lettura di qualsiasi cosa scritta da Martin Fowler e Robert Cecil Martin aka Uncle Bob. Hanno ottimi libri, siti web e video.

Devi dare un'occhiata ai video di Clean Coders, ti cambieranno la vita!

Se sei interessato a .NET controlla questo libro Microsoft .NET - Architecting Applications for the Enterprise (2nd Edition) (Developer Reference): Dino Esposito, Andrea Saltarello: 9780735685352: Amazon.com: Libri È pieno di grandi idee e consigli per un'architettura di applicazioni pulita e modulare.

In altre parole: Ci sono tanti pionieri nel campo dell'architettura del software. cercate di trovarli e leggete tutto quello che dicono. Non si limitano a darvi consigli e trucchi, ma cambiano il vostro modo di pensare.

Buona fortuna