Sobes.tech
Middle

Vai vari runāt par dažiem 'builder' dizaina modeļiem Android?

sobes.tech AI

Atbilde no AI

„Builder“ (Būvētājs) modelis tiek izmantots sarežģītu objektu pakāpeniskai izveidei.

Piemēri Android lietošanai:

  1. AlertDialog.Builder: Izveidot dialogus ar iespēju norādīt virsrakstu, ziņojumu, pogas un citas īpašības.

    new AlertDialog.Builder(context)
        .setTitle("Nosaukums")
        .setMessage("Ziņojuma teksts")
        .setPositiveButton("Labi", (dialog, which) -> {
            // Darbība, kad tiek nospiesta OK
        })
        .setNegativeButton("Atcelt", null)
        .show();
    
  2. NotificationCompat.Builder: Izveidot paziņojumus statusa joslā.

    NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID)
        .setSmallIcon(R.drawable.ic_notification)
        .setContentTitle("Paziņojuma virsraksts")
        .setContentText("Paziņojuma teksts")
        .setPriority(NotificationCompat.PRIORITY_DEFAULT);
    
    Notification notification = builder.build();
    // Nosūtīt paziņojumu caur NotificationManager
    
  3. Uri.Builder: Izveidot URI ar dažādiem parametriem.

    Uri builtUri = new Uri.Builder()
        .scheme("http")
        .authority("www.example.com")
        .appendPath("ceļš")
        .appendQueryParameter("param1", "vērtība1")
        .build();
    
  4. ViewModelProvider.Builder: (Lifecycle Architecture Components) Izveidot ViewModel fabrika.

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

Galvenās priekšrocības, izmantojot būvētāju:

  • Uzlabo koda lasāmību, izveidojot objektus ar daudz neobligātiem parametriem.
  • Palīdz izvairīties no daudzu konstruktoru izveides.
  • Atļauj pakāpeniski veidot objektu.
  • Objekts tiek izveidots tikai pēc build() metodes izsaukšanas.