Sobes.tech
Junior — Middle

¿Se puede definir una implementación predeterminada de un método en una interfaz o protocolo?

sobes.tech AI

Respuesta de la IA

En Swift, los protocolos pueden contener implementaciones predeterminadas de métodos a través de extensiones. Esto permite definir un comportamiento estándar para los métodos del protocolo, que puede ser sobrescrito en tipos específicos.

Ejemplo:

protocol Greetable {
    func greet()
}

extension Greetable {
    func greet() {
        print("Saludos por defecto")
    }
}

struct Person: Greetable {}

let p = Person()
p.greet() // Mostrará: Saludos por defecto

De esta manera, la implementación predeterminada no se establece en el propio protocolo, sino en su extensión.