السلام عليكم ورحمة الله وبركاته
ياريت اخواني الكرام شرح الميثود في سي شارب بالتفصيل الممل مع كم مثال حلوين
اذا سمحتوا بيكون مفصل وفهم الفكره للميثود وكيف نستعملها ومتى نحتاج لها :blush:
جزاكم الله خير
السلام عليكم ورحمة الله وبركاته
ياريت اخواني الكرام شرح الميثود في سي شارب بالتفصيل الممل مع كم مثال حلوين
اذا سمحتوا بيكون مفصل وفهم الفكره للميثود وكيف نستعملها ومتى نحتاج لها :blush:
جزاكم الله خير
بالإختصار 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);
اقرأ هنا كل شيء بالتفصيل:
واقرأ الاسئلة و الامثلة هنا:
وملاحظة: اهم شيء لبدء هذه الامور هو "كتاب", والموضوع اكثر تعقيدا من ان یقال هنا في رد واحد :)
وان لديك سوال في جزء محدد, على الرحب والسعة
والسلام عليكم
تم تعديل هذه المشاركة بواسطة موليان في 11 أغسطس 2011 في 05:36
موليان كتب:بالإختصار 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);اقرأ هنا كل شيء بالتفصيل:
واقرأ الاسئلة و الامثلة هنا:
وملاحظة: اهم شيء لبدء هذه الامور هو "كتاب", والموضوع اكثر تعقيدا من ان یقال هنا في رد واحد :)
وان لديك سوال في جزء محدد, على الرحب والسعة
والسلام عليكم
جزاك الله خير
لن اتررد بالسؤال ولا يهمك :lol:
لدي سؤالين على كود قمت بوضعه
بصراحه يوجد لدي كتاب ولكن دوخني :blink:
المهم هذا الكود
public void AddGas(int gallons) { }
public int Drive(int miles, int speed) { return 0; }يعني الكود الاول int gallons هذا هنا ع اساس بارمتر من نوع int ولكن انت قمت بوضع void يعني لايعيد قيمه
وفي الكود الثاني وضعنا 2 بارمتر وعرفناها من نوع int يعني يعيد قيمه
هنا ليش بالاول لم تعيد قيمه وهنا جعلته يعيد قيمه
ايضا هل يتم استعمال return فقط في ميثود الذي يعيد القيم ؟
تعقيد الاساسي لدي هو تمرير بارمترات + اعاده قيم او عدم اعاده
شكرا لك
في الحقيقة لا دخل للبارامترات بـ 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
موليان كتب:في الحقيقة لا دخل للبارامترات بـ void هناك,
* كما تعلم انت,في method الاول و الثانی void یعني method لن یعید قيمة بعد ان تم عمله عکس method الثالث الذي عرفناه من نوع int یعني في النهاية سيعيد قيمة من نوع int بهذا الشكل:
return 0;* اما البارامترات, فهي ببساطة قيم التي تدخل ببارامتر, ولا علاقة بين بارامتر و void او غیره. method الاول لا يقبل قيمة, الثاني قيمة واحدة و الثالث قيمتان.
مثلا:
public void AddGas(int gallons) { }يقبل قيمة. في النهاية لن يعيد قيمة.
public int AddGas(int gallons) {return 11; }يقبل قيمة و في النهاية سيعيد قيمة (يعني 11).
شكرا لك اخي الحبيب وضحت المسأله
جزاك الله خير
تخيل لو عندي الكود التالي
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 كتب:تخيل لو عندي الكود التالي
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:
جزاكم الله خير
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…