Code I like (I): Domain-driven boldness
17-Jun-2022 854
A person in Basecamp has a delegate type attribute that represents its specific kind (e.g., User or Client). When you remove a person from a given account, Basecamp replaces it with a placeholder so that its associated data remains untouched and functional. I was well-versed in Domain-Driven Design and the importance of code reflecting domain concepts, but I had never seen that idea put into practice so intentionally before. I would have expected something like replacing a person with a placeholder when removing it, but erecting a tombstone when deceasing a person was so much better.
Code I like (I): Domain-driven boldness #ruby #rubydeveloper #rubyonrails #Domain-driven #boldness #code https://rubyonrails.ba/link/code-i-like-i-domain-driven-boldness