Junior — Middle
Τι τύπος προτύπου Builder εφαρμόζεται όταν το αποτέλεσμα της εκτέλεσής του δεν είναι σημαντικό;
sobes.tech AI
Απάντηση από AI
Όταν το αποτέλεσμα της κατασκευής ενός αντικειμένου δεν είναι σημαντικό, εφαρμόζεται το σχέδιο Builder με μέθοδο Fluent Interface, όπου οι μέθοδοι επιστρέφουν τον ίδιο τον κατασκευαστή, επιτρέποντας την αλυσίδα κλήσεων μεθόδων για ρύθμιση, αλλά το τελικό αντικείμενο μπορεί να μην χρησιμοποιείται ή να μην είναι απαραίτητο. Αυτή η προσέγγιση συχνά χρησιμοποιείται για διαμόρφωση ή ρύθμιση, όπου η διαδικασία ορισμού των παραμέτρων είναι σημαντική, και όχι η δημιουργία του τελικού αντικειμένου.
Παράδειγμα σε Kotlin για Android:
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() {
// Εδώ δεν υπάρχει επιστροφή αντικειμένου, απλώς διαμορφώνουμε το logger
println("Logger διαμορφωμένο με επίπεδο=$level και ετικέτα=$tag")
}
}
// Χρήση:
LoggerBuilder()
.setLevel("DEBUG")
.setTag("MyApp")
.build() // Το αποτέλεσμα δεν είναι σημαντικό, η διαδικασία διαμόρφωσης είναι