Junior — Middle
Quale approccio useresti: metodo di classe o metodo statico, e perché?
sobes.tech AI
Risposta dell'AI
La scelta tra un metodo di istanza di classe e un metodo statico dipende dal contesto:
- Metodo di classe (metodo di istanza) viene usato quando il metodo lavora con lo stato di un oggetto specifico, cioè dipende dai valori delle sue proprietà.
- Metodo statico non dipende dallo stato dell’oggetto e può essere chiamato senza creare un’istanza della classe.
In iOS (Swift/Objective-C), si usano generalmente metodi di istanza se si deve lavorare con i dati dell’oggetto. I metodi statici sono adatti per funzioni di utilità, metodi di fabbrica o quando non è richiesto lo stato dell’oggetto.
Esempio in Swift:
class Calculator {
static func add(_ a: Int, _ b: Int) -> Int {
return a + b
}
func multiply(_ a: Int, _ b: Int) -> Int {
return a * b
}
}
// Chiamata a metodo statico senza creare un oggetto
let sum = Calculator.add(2, 3)
// Chiamata a metodo di istanza richiede un oggetto
let calc = Calculator()
let product = calc.multiply(2, 3)
Quindi, scegli un metodo statico per funzioni senza stato, e un metodo di classe quando hai bisogno di accedere ai dati dell’oggetto.