Middle
Можеш ли да говориш о неким образцима дизајна 'builder' у Android-у?
sobes.tech АИ
Одговор од АИ
Шаблон "Graditelj" (Builder) се koristi za postepeno kreiranje složenih objekata.
Primeri upotrebe u Androidu:
-
AlertDialog.Builder: Kreiranje dijaloga sa mogućnošću da se odredi naslov, poruka, dugmići i druge osobine.
new AlertDialog.Builder(context) .setTitle("Naslov") .setMessage("Tekst poruke") .setPositiveButton("OK", (dialog, which) -> { // Akcija na klik OK }) .setNegativeButton("Otkaži", null) .show(); -
NotificationCompat.Builder: Izgradnja obaveštenja za statusnu traku.
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID) .setSmallIcon(R.drawable.ic_notification) .setContentTitle("Naslov obaveštenja") .setContentText("Tekst obaveštenja") .setPriority(NotificationCompat.PRIORITY_DEFAULT); Notification notification = builder.build(); // Slanje obaveštenja putem NotificationManager -
Uri.Builder: Kreiranje URI sa različitim parametrima.
Uri builtUri = new Uri.Builder() .scheme("http") .authority("www.primjer.com") .appendPath("put") .appendQueryParameter("param1", "vrijednost1") .build(); -
ViewModelProvider.Builder: (U komponentama arhitekture životnog ciklusa) Kreiranje fabrike za ViewModel.
ViewModelProvider provider = new ViewModelProvider(activity, new ViewModelProvider.AndroidViewModelFactory(application)); MyViewModel viewModel = provider.get(MyViewModel.class);
Glavne prednosti korišćenja builder-a:
- Poboljšava čitljivost koda pri kreiranju objekata sa mnogo opcionalnih parametara.
- Omogućava izbegavanje kreiranja više konstruktora.
- Osigurava postepenu izgradnju objekta.
- Objekat se kreira tek nakon poziva metode
build().