Sobes.tech
Junior — Middle

консепти делегатҳоро дар забони C# ва мақсади асосии онҳо шарҳ диҳед.

sobes.tech AI

Ҷавоб аз AI

Делегатҳо дар C# навъҳое ҳастанд, ки ба ҳуҷҷатҳои бо имзо ва арзиши баргардонии муайян ишора мекунанд. Онҳо имкон медиҳанд, ки методҳоро ҳамчун объектҳо нигоҳ дошта ва фаро хонем.

Мақсади асосии делегатҳо:

  • Имплементацияи қайтаришҳои (callbacks)
  • Флексибилӣ дар фаро хондани методҳо, масалан, барои рӯйдодҳо ва коркарди амалҳои асинхронӣ
  • Барои иҷрои модели асосёфта ба рӯйдодҳо истифода мешаванд

Масали делегат:

// Эълони делегат
public delegate void Notify(string message);

class Program
{
    static void Main()
    {
        Notify notifyHandler = ShowMessage;
        notifyHandler("Салом, делегатҳо!");
    }

    static void ShowMessage(string msg)
    {
        Console.WriteLine(msg);
    }
}

Ин ҷо, делегат Notify метавонад ба ҳар як метод, ки матнро қабул мекунад ва чизе баргардон намекунад, ишора кунад.