************************************************ Соцсети: Telegram: YouTube: @EngineerSpock Дзен: VK: ************************************************ НАШ САЙТ И КУРСЫ: Поддержать: ************************************************ СЕРВИСЫ И БРЕНДЫ, которые я люблю и которыми пользуюсь сам: Адресная ПОМОЩЬ пожилым и больным детям, ссылка для смартфонов: Бизнес в Альфа-Банке: Биржевой дракон - сервис автоматической торговли криптой для РИСКОВОЙ части инвестиционного портфеля: Почитать их ТГ-канал: Для оформления подписки на их сервис: - писать сюда и назвать кодовое слово “DragonElias“ ************************************************ SOLID принципы - это большАя часть современной теории ООП (объектно-ориентированного программирования). Впервые сам термин предложил дядя Боб (Uncle Bob), хотя основы для выведения принципов были известны до него и разбирались, например, в известном труде Бертрана Мейера (“Объектно-ориентированное конструирование программных систем“). SOLID расшифровывается так: S - Single Responsibility Principle (SRP) - Принцип единственной ответственности O - Open Closed Principle (OCP) - Принцип открытости/закрытости L - Liskov Substitution Principles (LSP) - Принцип подстановки Барбары Лисков I - Interface Segregation Principle (ISP) - Принцип разделения интерфейса D - Dependency Inversion Principle (DIP) - Принцип инверсии зависимости Следование принципам SOLID в программировании имеет огромную роль с точки зрения написания чистого кода и как следствие максимизации простоты поддержки кода. В этом выпуске мы поговорим об LSP - Liskov Substitution Principle или Принцип подстановки Барбары Лисков. Обсудим частые запахи нарушения LSP и посмотрим на пример нарушения и на то как провести рефакторинг, исправляющий нарушение принципа. Поговорим о контрактах кода: предусловиях и постусловиях. 00:00 Введение 00:50 Вариантность / Ковариантность / Контравариантность 01:37 Ковариантность 02:06 IN / OUT в C# 03:10 ICollection и нарушение LSP 05:00 Нисходящие преобразования типов - downcasts запах нарушения LSP 06:31 Итоги по запахам нарушения LSP
Hide player controls
Hide resume playing