Middle
Android-тағы 'құрастырушы' жобалау үлгілері туралы айта аласыз ба?
sobes.tech AI
AI-дан жауап
"Құрылысшы" (Builder) үлгісі күрделі объектілерді кезең-кезеңімен құру үшін пайдаланылады.
Android-те қолдану мысалдары:
-
AlertDialog.Builder: Тақырыпты, хабарламаны, батырмаларды және басқа қасиеттерді көрсету мүмкіндігі бар диалогтарды құру.
new AlertDialog.Builder(context) .setTitle("Атауы") .setMessage("Хабарламаның мәтіні") .setPositiveButton("Жақсы", (dialog, which) -> { // Жақсы батырмасын басқанда орындалатын әрекет }) .setNegativeButton("Болдырмау", null) .show(); -
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 арқылы хабарландыруды жіберу -
Uri.Builder: Әртүрлі параметрлермен URI құру.
Uri builtUri = new Uri.Builder() .scheme("http") .authority("www.example.com") .appendPath("path") .appendQueryParameter("param1", "value1") .build(); -
ViewModelProvider.Builder: (Lifecycle Architecture Components-те) ViewModel үшін фабриканы құру.
ViewModelProvider provider = new ViewModelProvider(activity, new ViewModelProvider.AndroidViewModelFactory(application)); MyViewModel viewModel = provider.get(MyViewModel.class);
Негізгі артықшылықтары:
- Объектілерді құру кезінде көптеген міндетті емес параметрлермен оқылуын жақсартады.
- Көптеген конструкторларды құруды болдырмайды.
- Объектіні кезең-кезеңімен құруды қамтамасыз етеді.
- Объект
build()әдісін шақырғаннан кейін ғана құрылады.