Exemplos do mundo real de métodos de protocolo @optional
Estou aprendendo Objective-C no momento e encontrei métodos opcionais em Protocolos. Meu fundo é C # e posso ver um protocolo como algo semelhante a uma interface c #.
Onde uma interface C # representa um contrato, ao anunciar uma interface, você está dizendo que implementará os métodos definidos.
Com isso em mente, estou confuso porque você precisaria definir um método opcional. Isso não é uma ofensa ou uma tentativa de diminuir o Objective-C, eu amo o Objective-C. Eu simplesmente quero entender os benefícios desses métodos opcionais, a fim de obter uma maior compreensão da linguagem.
Eu realmente apreciaria se alguém pudesse fornecer alguns cenários do mundo real (com código de exemplo) onde os métodos opcionais são úteis.