Por que escolher uma estrutura (struct) em vez de uma classe (class) em Swift?
Olá a todos! Comecei a estudar Swift recentemente e estou com uma dúvida. Vejo que em Swift existem tanto classes (class) quanto estruturas (struct). À primeira vista, elas são muito parecidas: em ambas é possível criar propriedades, métodos e inicializadores. Mas em todos os lugares escrevem que estruturas são "value types" (tipos de valor) e classes são "reference types" (tipos de referência). Não entendo completamente o que isso significa na prática.\n\nCriei um exemplo simples. Fiz uma classe `CarClass` e uma estrutura `CarStruct` com uma propriedade `model`. Depois, atribuí a instância da classe a uma nova variável e alterei o modelo na "cópia". O modelo mudou também no objeto original! Já com a estrutura isso não aconteceu. Aqui está o código:\n\n```swift\nclass CarClass {\n var model = "Tesla"\n}\n\nstruct CarStruct {\n var model = "Tesla"\n}\n\nlet car1 = CarClass()