Python: Полиморфизм

Теория: Введение

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

В объектно-ориентированном программировании (ООП) одним из ключевых инструментов для решения таких проблем является полиморфизм. Полиморфизм — это способность объектов разных типов обрабатываться как объекты одного типа. При этом к ним можно применять одинаковые операции. Это позволяет упростить структуру кода, сделать его более читаемым и упростить процесс добавления новых типов.

Какие темы изучим в курсе

В курсе мы подробно рассмотрим полиморфизм и механизмы его реализации и научимся правильно применять его. Основные темы данного курса:

  • Полиморфизм подтипов
  • Параметрический полиморфизм
  • Диспетчеризация и ее виды
  • Инверсия зависимостей и инъекция
  • SOLID

Еще мы познакомимся с шаблонами проектирования. Разберем их влияние на структуру кода и познакомимся с самыми популярными:

  • Null Object
  • Strategy
  • Factory
  • Decorator

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