الشبكة العربية لمطوري الألعاب

خبير  أحمد عزالدين مشاركة 111

السلام عليكم

بتاريخ 05 اكتوبر 2008 02:20 ص، قطب أحمد عبد الغني حاجبيه بشدة وهو يقول:

لقد اطلعت على آخر التعديلات في الكودووجدت ان كود صندوق حوار الحفظ معقد بشكل غريب. فقررت تبسيطه والكلاس الآن كله 5 أو 6 أسطر فقط.إن أعجبتكم التعديلات فيمكنكم إدخالها في المشروع...

شكرا اخي احمد علي ملاحظة حضرتك
بصراحة لدي رأي حول هذه النقطة لكني غير متأكد منه تماما
اولا الكود ليس من التعقيد كما تظن ولكنه فقط مجرد دالة static لتحاكي طريقة استدعاء الدالة MessageBox.Show
عموما انا فقط عملته بهذه الطريقة بالرغم من هناك طرق اخري عديدة لتحقيق الهدف لكن وجهة نظري هي الحفاظ علي نسخة واحدة فقط في الذاكرة
يتم استخدامها وتكون local بمعني انه في الطريقة التي حضرتك ذكرتها والتي هي بصراحة اول ما فكرت فيه اعتقد انها يتم ذكر الكود فيها كل مرة بالشكل الاتي
بانشاء نسخة من الكلاس في كل مرة ومن ثم استدعاء الدالة علي انها non static وبالرغم من ان هذا سهل الا اننا لا نريد انشاء نسخة ومن ثم يتم حذفها من الذاكرة في كل مرة بعد استخدامها وذلك لان الكود يتم استدعاؤه كثيرا

عموما شكرا لك علي ملاحظة حضرتك ويمكننا ان قرر الاستاذ وسام الاخذ بها ان ننشئ متغير الكلاس Prompt مرة واحدة فقط علي مستوي الكلاس
وبذلك نقلل من انشاء نسخة من الكائن في كل مرة الان انها في هذه الحالة ستكون global وليست local

جزاك الله خيرا اخي احمد 😄

أحمد عزالدين
طالب دراسات عليا
جامعة كالجري

خبير  أحمد عزالدين مشاركة 112

السلام عليكم

الف مبروك لنا جميعا علي انهاء العمل تقريبا في هذا القسم وجزاكم الله خيرا 😄
شكر خاص للاستاذ وسام علي مجهوده العظيم والاشراف

نأمل انهاء باقي اجزاء المشروع في باقي الاقسام ان شاء الله
والسلام عليكم

أحمد عزالدين
طالب دراسات عليا
جامعة كالجري

مبتدئ  Mr-X مشاركة 113

بس طلب بسيط جدا اذا ما فى ازعاج 😄
بس ودى وضع اسم بجنب mr-x لتكون
محمد طارق محمد ( Mr-X)

تعلمت فى حياتي : أن محادثة بسيطة أو حواراً قصيراً مع إنسان حكيم يساوي شهر دراسة

خبير مدير وسام البهنسي مشاركة 114

في 04/شوال/1429 11:04 م، غمغم ahmed ezz باستغراب قائلاً:

ويمكننا ان قرر الاستاذ وسام الاخذ بها ان ننشئ متغير الكلاس Prompt مرة واحدة فقط علي مستوي الكلاس
وبذلك نقلل من انشاء نسخة من الكائن في كل مرة الان انها في هذه الحالة ستكون global وليست local

هذا مثال على تحسين الأداء السابق لوقته. عمليات تحسين الأداء من هذا المستوى لا يتم تنفيذها إلا إن دعت الحاجة لذلك. في هذه الحالة، لم ألحظ أي بطء أو استهلاك مفاجئ للذاكرة عند إنشاء صندوق الحوار هذا.  لذلك فلندع هذه المهمة للـ garbage collector ونحافظ على وضوح وبساطة الكود. ☺
 
أنا مع تعديلات أحمد عبد الغني...

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

خبير  أحمد عزالدين مشاركة 115

السلام عليكم

وفي 09 اكتوبر 2008 05:05 م، أعرب وسام البهنسي عن رأيه بالموقف كالآتي:

