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