Errori e compromessi nel software: Come prendere buone decisioni di programmazione

Punteggio:   (4,3 su 5)

Errori e compromessi nel software: Come prendere buone decisioni di programmazione (Tomasz Lelek)

Recensioni dei lettori

Riepilogo:

Il libro fornisce un'esplorazione dettagliata dei compromessi nell'ingegneria del software, sottolineando l'importanza di comprendere le alternative e le implicazioni reali delle decisioni di progettazione. Pur offrendo spunti preziosi e incoraggiando un approccio pragmatico, ha ricevuto recensioni contrastanti per quanto riguarda la qualità della scrittura e la rilevanza per i diversi livelli di esperienza.

Vantaggi:

Offre spunti preziosi su compromessi e scenari realistici nell'ingegneria del software.
Incoraggia il pensiero critico su quando infrangere le regole convenzionali, come l'uso accettabile della duplicazione del codice.
Contiene esempi pratici applicabili a situazioni reali.
Affronta una serie di argomenti rilevanti per gli ingegneri del software a vari livelli.
Promuove una comprensione equilibrata delle migliori pratiche rispetto all'effettiva implementazione.

Svantaggi:

Alcuni capitoli sono eccessivamente incentrati su argomenti banali specifici di Java, che potrebbero non essere coinvolgenti per gli sviluppatori esperti.
Qualità di scrittura altalenante, con alcune sezioni inutilmente prolisse o semplicistiche.
Manca un'esplorazione approfondita di scenari complessi del mondo reale e riferimenti a ulteriori letture.
Alcuni esempi possono sembrare troppo artificiosi o ovvi, limitando la loro applicabilità pratica.

(basato su 5 recensioni dei lettori)

Titolo originale:

Software Mistakes and Tradeoffs: How to Make Good Programming Decisions

Contenuto del libro:

Ottimizzate le decisioni che definiscono il vostro codice esplorando gli errori comuni e i compromessi intenzionali fatti da sviluppatori esperti.

In Errori e compromessi nel software imparerete a:

Ragionare sui vostri sistemi per prendere decisioni di progettazione intuitive e migliori.

Capire le conseguenze e come bilanciare i compromessi.

Scegliere la libreria giusta per il vostro problema.

Analizzare a fondo tutte le dipendenze del vostro servizio.

Capire la semantica della consegna e come influenza l'architettura distribuita.

Progettare ed eseguire test delle prestazioni per individuare i percorsi critici del codice e convalidare gli SLA del sistema.

Individuare e ottimizzare i percorsi caldi del codice per concentrare gli sforzi di ottimizzazione sulle cause principali.

Decidere un modello di dati adeguato per la gestione di data e ora per evitare errori comuni (ma sottili).

Ragionare sulla compatibilità e sul versioning per evitare problemi imprevisti ai client API.

Capire l'accoppiamento stretto/libero e come influenza il coordinamento del lavoro tra i team.

Chiarire i requisiti fino a renderli precisi, facilmente implementabili e facilmente testabili.

Ottimizzare le API per un'esperienza d'uso amichevole.

Prestazioni del codice contro semplicità. Velocità di consegna contro duplicazione. Flessibilità contro manutenibilità: ogni decisione presa nell'ambito dell'ingegneria del software implica il bilanciamento di compromessi. In Software Mistakes and Tradeoffs imparerete dai costosi errori che Tomasz Lelek e Jon Skeet hanno incontrato nel corso della loro straordinaria carriera. Esplorerete scenari reali in cui la scarsa comprensione dei compromessi ha portato a gravi problemi, in modo da poter prevenire i vostri stessi errori con un approccio più ponderato al processo decisionale.

Imparerete come la duplicazione del codice influisca sull'accoppiamento e sulla velocità di evoluzione dei vostri sistemi e come requisiti semplici possano avere sfumature nascoste per quanto riguarda le informazioni su data e ora. Scoprite come restringere efficacemente il campo di ottimizzazione secondo i principi di Pareto 80/20 e come garantire la coerenza dei vostri sistemi distribuiti. Avrete presto accumulato il tipo di conoscenza che deriva solo da anni di esperienza.

