Sobes.tech
Junior — Middle

Czy możesz podać przykład wzorca odpowiedzialnego za tworzenie obiektów w programowaniu?

sobes.tech AI

Odpowiedź od AI

Jednym z popularnych wzorców odpowiedzialnych za tworzenie obiektów jest Metoda Fabryczna (Factory Method). Umożliwia ona tworzenie obiektów bez wskazywania konkretnej klasy tworzonego obiektu, delegując tworzenie do podklas.

Przykład na Kotlin dla Androida:

// Interfejs produktu
interface Button {
    fun render()
}

// Konkretne produkty
class AndroidButton : Button {
    override fun render() {
        println("Rysujemy przycisk Android")
    }
}

// Fabryka
abstract class Dialog {
    abstract fun createButton(): Button

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

// Konkretna fabryka
class AndroidDialog : Dialog() {
    override fun createButton(): Button {
        return AndroidButton()
    }
}

// Użycie
fun main() {
    val dialog: Dialog = AndroidDialog()
    dialog.renderDialog()
}

Ten wzorzec pomaga oddzielić kod tworzenia obiektów od ich użycia, co poprawia rozszerzalność i utrzymanie kodu.