Сайт использует сервис веб-аналитики Яндекс Метрика с помощью технологии «cookie». Пользуясь сайтом, вы даете согласие на использование данной технологии.
SOLID. LSP - Принцип подстановки Барбары Лисков (Liskov substitution principle)
Разбираем принцип SOLID. LSP — Принцип подстановки Барбары Лисков на живом коде в Java! Привет! Меня зовут Кирилл Финков, я разработчик с более чем 10-летним опытом и директор по качеству в крупном IT-интеграторе. В этом видео подробно разбираем один из важнейших принципов SOLID — *LSP (Liskov Substitution Principle)*, или *принцип подстановки Барбары Лисков*. Это единственный принцип из SOLID, названный в честь его автора — выдающейся математика и программиста Барбары Лисков. Что такое LSP на практике? Как понять, что ваш код нарушает этот принцип? Какие ошибки можно допустить при наследовании? Как правильно проектировать иерархии классов, чтобы не "взорвать" архитектуру? 🔍 В видео я отвечаю на все эти вопросы, показываю реальные примеры и объясняю, как исправить нарушения принципа LSP. Мы рассмотрим 3 подхода к решению проблемы, включая наследование, переопределение, и композицию. Всё объясняется на живом Java-коде в среде IntelliJ IDEA — понятно даже новичкам. Если вы изучаете принципы SOLID, готовитесь к собеседованию или хотите писать чистый код, этот ролик вам точно нужен! ⏱ Таймкоды: 00:00 — Приветствие и цель видео 00:50 — Формулировка LSP от Барбары Лисков 01:47 — Переформулировка от Роберта Мартина (Uncle Bob) 02:37 — Пример с Rectangle и Square: почему наследование не работает 04:15 — Проблемы, возникающие при нарушении LSP 05:15 — Андрей Александреску и Герб Саттер. Формулировка LSP 06:40 — Подход №1: переопределение методов 08:25 — Подход №2: расширение параметров 09:40 — Подход №3: отказ от наследования в пользу композиции 12:00 — Завершение и что будет в следующих видео 🔔 *Подписывайтесь на канал, чтобы не пропустить следующие ролики про SOLID*. В следующих выпусках мы разберём остальные принципы: SRP, OCP, ISP, DIP. Если видео было полезным — ставьте лайк, делитесь с коллегами и оставляйте комментарии! #SOLID #LSP #Java #ПринципыSOLID #ПринципПодстановки #КириллФиленков #ЧистыйКод