L'acquisto del libro stampato include un eBook gratuito nei formati PDF, Kindle e ePub di Manning Publications.

Informazioni sulla tecnologia.

Ogni fase di un progetto software comporta dei compromessi. Quando si tratta di bilanciare velocità, sicurezza, costi, tempi di consegna, funzionalità e altro ancora, le scelte progettuali ragionevoli possono rivelarsi problematiche in produzione. Le intuizioni degli esperti e le storie di guerra di questo libro vi aiuteranno a fare le scelte giuste durante la progettazione e la realizzazione delle applicazioni.

Informazioni sul libro.

Software Mistakes and Tradeoffs (Errori e compromessi nel software) esplora scenari reali in cui sono state prese decisioni sbagliate in materia di compromessi e illustra cosa si sarebbe potuto fare diversamente. Gli autori Tomasz Lelek e Jon Skeet condividono la saggezza basata su decenni di esperienza nell'ingegneria del software, compresi alcuni errori deliziosamente istruttivi. Apprezzerete i consigli specifici e le tecniche pratiche che accompagnano ogni esempio, oltre ai modelli sempreverdi che cambieranno il modo di affrontare i vostri prossimi progetti.

Cosa contiene.

Come ragionare sul software in modo sistematico.

Come scegliere strumenti, librerie e framework.

Come l'accoppiamento stretto e lasco influisce sulla coordinazione del team.

Requisiti precisi, facili da implementare e da testare.

Il lettore.

Per sviluppatori e architetti di medio e alto livello che prendono decisioni sulla progettazione e l'implementazione del software.

L'autore.

Tomasz Lelek lavora quotidianamente con una vasta gamma di servizi di produzione, architetture e linguaggi JVM. Ingegnere di Google e autore di C# in Depth, Jon Skeet è famoso per i suoi numerosi contributi pratici a Stack Overflow.

Indice dei contenuti.

1 Introduzione.

2 La duplicazione del codice non è sempre negativa: Duplicazione del codice vs. flessibilità.

3 Eccezioni e altri modelli di gestione degli errori nel codice.

4 Bilanciare flessibilità e complessità.

5 Ottimizzazione prematura vs. ottimizzazione del percorso caldo: Decisioni che influiscono sulle prestazioni del codice.

6 Semplicità e costo di manutenzione dell'API.

7 Lavorare efficacemente con i dati di data e ora.

8 Sfruttare la localizzazione dei dati e la memoria delle macchine.

9 Librerie di terze parti: Le librerie utilizzate diventano il vostro codice.

10 Consistenza e atomicità nei sistemi distribuiti.

11 Semantica di consegna nei sistemi distribuiti.

12 Gestione del versioning e della compatibilità.

13 Mantenere il passo con le tendenze rispetto al costo di manutenzione del codice.

Altre informazioni sul libro:

ISBN:9781617299209
Autore:
Editore:
Lingua:inglese
Rilegatura:Copertina morbida
Anno di pubblicazione:2022
Numero di pagine:300

Acquisto:

Attualmente disponibile, in magazzino.

Lo compro!

Altri libri dell'autore:

Errori e compromessi nel software: Come prendere buone decisioni di programmazione - Software...
Ottimizzate le decisioni che definiscono il vostro...
Errori e compromessi nel software: Come prendere buone decisioni di programmazione - Software Mistakes and Tradeoffs: How to Make Good Programming Decisions

Le opere dell'autore sono state pubblicate dai seguenti editori:

© Book1 Group - tutti i diritti riservati.
Il contenuto di questo sito non può essere copiato o utilizzato, né in parte né per intero, senza il permesso scritto del proprietario.
Ultima modifica: 2024.11.08 20:28 (GMT)