Я изучаю практический объектно-ориентированный дизайн Сэнди Мец.В главе 4 «Создание гибких интерфейсов» мне представлены некоторые UML-диаграммы, на которых показаны взаимодействия и сообщения двух классов.Например, ниже приведена следующая схема из книги:
Описание этого изображения следующее:
Таким образом, эту диаграмму последовательности можно прочитать следующим образом: Клиент Мо отправляет сообщение fit_trips классу Trip, который активируется для его обработки, а затем, когда он завершается, возвращает ответ.
Будет лиТочная реализация, подобная следующей?
class Customer
attr_reader :name, :on_date, :of_difficulty, :need_bike
def initialize(name, on_date, of_difficulty, need_bike)
@name = name
@on_date = on_date
@of_difficulty = of_difficulty
@need_bike = need_bike
end
end
class Trip
attr_reader :trip
def initialize(trip)
@trip = trip
end
def suitable_trips(on_date, of_difficulty, need_bike)
#gives list of suitable trips based on factors
end
end
moe = Customer.new("moe", "now", "easy", "yes")
trip = Trip.new('Grand Canyon')
trip.suitable_trips(moe.on_date, moe.of_difficulty, moe.need_bike)
Иногда мне кажется, что я понял, но потом я столкнусь с другой диаграммой UML, а затем запутаюсь в формулировках, особенно когда речь идет о получателе и отправителе.Я просто хочу быть уверен, что все правильно понимаю, поэтому я полностью понимаю, куда и куда должны идти методы.