Middle
Môžeš hovoriť o niektorých vzorcoch návrhu 'builder' v Android?
sobes.tech AI
Odpoveď od AI
Vzor "Staviteľ" (Builder) sa používa na krokové vytváranie zložitých objektov.
Príklady použitia v Android:
-
AlertDialog.Builder: Vytváranie dialógových okien s možnosťou určiť nadpis, správu, tlačidlá a ďalšie vlastnosti.
new AlertDialog.Builder(context) .setTitle("Názov") .setMessage("Text správy") .setPositiveButton("OK", (dialog, which) -> { // Akcia pri kliknutí na OK }) .setNegativeButton("Zrušiť", null) .show(); -
NotificationCompat.Builder: Stavba oznámení pre panel stavu.
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID) .setSmallIcon(R.drawable.ic_notification) .setContentTitle("Názov oznámenia") .setContentText("Text oznámenia") .setPriority(NotificationCompat.PRIORITY_DEFAULT); Notification notification = builder.build(); // Odoslanie oznámenia cez NotificationManager -
Uri.Builder: Vytváranie URI s rôznymi parametrami.
Uri builtUri = new Uri.Builder() .scheme("http") .authority("www.priklad.com") .appendPath("cesta") .appendQueryParameter("param1", "hodnota1") .build(); -
ViewModelProvider.Builder: (V komponentách architektúry životného cyklu) Vytváranie továrne pre ViewModel.
ViewModelProvider provider = new ViewModelProvider(activity, new ViewModelProvider.AndroidViewModelFactory(application)); MyViewModel viewModel = provider.get(MyViewModel.class);
Hlavné výhody používania buildera:
- Zlepšuje čitateľnosť kódu pri vytváraní objektov s veľkým množstvom voliteľných parametrov.
- Umožňuje vyhnúť sa tvorbe viacerých konštruktorov.
- Zabezpečuje krokové budovanie objektu.
- Objekt je vytvorený až po volaní metódy
build().