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