Особенности объектно-ориентированного программирования

Объектно-ориентированное программирование (ООП) — это способ моделирования программ. Объекты как программная концепция были введены в языке программирования Simula в 1960-х годах. Эти объекты повлияли на программную архитектуру Алана Кея, в которой объекты передают сообщения друг другу. Для описания этой архитектуры он ввел термин «объектно-ориентированное программирование» в 1967 году. Существует множество конкурирующих определений, описывающих, что такое ООП, и согласно некоторым из них Rust является объектно-ориентированным, а согласно другим — нет. В этой главе мы рассмотрим определенные характеристики, которые обычно считаются объектно-ориентированными, и то, как эти характеристики переводятся в идиоматический Rust. Затем мы покажем вам, как реализовать объектно-ориентированный шаблон проектирования в Rust, и обсудим компромиссы такого подхода в сравнении с реализацией решения с использованием некоторых сильных сторон Rust.