Junior — Middle
Kāda veida Builder šablons tiek piemērots, kad tā izpildes rezultāts nav svarīgs?
sobes.tech AI
Atbilde no AI
Kad objekta būvniecības rezultāts nav svarīgs, tiek piemērots Builder šablons ar Fluent Interface metodi, kur metodes atgriež pašu būvētāju, ļaujot ķēdēt metožu izsaukumus konfigurācijai, bet galīgais objekts var netikt izmantots vai nebūt nepieciešams. Šī pieeja bieži tiek izmantota konfigurācijai vai iestatījumiem, kur svarīgs ir pats parametru iestatīšanas process, nevis galīgā objekta izveide.
Piemērs Kotlin valodā Android platformai:
class LoggerBuilder {
private var level: String = "INFO"
private var tag: String = "App"
fun setLevel(level: String) = apply { this.level = level }
fun setTag(tag: String) = apply { this.tag = tag }
fun build() {
// Šeit nav objekta atgriešanas, tikai konfigurējam logeri
println("Logger konfigurēts ar līmeni=$level un tagu=$tag")
}
}
// Lietošana:
LoggerBuilder()
.setLevel("DEBUG")
.setTag("MyApp")
.build() // Rezultāts nav svarīgs, svarīgs ir konfigurācijas process