Junior — Middle
Podes dar um exemplo de padrão que seja responsável por criar objetos na programação?
sobes.tech IA
Resposta da IA
Um dos padrões populares para criar objetos é o Método de Fábrica (Factory Method). Ele permite criar objetos sem especificar a classe concreta do objeto a ser criado, delegando a criação às subclasses.
Exemplo em Kotlin para Android:
// Interface do produto
interface Button {
fun render()
}
// Produto concreto
class AndroidButton : Button {
override fun render() {
println("Desenhando botão Android")
}
}
// Fábrica
abstract class Dialog {
abstract fun createButton(): Button
fun renderDialog() {
val button = createButton()
button.render()
}
}
// Fábrica concreta
class AndroidDialog : Dialog() {
override fun createButton(): Button {
return AndroidButton()
}
}
// Uso
fun main() {
val dialog: Dialog = AndroidDialog()
dialog.renderDialog()
}
Este padrão ajuda a separar o código de criação de objetos do seu uso, o que melhora a extensibilidade e a manutenção do código.