Вам необходимо понять, что такое [формальный] протокол Objective-C, включая то, что он определяет обязательные и / или дополнительные методы. См. Документацию Apple Objective-C. Протоколы - это ограниченная форма множественного наследования, при которой наследуется только поведение, но не состояние. Другие языки могут называть это interface
или mix-in
.
Соответствие протоколу означает, что ваш класс реализует все обязательные методы и, возможно, ни один, некоторые или все дополнительные методы.
Как правило, протокол используется для делегатов. Это средство формализовать API, который класс требует от своего делегата. Для данного протокола делегата вы должны понимать этот API. См. Документацию Apple относительно этого конкретного протокола.
Наконец, нет ни способа, ни необходимости объявлять, что ваш класс MacRuby соответствует какому-либо протоколу. Вы можете напрямую назначить свой экземпляр класса делегату объекта client. Вы все еще обязаны соблюдать протокол, но не будет никакой проверки во время компиляции. Если вы не соответствуете, вы можете ожидать исключения во время выполнения. Или какое-то странное поведение. Или что-то.
В любом случае, это мое понимание.