1 option
Domain-driven design with Golang : use Golang to create simple, maintainable systems to solve complex business problems / Matthew Boyle.
- Format:
- Book
- Author/Creator:
- Boyle, Matthew, author.
- Language:
- English
- Subjects (All):
- Go (Computer program language).
- Physical Description:
- 1 online resource (204 pages)
- Edition:
- 1st ed.
- Place of Publication:
- London, England : Packt Publishing, [2022]
- Biography/History:
- Boyle Matthew: Matt Boyle is an experienced technical leader in the field of distributed systems, specializing in using Go. He has worked at huge companies such as Cloudflare & General Electric, as well as exciting high-growth startups such as Curve & Crowdcube. Matt has been writing Go for production since 2018 and often shares blog posts and fun trivia about Go over on Twitter (MattJamesBoyle).
- Summary:
- Chapter 7: DDD for Distributed Systems -- Technical requirements -- What is a distributed system? -- CAP theorem and databases -- Distributed system patterns -- CQRS -- EDA -- Dealing with failure -- Two-phase commit (2PC) -- The saga pattern -- What is a message bus? -- Kafka -- RabbitMQ -- NATS -- Summary -- Further reading -- Chapter 8: TDD, BDD, and DDD -- Technical requirements -- TDD -- Adding a test -- Run the test we just wrote - it should fail (and we should expect it to) -- Write as little code as possible to pass the test -- Refactoring -- BDD -- Summary -- Index
- Contents:
- Cover
- Title Page
- Copyright and credits
- Contributors
- About the reviewers
- Table of Contents
- Preface
- Part 1: Introduction to Domain-Driven Design
- Chapter 1: A Brief History of Domain-Driven Design
- The world before DDD
- So, what are OOD patterns?
- Eric Evans and DDD
- Three pillars of DDD
- Adoption of DDD
- When should you use DDD?
- Summary
- Further reading
- Chapter 2: Understanding Domains, Ubiquitous Language, and Bounded Contexts
- Technical requirements
- Setting the scene
- Domains and sub-domains
- Ubiquitous language
- Benefits of ubiquitous language
- Bounded contexts
- Open Host Service
- Published language
- Anti-corruption layer
- Chapter 3: Entities, Value Objects, and Aggregates
- Working with entities
- Generating good identifiers
- A warning when defining entities
- A note on object-relational mapping
- Working with value objects
- How should I decide whether to use an entity or value object?
- The aggregate pattern
- Discovering aggregates
- Designing aggregates
- Aggregates beyond a single bounded context
- Chapter 4: Exploring Factories, Repositories, and Services
- Introducing the factory pattern
- Entity factories
- Implementing the repository pattern in Golang
- Understanding services
- Domain services
- Application services
- Part 2: Real -World Domain-Driven Design with Golang
- Chapter 5: Applying Domain-Driven Design to a Monolithic Application
- What do we mean when we say monolithic application?
- Getting started with our CoffeeCo system
- Implementing our product repository
- Adding an infrastructure service for payment handling
- Paying with CoffeeBux.
- Adding store-specific discounts
- Extending our service
- Chapter 6: Building a Microservice Using DDD
- A friendly warning (again)
- What do we mean by microservices?
- What are the benefits of microservices?
- What are the downsides of microservices?
- Should my company adopt microservices?
- Setting the scene (again)
- Building a recommendation system
- Revisiting the anti-corruption layer
- Exposing our service via an open host service
- Chapter 7: DDD for Distributed Systems
- What is a distributed system?
- CAP theorem and databases
- Distributed system patterns
- CQRS
- EDA
- Dealing with failure
- Two-phase commit (2PC)
- The saga pattern
- What is a message bus?
- Kafka
- RabbitMQ
- NATS
- Chapter 8: TDD, BDD, and DDD
- TDD
- Adding a test
- Run the test we just wrote - it should fail (and we should expect it to)
- Write as little code as possible to pass the test
- Refactoring
- BDD
- Index
- Other Books You May Enjoy.
- Notes:
- Description based upon print version of record.
- Other Books You May Enjoy
- Includes bibliographical references and index.
- Description based on print version record.
- ISBN:
- 9781804619261
- 1804619264
- OCLC:
- 1354208360
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.