Junior — Middle
How is the process of duplicating data structures in the system implemented?
sobes.tech AI
Answer from AI
Duplication of data structures in a system is usually achieved by copying objects or data structures. In iOS, this is often done using the NSCopying protocol, which allows creating copies of objects.
Example of copying implementation:
class Person: NSObject, NSCopying {
var name: String
var age: Int
init(name: String, age: Int) {
self.name = name
self.age = age
}
func copy(with zone: NSZone? = nil) -> Any {
return Person(name: self.name, age: self.age)
}
}
let original = Person(name: "Ivan", age: 30)
let copy = original.copy() as! Person
This approach allows creating an independent copy of an object with the same data. In the case of structures (struct), copying occurs automatically during assignment, as they are value types.