Back to questions
Суши Вок
Junior — Middle
68
Объясните концепцию полиморфизма в объектно-ориентированном программировании и как она применяется в практике разработки.
Companies where asked
ITFB
Моризо Диджитал
Answer from AI
sobes.tech AI
Полиморфизм — это принцип объектно-ориентированного программирования, позволяющий объектам разных классов обрабатываться через единый интерфейс. Это значит, что один и тот же метод может вести себя по-разному в зависимости от объекта, который его вызывает.
В практике разработки на iOS (например, на Swift) полиморфизм часто реализуется через наследование и протоколы. Например, можно определить базовый класс или протокол с методом, а потом создавать подклассы или структуры, которые реализуют этот метод по-своему.
Пример на Swift:
protocol Drawable {
func draw()
}
class Circle: Drawable {
func draw() {
print("Рисуем круг")
}
}
class Square: Drawable {
func draw() {
print("Рисуем квадрат")
}
}
func render(shape: Drawable) {
shape.draw() // вызов метода draw у любого объекта, реализующего Drawable
}
let circle = Circle()
let square = Square()
render(shape: circle) // Рисуем круг
render(shape: square) // Рисуем квадрат
Такой подход упрощает расширяемость и поддержку кода, позволяет писать более универсальные функции и классы.