Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore Domain Driven Design and Onion Architecture in Scala through this 50-minute conference talk from Scala Days New York 2016. Dive into key concepts like Ubiquitous Language, Bounded Contexts, and Domain Building Blocks. Learn how to create clean package structures and abstraction layers for portable, testable, and maintainable code. Follow along with a practical case study that demonstrates the implementation of Repositories, Services, Aggregates, and more. Discover techniques for rapidly prototyping domains using Scala's case classes and traits, and understand how to evolve your codebase effectively. Gain insights into decoupling domains, functional testing, and applying the Dependency Inversion Principle. Whether you're new to Domain Driven Design or looking to enhance your Scala development practices, this code-driven presentation offers valuable strategies for improving code readability and maintainability.
Syllabus
Introduction
What is Domain Driven Design?
Ubiquitous Language
Case Study Language
Case Study: Bounded Contexts
Domain Building Blocks
Case Study: Domain objects
Onion Architecture
Decoupling the Domain
Case Study: The First Crack
Case Study: Second Crack
Case Study: Functional Testing
Case Study: How would you like your eges?
Tiny Types
Case Study: Identifying our Cook
Case Study Broken Frying Pan
Case Study: Fixed Frying Pan
Evolving Truth
Repositories and stories
Case Study: A Carton of Ees
Dependency Inversion Principle
Taught by
Scala Days Conferences