Sobes.tech
Junior — Middle

Jaký přístup byste použili: metoda třídy nebo statická metoda, a proč?

sobes.tech AI

Odpověď od AI

Volba mezi metodou instance třídy a statickou metodou závisí na kontextu:

  • Metoda třídy (metoda instance) se používá, když metoda pracuje s stavem konkrétního objektu, tj. závisí na hodnotách jeho vlastností.
  • Statická metoda nezávisí na stavu objektu a může být volána bez vytvoření instance třídy.

V iOS (Swift/Objective-C) se obvykle používají instance metody, pokud je třeba pracovat s daty objektu. Statické metody jsou vhodné pro pomocné funkce, tovární metody nebo když není potřeba stav objektu.

Příklad v Swift:

class Calculator {
    static func add(_ a: Int, _ b: Int) -> Int {
        return a + b
    }

    func multiply(_ a: Int, _ b: Int) -> Int {
        return a * b
    }
}

// Volání statické metody bez vytvoření objektu
let sum = Calculator.add(2, 3)

// Volání instance metody vyžaduje objekt
let calc = Calculator()
let product = calc.multiply(2, 3)

Proto vybírejte statickou metodu pro funkce bez stavu a metodu třídy, když potřebujete přístup k datům objektu.