Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تعريف الأساليب

جزء من قسم Fundamentals في رحلة C# على Coddy — الدرس 49 من 69.

الدالة (method) هي تسلسل من التعليمات البرمجية التي لها اسم. الغرض من الدالة هو إعادة استخدام جزء من الكود عدة مرات.

على سبيل المثال، ألقِ نظرة على هذا الكود:

Console.WriteLine("Welcome to Coddy");
Console.WriteLine("New session...");
Console.WriteLine("Welcome to Coddy");
Console.WriteLine("Another session...");
Console.WriteLine("Welcome to Coddy");

نحن نستخدم نفس الكود Console.WriteLine("Welcome to Coddy") مراراً وتكراراً. مشكلة أخرى في هذا الكود هي أننا إذا أردنا تغيير الرسالة: Welcome to Coddy إلى شيء مختلف، مثل Welcome aboard سيتعين علينا تغيير 3 أسطر مختلفة من الكود. لحل هذه المشكلة، سنستخدم الدوال (methods).

للتصريح عن دالة (method)، نستخدم الصيغة التالية:

access_modifier [modifiers] return_type method_name(parameters) {
	// الكود
}

بالنسبة لمثالنا، سنقوم بإنشاء طريقة تسمى Greet وستبدو بهذا الشكل:

public static void Greet() {
	Console.WriteLine("Welcome to Coddy");
}

إذا قمنا بتحليلها:

  • public هو معدل الوصول (يتحكم في من يمكنه استخدام هذه الطريقة)
  • static هو معدل (يعني أن الطريقة تنتمي إلى الفئة نفسها)
  • void هو نوع الإرجاع (يعني أنها لا ترجع أي قيمة)
  • Greet هو اسم الطريقة
  • () يحتوي على المعاملات (فارغة هنا)

في الوقت الحالي، اكتب دائمًا public static قبل اسم الطريقة الخاصة بك - سنشرح معنى كل كلمة لاحقًا.

لاستخدام/استدعاء/تنفيذ الطريقة، نكتب Greet();:

Greet();
Console.WriteLine("New session...");
Greet();
Console.WriteLine("Another session...");
Greet();

سيؤدي هذا إلى نفس المخرجات المذكورة أعلاه.

ملاحظة: في لغة C#، لا يهم ترتيب تصريحات الدوال (method declarations) داخل الفئة (class). يقرأ المترجم (compiler) الفئة بأكملها أولاً، لذا يمكن استدعاء الدالة قبل أو بعد تعريفها في الكود المصدري — وكلاهما صحيح.

على سبيل المثال، كلاهما صحيح في C#:

// تم تعريف الدالة أولاً، ثم استدعاؤها
public static void Greet() {
    Console.WriteLine("Welcome to Coddy");
}

Greet();
Console.WriteLine("New session...");
Greet();
// يتم استدعاء الدالة أولاً، ويتم تعريفها لاحقاً - وهذا صالح أيضاً في C#
Greet();
Console.WriteLine("New session...");
Greet();

public static void Greet() {
    Console.WriteLine("Welcome to Coddy");
}
challenge icon

التحدي

سهل

اكتب برنامجًا يستقبل مدخلاً واحدًا، وهو عبارة عن رقم. يحدد الرقم المدخل عدد المرات التي سيتم فيها تنفيذ الطريقة (method) أدناه. 

أنشئ طريقة (method) تقوم بحساب مجموع كافة الأرقام بين 1 و 1000 (بما في ذلك) وطباعته، وقم بتسمية الطريقة بأي اسم تريده.

جرّب بنفسك

using System;

public class Program {
    // إعلان الدالة
    public static void SumNumbers() {
        // أكمل الدالة
        
    }
    
    
    public static void Main(string[] args) {
        int n = int.Parse(Console.ReadLine());
        for (int i = 0; i < n; i++) {
            // استدعِ الدالة n من المرات
        }
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals