الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ممكن شرح موسع وتفصيلي عن الميثود واستعمالها

بدأه UNIXROOT في 11 أغسطس 2011 · 6 رد · 4,685 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

ياريت اخواني الكرام شرح الميثود في سي شارب بالتفصيل الممل مع كم مثال حلوين

اذا سمحتوا بيكون مفصل وفهم الفكره للميثود وكيف نستعملها ومتى نحتاج لها :blush:

جزاكم الله خير

#2

بالإختصار Method هي مجموعة من الاكواد للحصول على نتيجة معينة,

و لو كانت Class مثل السیارة, فإذ Method هي مثل الدواسة.

مثال من مكتبة MSDN:

تعریف لکلاس Motorcycle

class Motorcycle 
{
 	public void StartEngine() { }
 	public void AddGas(int gallons) { }
 	public int Drive(int miles, int speed) { return 0; }
}

و هنا نصنع دراجة نارية بإسم moto وثم StartEngine و ِAddGas و Drive کل واحد منهم Method لدراجتنا moto

  Motorcycle moto = new Motorcycle();
  moto.StartEngine();
  moto.AddGas(15);
  moto.Drive(5, 20);

اقرأ هنا كل شيء بالتفصيل:

MSDN Library

واقرأ الاسئلة و الامثلة هنا:

Stackoverflow -C#-method

وملاحظة: اهم شيء لبدء هذه الامور هو "كتاب", والموضوع اكثر تعقيدا من ان یقال هنا في رد واحد :)

وان لديك سوال في جزء محدد, على الرحب والسعة

والسلام عليكم

تم تعديل هذه المشاركة بواسطة موليان في 11 أغسطس 2011 في 05:36

..:: رَبِّ زِدْني عِلْمًا ::..

#3
موليان كتب:

بالإختصار Method هي مجموعة من الاكواد للحصول على نتيجة معينة,

و لو كانت Class مثل السیارة, فإذ Method هي مثل الدواسة.

مثال من مكتبة MSDN:

تعریف لکلاس Motorcycle

class Motorcycle 
{
 	public void StartEngine() { }
 	public void AddGas(int gallons) { }
 	public int Drive(int miles, int speed) { return 0; }
}

و هنا نصنع دراجة نارية بإسم moto وثم StartEngine و ِAddGas و Drive کل واحد منهم Method لدراجتنا moto

  Motorcycle moto = new Motorcycle();
  moto.StartEngine();
  moto.AddGas(15);
  moto.Drive(5, 20);

اقرأ هنا كل شيء بالتفصيل:

MSDN Library

واقرأ الاسئلة و الامثلة هنا:

Stackoverflow -C#-method

وملاحظة: اهم شيء لبدء هذه الامور هو "كتاب", والموضوع اكثر تعقيدا من ان یقال هنا في رد واحد :)

وان لديك سوال في جزء محدد, على الرحب والسعة

والسلام عليكم

جزاك الله خير

لن اتررد بالسؤال ولا يهمك :lol:

لدي سؤالين على كود قمت بوضعه

بصراحه يوجد لدي كتاب ولكن دوخني :blink:

المهم هذا الكود

 public void AddGas(int gallons) { }
        public int Drive(int miles, int speed) { return 0; }

يعني الكود الاول int gallons هذا هنا ع اساس بارمتر من نوع int ولكن انت قمت بوضع void يعني لايعيد قيمه

وفي الكود الثاني وضعنا 2 بارمتر وعرفناها من نوع int يعني يعيد قيمه

هنا ليش بالاول لم تعيد قيمه وهنا جعلته يعيد قيمه

ايضا هل يتم استعمال return فقط في ميثود الذي يعيد القيم ؟

تعقيد الاساسي لدي هو تمرير بارمترات + اعاده قيم او عدم اعاده

شكرا لك

#4

في الحقيقة لا دخل للبارامترات بـ void هناك,

* كما تعلم انت,في method الاول و الثانی void یعني method لن یعید قيمة بعد ان تم عمله عکس method الثالث الذي عرفناه من نوع int یعني في النهاية سيعيد قيمة من نوع int بهذا الشكل:

return 0;

* اما البارامترات, فهي ببساطة قيم التي تدخل ببارامتر, ولا علاقة بين بارامتر و void او غیره. method الاول لا يقبل قيمة, الثاني قيمة واحدة و الثالث قيمتان.

مثلا:

public void AddGas(int gallons) { }

يقبل قيمة. في النهاية لن يعيد قيمة.

public int AddGas(int gallons) {return 11; }

يقبل قيمة و في النهاية سيعيد قيمة (يعني 11).

