Skip to content

Designing Expressive and Performant Persistence Models for Relational DBs

Photo of Victor Rentea
Hosted By
Victor R.
Designing Expressive and Performant Persistence Models for Relational DBs

Details

The goal of any ORM (like Hibernate) is to abstract away the quirks and pain of interacting directly with the underlying relational database. And they do it very well! They do it so well, that you can almost forget about your RDB and shift your focus solely on building a beautiful object model. This works perfectly for a simple application, but when the codebase gets complex or you hit a performance issue you may have to brutally wake up.

To address these concerns, the Domain-Driven Design (DDD) Community building complex applications developed a series of best practices that we will cover in this session. In other words, we will cover many of the "technical tactics" that you can find in the DDD books, but without diving too deeply in the "true meaning" of DDD.

Among the things you will hear:

  • Avoiding bidirectional links
  • Limit relations via numeric ids
  • ID Types (microtypes)
  • Semantic IDs
  • Decomposing large entities
  • Enforcing Entity Consistency & Validation

As usual, please ask any question you want. Expect a highly interactive session.

About the speaker:
Victor is a Java Champion and an Independent Trainer delivering intense webinars for dozens of companies worldwide since 2014. His passion are Simple Design, Refactoring, and Unit Testing, about which he regularly talks at top conferences, but also at the Bucharest Software Craftsmanship Community that he founded. On victorrentea.ro you can find his blog, talks, training curriculum, live masterclasses, and social channels.

Photo of European Software Crafters group
European Software Crafters
See more events