Cantitate/Preț
Produs

Software Architecture by Example

Autor Paul Michaels
en Limba Engleză Paperback – 29 apr 2022

Ca și Binildas Christudas în Practical Microservices Architectural Patterns, autorul distilează experiență reală în principii acționabile, însă Paul Michaels alege o abordare mult mai granulară, axată pe studii de caz punctuale. Recomandăm acest volum pentru modul în care reușește să transforme concepte teoretice abstracte în soluții de proiectare pentru ecosistemul .NET, oferind o perspectivă pragmatică asupra muncii de arhitect software. Considerăm că punctul forte al lucrării rezidă în structura sa bazată pe scenarii. Software Architecture by Example nu este un catalog static de pattern-uri, ci un ghid de proces. Fiecare capitol pornește de la o problemă de business — de la gestionarea spike-urilor de trafic în vânzarea de bilete, până la complexitatea sistemelor distribuite pentru agenții de turism. Merită menționat că autorul nu se limitează la a prezenta soluția ideală; el explorează și contraindicațiile, explicând, de exemplu, de ce modelul CQRS nu este întotdeauna răspunsul corect pentru orice tip de problemă. Din punct de vedere tehnic, progresia este logică și acoperă teme critice pentru sistemele moderne: cozi de mesaje, pub/sub, Event Sourcing și microservicii. Spre deosebire de alte lucrări tehnice ale autorului, cum este Loose Cannon, care explorează latura narativă și experiențele din publicitate, acest titlu publicat de Apress este un manual tehnic riguros. Structura sa, împărțită în capitole de aproximativ 50 de pagini pentru fiecare mare problemă de design, permite o aprofundare serioasă a codului și a diagramelor de arhitectură, oferind cititorului un set de bune practici pentru menținerea scalabilității și a consistenței datelor în sisteme distribuite.

Citește tot Restrânge

Preț: 29172 lei

Preț vechi: 36465 lei
-20%

Puncte Express: 438

Carte disponibilă

Livrare economică 23 mai-06 iunie


Specificații

ISBN-13: 9781484279892
ISBN-10: 1484279891
Pagini: 232
Ilustrații: XXII, 207 p. 59 illus.
Dimensiuni: 178 x 254 x 13 mm
Greutate: 0.45 kg
Ediția:First Edition
Editura: Apress
Locul publicării:Berkeley, CA, United States

De ce să citești această carte

Recomandăm această carte dezvoltatorilor seniori care doresc să facă pasul spre arhitectură și arhitecților juniori care au nevoie de un cadru metodologic pentru proiectarea sistemelor. Cititorul câștigă capacitatea de a traduce cerințele de business în modele tehnice robuste (CQRS, Event Sourcing) folosind C# și .NET, învățând nu doar cum să aplice un pattern, ci mai ales de ce să îl aleagă într-un context dat.


Despre autor

Paul Michaels este un specialist cu experiență vastă în dezvoltarea software și arhitectură de sistem, recunoscut pentru capacitatea sa de a simplifica concepte complexe prin exemple practice. Pe lângă expertiza sa tehnică în ecosistemul Microsoft și .NET, Michaels are o carieră diversificată, incluzând experiență în industria publicității, reflectată în lucrarea sa anterioară Loose Cannon. Această versatilitate îi permite să abordeze arhitectura software nu doar ca pe un exercițiu de cod, ci ca pe o soluție vitală de business, adaptată nevoilor reale ale clienților.


Cuprins

Chapter 1:  The Ticket Sales Problem Chapter Goal: Design a software solution that addresses the problem of selling tickets for events.  Ticket sales will be initially low, but for certain events there will be huge spikes.
No of pages:   50       
Sub -Topics
1.      Message queues / pub / sub
2.      CQRS – which it doesn’t fit
Chapter 2:  The Cash Desk Problem Chapter Goal: Design a solution that caters for a system tracking money in and out of a cash desk.
No of pages: 50
Sub - Topics  
1.      Event Sourcing
2.      
Chapter 3:  The Travel Agent Problem Chapter Goal: Design a solution that caters for a system whereby you need to interface with many different third-party systems and collate the results.
No of pages:  50
Sub - Topics: 
1.      Distributed systems
2.      Microservices
3.   Service bus
4.  Scheduler Agent Supervisor Pattern
 
Chapter 4: The Social Media Problem Chapter Goal: Design a solution that caters for a system whereby a high frequency of updates are made, and yet the exact order of the transactions is unimportant.
No of pages:  50
Sub - Topics:
1.   CQRS
 
 
Chapter 5: The Admin Application Problem Chapter Goal: Design a solution where a user is able to configure the rules within a given application.
No of pages: 50
1.      N-Tier
2.      Plug-in architecture
Chapter 6: The Travel Rep Problem Chapter Goal: Design a solution to allow an application to accept travel agent queries, but to poll the server offline
No of pages: 50
1.      Ambassador pattern
2.      Message Queues


Notă biografică

Paul Michaels is the Head of Development at musicMagpie. He started his career as a professional software engineer in 1997. Paul is a regular speaker, published author, and Microsoft MVP. He enjoys programming, playing with new technology, and finding neat solutions to problems. When he's not working, you can find him cycling or walking around The Peak District, playing table tennis, or trying to cook for his wife and two children. You can follow him on twitter @paul_michaels or find him on LinkedIn. He also writes a blog at pmichaels.net.


Caracteristici

All architectural principles and patterns are explained and translated into concrete code samples
Includes examples and code written in C# and .NET
Covers alternative solutions to each problem and scenario discussed

Descriere

Design system solutions using modern architectural patterns and practices. This book discusses methods to keep a system responsive, even when it is being constantly updated, extending a system's functionality without changing the core code, methods of maintaining data history, and designing a distributed transactional system.

 
This book will guide you in understanding how a software solution is designed using different architectural processes and scenarios. Each scenario explains if and why a software solution is required to resolve a given issue, and discusses possible architectural approaches to solve the problem. You will learn specific implementations of software architecture for each case along with different approaches to achieve the solutions. Each chapter is structured as a real-world requirement from a client and describes a process to meet that requirement.
After reading this book, you should have a high-level understanding of the architectural patterns used in the book, and you should have a methodology for approaching system design.

 
What You Will Learn
  • Understand design principles and considerations for various stages of software development
  • Translate patterns into code samples
  • Create a blueprint for approaching system design
  • Understand architectural patterns: CQRS, event sourcing, distributed systems, distributed transactions, and plug-in architecture
 
Who This Book Is For
 
Developers who wish to move into architecture, and junior software architects also will find the book useful