هذا مثال على تحسين الأداء السابق لوقته. عمليات تحسين الأداء من هذا المستوى لا يتم تنفيذها إلا إن دعت الحاجة لذلك.
شكرا علي التنبيه

لقد ارفقت اخر تعديل

لقد قمت بتبسيط الكلام كما طلبت وحسب رأي الاخ احمد عبد الغني لكن مع تعديل بسيط لنتمكن من ارجاع قيمة محددة تبين اختيار المستخدم والزر الذي قام بالضغط عليه عند ظهور المربع الحواري لتأكيد الحفظ

لقد قمت ايضا ياضافة الصور الاخيرة التي ادرجها الاخ kfuPower فشكرا له 😋

استاذ وسام ان كان هناك اي تعديلات او ملاحظات اخري فنحن في الانتظار
اذا لم يكن هناك اي ملاحظات اخري فمبروك لنا جميعا انهاء العمل في المحرر وننتظر اصداره بصيغة ال Release ليكون متاح للاستخدام في اقسام المشروع الاخري بعد انهاء شاشة المطورين من حضرتك 😄
وجزاكم الله خيرا

أحمد عزالدين
طالب دراسات عليا
جامعة كالجري

خبير  أحمد عبد الغني مشاركة 116

وفي 09/شوال/1429 10:27 ص، ظهر شبح ابتسامة على وجه ahmed ezz وهو يقول:

لقد قمت بتبسيط الكلام كما طلبت وحسب رأي الاخ احمد عبد الغني لكن مع تعديل بسيط لنتمكن من ارجاع قيمة محددة تبين اختيار المستخدم والزر الذي قام بالضغط عليه عند ظهور المربع الحواري لتأكيد الحفظ

لكنها بالفعل كانت كذلك 😖
فلكل زر في الصندوق خاصية DialogResult والتي يمكن وضعها للقيمة التي تحب أن تعيدها، وعند نداء الإجراء ShowDialog فإن القيمة المعادة هي القيمة التي حددتها للزر الذي ضغطه المستخدم 😪

اللهم انصر أهلنا في فلسطين وآجرنا أن نكون عوناً لهم

خبير مدير وسام البهنسي مشاركة 117

أما في 13/شوال/1429 10:39 ص، فقد تنهد أحمد عبد الغني بارتياح وهو يرد:

لكنها بالفعل كانت كذلك 😖

أعتقد أن ما حدث هو أن أحمد عز لم يأخذ ملف المرفقات الذي كان في مشاركتك، لذلك لم ينتبه إلى أن الوظيفة تعمل بشكل سليم بالفعل... 😒

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

خبير مدير وسام البهنسي مشاركة 118

بعد تضمين آخر التغييرات، تم إنهاء المشروع بحمد الله، وهو الآن مطروح للتحميل المباشر كبرنامج مستقل على الرابط الثابت:
 
http://www.agdn-online.com/games/kvalley_2.zip
 
نشكر كل من ساهم في العمل في هذا المشروع، والكود الأخير أيضاً موجود على الرابط الثابت:
 
http://www.agdn-online.com/source/kvalleyed_src.zip
 
لمن يحب أن يستفيد ويتعلم بالنظر إلى الكود...
 
سيتم تحديث البرنامج المستقل من وقت لآخر وفقاً للتعديلات التي ستحدث في فريق الـ ++C، حيث أن تلك التعديلات أساسية ويجب أن يتعامل معها مصمم المرحلة...
 
بنفس الوقت، ستكون مهمة فريق التصميم الآن العمل على هذا البرنامج لإنتاج المراحل المطلوبة للعبة. أما فريق الـ #C، فيمكنه الآن أن يأخذ عطلة قصيرة ريثما ننهي المشروع بشكل كامل ويشحذ إمكانياته استعداداً للمشروع القادم إن شاء الله.. 😄
 
مرة أخرى شكراً جزيلاً، لقد قمتم بعمل رائع وعلى مستوى عالي!
 
تحياتنا لكم!

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

مبتدئ  Mr-X مشاركة 119

الف مبروك الانتهاء من العمل لا اصدق الصراحة ان المحرر انتهى☺
حملته وسأقوم بالاطلاع عليه
ولى عودة ان شاء الله

تعلمت فى حياتي : أن محادثة بسيطة أو حواراً قصيراً مع إنسان حكيم يساوي شهر دراسة