تم تعديل هذه المشاركة بواسطة موليان في 11 أغسطس 2011 في 06:48

..:: رَبِّ زِدْني عِلْمًا ::..

#5
موليان كتب:

في الحقيقة لا دخل للبارامترات بـ void هناك,

* كما تعلم انت,في method الاول و الثانی void یعني method لن یعید قيمة بعد ان تم عمله عکس method الثالث الذي عرفناه من نوع int یعني في النهاية سيعيد قيمة من نوع int بهذا الشكل:

return 0;

* اما البارامترات, فهي ببساطة قيم التي تدخل ببارامتر, ولا علاقة بين بارامتر و void او غیره. method الاول لا يقبل قيمة, الثاني قيمة واحدة و الثالث قيمتان.

مثلا:

public void AddGas(int gallons) { }

يقبل قيمة. في النهاية لن يعيد قيمة.

public int AddGas(int gallons) {return 11; }

يقبل قيمة و في النهاية سيعيد قيمة (يعني 11).

شكرا لك اخي الحبيب وضحت المسأله

جزاك الله خير

#6

تخيل لو عندي الكود التالي

int a = 5
int b = 7

كود بسيط متغيرين يحملوا قيم !!

الان اريد ان اقوم بعملية معينة مثلا اريد تحويل قيمة a الى b يعني ابغى اسوي swap

ايش الطريقة التقليدية الي راح اسويها وهي كا التالي :

int a = 5
int b = 7 

a = a + b
b = a - b
a = a - b

لاحظ الكود الي في الاعلى كل الي قمت به عملية تحويل بسيطة

طيب افرض انك الان تريد تكرار هذه العملية مئة مرة تخيل كم سرط راح تكتب

فأختصارا ً لهذا الشي راح احط كود التحويل في دالة بهذا الشكل

swap(int x , int z)
{
x = x + z
z = x - z
x = x - z
}

int a = 5 
int b = 7
swap(a,p)

لا حظت انا سويت دالة سميتها swap امرر لها 2 باراميتر فتقوم بعملية تحويلهم , الان بدل ما اقوم بعملية تكرار الكود مئة مرة فقط استخدم دالة swap وامرر لها المتغيرين الذين اريد تحويلهم

بكذا انا اضفت وظيفة جديد تنفذ امر معين فأختصرت بذلك اكواد كثيرة

هذه هي الدالة او الميثود , عبارة عن مجموعة اكواد تنفذ وظيفة ميعنة

طبعا ً الاكواد في الاعلى عبارة عن توضيح للفكرة فقط , وكل لغة تختلف في الجمل فقط انا ما حبيت اكتبها لكن بسيغة OOP عشان لا تتلخبط

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#7
M.B.O كتب:

تخيل لو عندي الكود التالي

int a = 5
int b = 7

كود بسيط متغيرين يحملوا قيم !!

الان اريد ان اقوم بعملية معينة مثلا اريد تحويل قيمة a الى b يعني ابغى اسوي swap

ايش الطريقة التقليدية الي راح اسويها وهي كا التالي :

int a = 5
int b = 7 

a = a + b
b = a - b
a = a - b

لاحظ الكود الي في الاعلى كل الي قمت به عملية تحويل بسيطة

طيب افرض انك الان تريد تكرار هذه العملية مئة مرة تخيل كم سرط راح تكتب

فأختصارا ً لهذا الشي راح احط كود التحويل في دالة بهذا الشكل

swap(int x , int z)
{
x = x + z
z = x - z
x = x - z
}

int a = 5 
int b = 7
swap(a,p)

لا حظت انا سويت دالة سميتها swap امرر لها 2 باراميتر فتقوم بعملية تحويلهم , الان بدل ما اقوم بعملية تكرار الكود مئة مرة فقط استخدم دالة swap وامرر لها المتغيرين الذين اريد تحويلهم

بكذا انا اضفت وظيفة جديد تنفذ امر معين فأختصرت بذلك اكواد كثيرة

هذه هي الدالة او الميثود , عبارة عن مجموعة اكواد تنفذ وظيفة ميعنة

طبعا ً الاكواد في الاعلى عبارة عن توضيح للفكرة فقط , وكل لغة تختلف في الجمل فقط انا ما حبيت اكتبها لكن بسيغة OOP عشان لا تتلخبط

تسلم اخي الحبيب على توضيح اكثر ووضع مثال

وضحت الفكره لدي تمام الحمد لله ممكن تكون ميثود كصندوق تمر متى ماافطرنا برمضان ناخذ منه :lol:

جزاكم الله خير

1

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…