Описание тега irepository
Развязка хороша, потому что это означает, что ваш код...:
Ваш код гораздо более пригоден для повторного использования. Это просто хорошо. Ваш код может использовать инверсию управления (или внедрение зависимостей). Это хорошо, чтобы ваши проблемы были разделены. Это особенно хорошо, потому что это позволяет модульное тестирование... Ваш код может быть модульным тестированием. Это особенно хорошо в больших проектах со сложными алгоритмами. Он хорош во всем, потому что он расширяет ваше понимание технологий, с которыми вы работаете, и областей, которые вы пытаетесь моделировать в программном обеспечении. Ваш код строится на основе лучших практик и по общему шаблону. Это хорошо, потому что значительно упрощает обслуживание.
Подробнее: /questions/32038033/chto-takoe-irepository-i-dlya-chego-on-ispolzuetsya/32038051#32038051