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 Repositories [Domain Modeling]

Lite
Javier FerrerRafa Gómez

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

The Repository pattern is one of the easiest to understand, but also one of the easiest to implement incorrectly. In the course, we see how to avoid this.

Go to course

💸 First lesson available without registration 💸

The Repository pattern is a Software Design pattern that provides many advantages. To list a few:

  • Abstraction of persistence: One of the main benefits of using the Repository pattern is that you can separate business logic from data access logic. This makes it easier to modify and maintain both types of logic independently.
  • Testability: By using a repository, you can mock data persistence in unit tests, which can make these easier to write and more reliable.
  • Reusability: By centralizing all operations related to data persistence, it is very easy to reuse it and not copy and paste it all over the place.

Among other things, in this course you will learn to:

  • 🗃️ Leverage the potential of Repositories: More maintainable applications
  • 🔜 Add the repository pattern to your legacy system
  • 👣 Repositories beyond the happy path
  • 🗣️ Debates: We question particularities of the repository design pattern

Videos of the course

  • 🍄 Improve the quality of your code using Repositories
  • 🧤 Avoid infrastructure leaks and be consistent with the level of abstraction

  • 🧳 Refactor: Add repository to your use case
  • 💥 Search vs Find
  • ✅ Do Repositories need their own tests?

  • 🧠 Implement a cache for your repository
  • 🤯 What to do when my repository has 10 methods: Criteria Pattern or Specification Pattern
  • 🔛 Can transactions be used with the Repository pattern?

  • 🤔 Is the repository interface really necessary?
  • 🔌 Adapter pattern in functional programming

  • 🧧 Does it make sense to hide an integration like Stripe within the repository?
  • 🥊 Repository vs DAO
  • 🧨 Do repositories throw exceptions?

  • 🧠 Is an ORM necessary?
  • 🦾 Will all dependencies of use cases always be repositories?
  • 👓 CQRS: Does it imply 1 read repository and one write repository?

  • 🚶 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
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
Standard
Green Slope Audit

🟢 Green Slope Audit

Javier FerrerRafa Gómez

Audit session where we review Green Slope's Software Design and Architecture.

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