Sobes.tech
Junior — Middle

Můžeš uvést příklad vzoru, který je zodpovědný za vytváření objektů v programování?

sobes.tech AI

Odpověď od AI

Jedním z oblíbených vzorů pro vytváření objektů je Factory Method (Faktoriální metoda). Umožňuje vytvářet objekty bez specifikace konkrétní třídy vytvářeného objektu a předává tvorbu podtřídám.

Příklad v Kotlinu pro Android:

// Rozhraní produktu
interface Button {
    fun render()
}

// Konkrétní produkt
class AndroidButton : Button {
    override fun render() {
        println("Kreslíme Android tlačítko")
    }
}

// Továrna
abstract class Dialog {
    abstract fun createButton(): Button

    fun renderDialog() {
        val button = createButton()
        button.render()
    }
}

// Konkrétní továrna
class AndroidDialog : Dialog() {
    override fun createButton(): Button {
        return AndroidButton()
    }
}

// Použití
fun main() {
    val dialog: Dialog = AndroidDialog()
    dialog.renderDialog()
}

Tento vzor pomáhá oddělit kód tvorby objektů od jejich použití, což zlepšuje rozšiřitelnost a údržbu kódu.