Sobes.tech
Middle

Android-тағы 'құрастырушы' жобалау үлгілері туралы айта аласыз ба?

sobes.tech AI

AI-дан жауап

"Құрылысшы" (Builder) үлгісі күрделі объектілерді кезең-кезеңімен құру үшін пайдаланылады.

Android-те қолдану мысалдары:

  1. AlertDialog.Builder: Тақырыпты, хабарламаны, батырмаларды және басқа қасиеттерді көрсету мүмкіндігі бар диалогтарды құру.

    new AlertDialog.Builder(context)
        .setTitle("Атауы")
        .setMessage("Хабарламаның мәтіні")
        .setPositiveButton("Жақсы", (dialog, which) -> {
            // Жақсы батырмасын басқанда орындалатын әрекет
        })
        .setNegativeButton("Болдырмау", null)
        .show();
    
  2. NotificationCompat.Builder: Статус жолағына арналған хабарландыруларды құру.

    NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID)
        .setSmallIcon(R.drawable.ic_notification)
        .setContentTitle("Хабарландыру тақырыбы")
        .setContentText("Хабарландыру мәтіні")
        .setPriority(NotificationCompat.PRIORITY_DEFAULT);
    
    Notification notification = builder.build();
    // NotificationManager арқылы хабарландыруды жіберу
    
  3. Uri.Builder: Әртүрлі параметрлермен URI құру.

    Uri builtUri = new Uri.Builder()
        .scheme("http")
        .authority("www.example.com")
        .appendPath("path")
        .appendQueryParameter("param1", "value1")
        .build();
    
  4. ViewModelProvider.Builder: (Lifecycle Architecture Components-те) ViewModel үшін фабриканы құру.

    ViewModelProvider provider = new ViewModelProvider(activity, new ViewModelProvider.AndroidViewModelFactory(application));
    MyViewModel viewModel = provider.get(MyViewModel.class);
    

Негізгі артықшылықтары:

  • Объектілерді құру кезінде көптеген міндетті емес параметрлермен оқылуын жақсартады.
  • Көптеген конструкторларды құруды болдырмайды.
  • Объектіні кезең-кезеңімен құруды қамтамасыз етеді.
  • Объект build() әдісін шақырғаннан кейін ғана құрылады.