CoursesAI WorkshopCompaniesPricingBlogNewsletter
  • Courses
  • AI Workshop
  • Companies
  • Pricing
  • Blog
  • Newsletter
Subscribe
  • Courses
  • Companies
  • Communities
  • Blog
  • Gift card
  • Newsletter
  • Help
  • Shop
  • ConfAiBot
  • Contact
  • Legal notice
  • General conditions
  • Privacy policy
  • Cookies policy

Course of Projections [Domain Modeling]

Standard
Javier FerrerRafa Gómez

By Javier Ferrer y Rafa Gómez – Software Design and Architecture y Backend

Master Projections in software design to make your applications more maintainable, scalable, and testable.

Go to course

💸 First lesson available without registration 💸

Projections are a cornerstone in software architecture, offering crucial advantages such as:

  • 👷 Maintainability: By having replicated aggregates, each context will only have the data that interests it, leading to smaller and easier to maintain aggregates.
  • 🚀 Scalability: Since we have separated the read model from the write model and optimized it for that, our application can scale much better.
  • ✅ Testability: Since we have separated each responsibility in its projection, we will have more tests, but they will be smaller.

In the course, we see how to achieve all these benefits, but we also emphasize all the trade-offs that projections entail.

Videos of the course

  • 🎥 How to avoid using JOINs
  • 💣 Pros and cons: Repository vs Views vs Materialized Views vs Projections

  • 👂 How to implement a projection: Create retention user upon registration
  • 🧪 Test the projection

  • ⏱️ Project a counter: Likes on a post
  • 📏 Project an average: Average likes per post

  • 🔮 Build the projection by combining Events and Repositories
  • 💣 Mixed model Read and Write model: Avatars of latest likes on posts

  • 🤟 Conclusions and next steps
Go to course

Related courses

Standard
Design patterns: Inbox and Outbox

📬 Design patterns: Inbox and Outbox

Javier FerrerRafa Gómez

Learn when to use (and when not to use) the Inbox and Outbox patterns.

See course
Standard
Clean transactions [Debate]

🤲 Clean transactions [Debate]

Javier FerrerRafa Gómez

Debate where we look at alternatives on how to apply transactions.

See course
Standard
Event Bus in a Database [Infrastructure Design]

🚏 Event Bus in a Database [Infrastructure Design]

Javier FerrerRafa Gómez

Add scalability by using your own database as an event bus.

See course
See full catalogue

Pay according to your needs

lite (only monthly)

19 €
per month
  • Essential programming courses to build a solid foundation
Popular

standard

24,92 €
Discount vs monthly of 49 €
Annual payment of 299 €
per month
  • Main catalog to master writing maintainable, scalable, and testable code
  • Receive job offers verified by Codely
  • Company invoice
  • Accumulate renewal discounts

premium

41,58 €
Discount vs monthly of 89 €
Annual payment of 499 €
per month
  • Exclusive AI courses to keep you always up to date
  • Early access to new courses
  • Discount on workshops
  • Receive job offers verified by Codely
  • Company invoice
  • Accumulate renewal discounts

We won't increase the price while your subscription is active

SubscribeSign in