Тёмный

Domain Driven Design: Value Objects 

Coding Concepts
Подписаться 2,1 тыс.
Просмотров 18 тыс.
50% 1

A simple guide to effectively using Value Objects in Domain Driven Design for richer, more cohesive code.
Let's Connect 🤝:
codingconcepts.io/connect

Наука

Опубликовано:

 

21 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 33   
@AlexLavrik
@AlexLavrik 3 месяца назад
Best ever explanation of Value Objects!
@CodingConcepts
@CodingConcepts 3 месяца назад
Thank you!
@MohitSharma-tn5mf
@MohitSharma-tn5mf 3 года назад
Nicely explained. Great Video. Please make more videos on DDD.
@fagnersales532
@fagnersales532 3 года назад
Vídeo incrível, adorei! Abraços do Brasil :)
@dimpho.ngache
@dimpho.ngache 10 месяцев назад
Great content
@javierolazaran7227
@javierolazaran7227 3 года назад
Very well explained. I hope you continue creating content.
@psychotrout
@psychotrout 3 года назад
"I really hope you found some value inside this video" yes, Value Objects :D
@adamnorman85
@adamnorman85 Год назад
Really helpful 👌
@nilpunch2
@nilpunch2 3 года назад
Just thank you. Really, thank you for the great explanation. You put a lot of work into it, and it's worthy of respect. You are cool, I will be very happy to watch more videos about DDD from you.
@CodingConcepts
@CodingConcepts 3 года назад
Thank you for the nice comment. I really appreciate it. I’m glad you enjoyed the video.
@ruslanustiuhov5510
@ruslanustiuhov5510 3 года назад
Thank for awesome video!
@clemhamon1935
@clemhamon1935 2 года назад
Great video, it deserves more views ;)
@supa.scoopa
@supa.scoopa 7 месяцев назад
Brilliant videos!
@sneakytiki89
@sneakytiki89 3 года назад
Great vid! Also reading this Eric Evans book you mentioned and was confused at this part. Thank you for the clarification :)
@CodingConcepts
@CodingConcepts 3 года назад
I appreciate the nice comment and you’re welcome.
@ksdekamil
@ksdekamil 2 года назад
amazing
@bhaveshverma8629
@bhaveshverma8629 3 года назад
Bro very very thanks for the video
@worddoc4322
@worddoc4322 3 года назад
Dude, well done!
@CodingConcepts
@CodingConcepts 3 года назад
Thank you. Glad you enjoyed it.
@worddoc4322
@worddoc4322 3 года назад
@@CodingConcepts Are you going to dive deeper into DDD and explain such things like Domain, Aggregator and so on?
@CodingConcepts
@CodingConcepts 3 года назад
@@worddoc4322 Yeah. The plan as of now is to run through more DDD concepts.
@FlorinAsavei
@FlorinAsavei 3 года назад
I finally got it! Thank you!
@CodingConcepts
@CodingConcepts 3 года назад
You’re welcome!
@dijaymatic8005
@dijaymatic8005 2 года назад
How does this relate to aggregates, aggregate roots and entities
@CodingConcepts
@CodingConcepts 2 года назад
It all depends on the context of your problem. A common example I like to use to explain these is money. Value Object: Value objects are void of identity, and are all about measuring and quantifying things. If you have $5, you don't care which five dollar bill you have in relation to all the five dollar bills in circulation, just the fact that you have $5. Entities: Now consider money within the context of the government responsible for creating the actual dollar bills. Each five dollar bill has an identity within this context as we're interested in tracking all the five dollar bills created and create a unique serial printed on each bill. We would treat money as an entity because money has an identity in this scenario. Aggregates: Aggregates are a cluster of related objects that we treat as a unit for the purpose of data changes. Aggregates are also responsible for enforcing invariants, which are conditions that must be true before performing an action. Aggregate root: The aggregate root is the entity you choose within your aggregate to be the entry point of your aggregate. Other objects within your domain can hold references to only the aggregate root and not the internal entitles. All actions that need to be taken against your aggregate must happen through the aggregate root. Consider an example of Money, Accounts and Bank objects and you want to perform a $100 withdrawal. We could create an aggregate with these three objects with the Bank object being the aggregate root. That means you would perform your withdrawal through the bank object. The aggregate would then enforce the invariants, perhaps checking your account if you have enough money to perform the withdrawal. And if you do, it would dispense the money and appropriately reduce your account. The key thing to note here is the interactions with the account and money objects are internal to the aggregate and you're accessing the aggregate through the bank aggregate root. Hope this helps clear things up for you.
@MrHyde-kc3dv
@MrHyde-kc3dv 3 года назад
nice tx
@CodingConcepts
@CodingConcepts 3 года назад
You're welcome
@danieljoseph1122
@danieljoseph1122 3 года назад
Thanks , Got clarified
@CodingConcepts
@CodingConcepts 3 года назад
You’re welcome
@andrewpullins8817
@andrewpullins8817 3 года назад
Your thumbnails are very bad. The reason being is if you look at RU-vid playlists they have black transparent rectangles to the right with white text. I almost did not click on this video because I thought it was a playlist and did not want to watch many videos on this subject.
@CodingConcepts
@CodingConcepts 3 года назад
Thanks for the feedback.
@lopsanggrg
@lopsanggrg 3 года назад
Exactly what I was thinking.
@jongrover8763
@jongrover8763 2 года назад
I think, data oriented people trying to understand information.
Далее
Domain Driven Design: Entities
17:34
Просмотров 869
지민 (Jimin) 'Who' Official MV
03:28
Просмотров 13 млн
В GEOMETRY DASH СДЕЛАЛИ GTA
00:27
Просмотров 524 тыс.
skibidi toilet 76 (full episode)
08:11
Просмотров 10 млн
Stray Kids "Chk Chk Boom" M/V
03:26
Просмотров 31 млн
How to Use Value Objects to Solve Primitive Obsession
13:54
Domain Driven Design Review | System Design Essentials
13:48
The Ultimate Guide to C# Records
12:55
Просмотров 16 тыс.
Mastering DDD Aggregate Modeling With THESE 3 Steps
17:26
Собираем комп за 500 000 рублей!
6:44:35