Junior — Middle
O que significa a implementação do protocolo CustomStringConvertible em Swift e para que ela é usada?
sobes.tech IA
Resposta da IA
No Swift, o protocolo CustomStringConvertible é usado para fornecer uma representação de texto personalizada de um objeto. Se um tipo implementar esse protocolo, ele deve definir a propriedade description, que retorna uma string — uma descrição do objeto.
Isso é útil quando você deseja que, ao imprimir um objeto com print() ou ao concatená-lo com outras strings, seja exibida uma string informativa e compreensível, e não a descrição padrão do tipo.
Exemplo:
struct User: CustomStringConvertible {
var name: String
var age: Int
var description: String {
return "User(name: \(name), age: \(age))"
}
}
let user = User(name: "Иван", age: 30)
print(user) // Vai exibir: User(name: Иван, age: 30)
Assim, a implementação de CustomStringConvertible melhora a legibilidade e a depuração do código, permitindo controlar como os objetos são exibidos como strings.