Найти в Дзене

Почему вам необходимо научиться пользоваться интерфейсами в программировании?

Полиморфизм пугает начинающих разработчиков, но его обожают опытные. И сейчас основной инструмент для реализация полиморфных связей это интерфейсы. Новички незаслуженно стараются обходить их стороной, и напрасно, ведь они предоставляют крутые возможности!

Интерфейсы C Sharp предоставляют действительно крутые возможности для разработки гибких приложений
Интерфейсы C Sharp предоставляют действительно крутые возможности для разработки гибких приложений

Например, начинать проектирование приложения намного удобнее именно с интерфейсов, ведь именно благодаря этому можно ускорить старт разработки, а также упростить разделение работы как между отдельными программистами, так и между командами.

Если вы хотите создать более гибкую систему, которую можно будет легко менять и конфигурировать под конкретные требования, то еще на этапе проектирования следует задуматься на разделение кода на слои. И здесь интерфейсы подходят как нельзя лучше.

Для реализации полиморфных связей можно использовать и базовый абстрактный класс, но это делает классы слишком сильно связными между собой. Чтобы избегать этого будет лучше применять именно интерфейсы.

Создание хороших тестов для своего кода, практически невозможно без использования интерфейсов. Хороший пример этого – mock-тесты, которые позволяют использовать заглушки вместе реальных систем и находить ошибки на самых ранних этапах.

А про удобство использования DI-контейнеров даже говорить не приходится. Возможность налету конфигурировать приложение в одном месте просто бесценно.

Поэтому, чтобы еще лучше разобраться с применением интерфейсов я выпустил специальное видео, в котором на практике продемонстрировано использование всех преимуществ интерфейсов, перечисленных ранее.

Весь исходный код из видео подробно разобран в специальной статье Интерфейсы C# на практике в моем блоге. Если интересует более сложные технические статьи о программировании с примерами, то можете посмотреть там.

Рекомендую также прочитать мою предыдущую статью - Как спорт влияет на продуктивность. А также подписывайтесь на группу ВКонтактеTelegram, Инстаграм  и YouTube-канал. Там еще больше полезного и интересного для программистов.