DDD's Holy Grail

Поделиться
HTML-код
  • Опубликовано: 28 сен 2024

Комментарии • 25

  • @MilanJovanovicTech
    @MilanJovanovicTech Год назад +25

    Long time no see!

  • @alan-
    @alan- Год назад +3

    What happened to the Buber Dinner series? It got so far then stuck, not working.

  • @spyroskatsios
    @spyroskatsios Год назад +5

    I bought the course and i have to say it's an excellent one. I really recommend it to anyone who wants to learn DDD and even the ones who are already familiar with it. I really liked the flow and how comprehensive it was. I wish I had something like that when I first started with DDD!

    • @amantinband
      @amantinband  Год назад +1

      Wow what an exciting comment ❤️

  • @Adrianvdh
    @Adrianvdh 6 месяцев назад

    Just bought the DDD dometrain course. So far I'm loving it. Amichai get's straight to the point and teaches all the essentials for DDD and implements them right in code. This is probably one of the best DDD courses right now :)
    Amichai, may I make a couple suggestions to the course please. When watching your "Exploring a Complex Domain" section, would you include the same content convered in your videos listed below however applied to the DomeGym example?
    - Mapping Software Logic Using Process Modeling
    - Event Storming - what it is and why you should use it with Domain-Driven Design
    - 3 Steps for Modeling a Complex Domain
    I've really enjoyed the videos listed above on your RUclips channel, and I would love to see them applied to your DomeGym example in the course.
    Great RUclips channel exploring CA and DDD content. Would love to also see more microservices content :)

    • @amantinband
      @amantinband  6 месяцев назад +1

      Great to hear! I’ll be covering all these topics in depth in the deep dive and advanced courses

  • @WahidRezgui
    @WahidRezgui Год назад

    So glad to see you again

  • @qaphuikpoh
    @qaphuikpoh Год назад +1

    He's back!!

  • @MURATGÜLHAN-w5e
    @MURATGÜLHAN-w5e 8 месяцев назад

    Hi Amichai,
    I watched your 'REST API following CLEAN ARCHITECTURE & DDD Tutorial' video series. I must say, I truly appreciate the fantastic work you've done and the effort you've put in. However, when I try to make payment via Patreon to access the source code, I encounter an error due to my country. Is there another way I can access this source code?
    Best regards,

  • @surajkaintura7968
    @surajkaintura7968 Год назад +1

    Waiting for those livestreams. ❤

    • @amantinband
      @amantinband  Год назад

      I had a blast making them so expect more in the future

  • @alexhardy09
    @alexhardy09 Год назад

    The best ddd course

  • @eugene_potashkin
    @eugene_potashkin Год назад

    Cool, I'm in.

  • @zagoskintoto
    @zagoskintoto Год назад +5

    There's always something that bugs with DDD and implementing the persistence using EF. How are you supposed to query entities that live inside aggregates? For instance, in your domain model, reservations were part of the Dinner aggregate. What if you wanted to get all the reservations across all dinners? EF kinda forces you to fetch every Dinner and then just get the reservations from them, because we don't hold an object reference in the entities. How do you go around this? do you implement a "read only" context that exposes every table as a dbset with no tracking and overrides the save changes? Do you just use another solution like dapper to read entities? I really feel lost on this one

    • @masterofclay123
      @masterofclay123 10 месяцев назад

      I don't think you're supposed to do a query for an aggregate's entities. I think you found a flaw in the Domain Model aggregates.
      I think Reservations should be an aggregate.
      Cause then if I was a Host, I could query for Reservations made for a certain Restaurant on a given day.
      And Users could query for their Reservations on larger time ranges

    • @afailable
      @afailable 5 месяцев назад +1

      you could probably implement something akin to a projection in event sourcing, a materialized view, for querying purposes. the aggregate is simply to enforce invariants when processing business logic, and really has nothing to say with how you query the data.
      aggregates are for the C part of CQRS, queries can be implemented any number of ways. In terms of EF Core, probably a database view is the best way to handle it

  • @jcmoore2013
    @jcmoore2013 Год назад +1

    Do you have any suggestions on handling Id's when the repository is generating it via auto increment on insert. Thanks for doing the DDD course, been working through it.

  • @jonathanchen8142
    @jonathanchen8142 8 месяцев назад

    Any chances of getting a Domain Driven Design Deep dive course?

  • @gabrielgibran6266
    @gabrielgibran6266 Год назад +1

    I'm so glad you're back!

  • @LuisAlonzoRivero
    @LuisAlonzoRivero 8 месяцев назад

    Your DDD dometrain course was an eye opener. I finally understood how Domain Events work and one concrete way of implementing them.
    I’m already building and designing my next application to include Domain Events.

  • @birukayalew3862
    @birukayalew3862 Год назад

    Fantastic explanation. As always I love the way you present and content. Thank you Amichai

  • @nailalzuhairi2690
    @nailalzuhairi2690 Год назад

    Where is the course ? Udemy?

  • @ayalamac
    @ayalamac Год назад

    I really want to know what kind of collaboration this is. Are you building Dometrain with Nick? Are you only using his platform for this course? This is really cool!

    • @amantinband
      @amantinband  Год назад

      Yeah I'm loving this collab as well. Publishing these courses exclusively on dometrain.

  • @augustincalin
    @augustincalin 4 месяца назад

    Assembling entities (models) into aggregates based on invariants (validation rules) makes sense when you think about EF dbcontexts: if you have a valid aggregate in memory, you can have it in a dbcontext; and if you have it in a dbcontext you just teleport it into the database and you know it's still valid there.
    But what happens if you have invariants which are overlapping, like, for instance Guest - Reservation and Guest - Allergy? Will be ok if User will be part of 2 aggregates? Should I buy the course to find the answer on this? 🫣