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

استفسار عن امكانيات ال # C

مغلق
بدأه future1985 في 27 سبتمبر 2007 · 8 رد · 880 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أحتاج سؤال مبرمج عن إمكانيات ال# C

أنا طالبة علوم حاسبات ولدي مشروع تخرج في هذا الفصل وسوف أقوم ببرمجته بلغة ال#C ( مع العلم أني لاأملك خبرة فيها .. ولكن أملك خبرة في البرمجة بc++ و ال java)

المشكلة أن فكرة المشروع واضحة عندي ولكني لاأعلم هل بإمكاني عمل هذه التفاصيل بواسطة ال# Cفقط ؟؟ أم لابد لي من استخدام شيء آخر ؟؟

فكرة المشروع : بناء منزل من الداخل تبعا لقواعد معمارية ..

سأضع خطا تحت الخطوات التي أتساءل عن امكانية عملها بالC#

تفاصيل الخطوات :

- سيقوم المستخدم بإدخال أبعاد الأرض

- سترسم له قطعة أرض ( مستطيل) بالإبعاد التي أدخلها ؟؟؟

- سوف يكون هناك buttons على اليسار تمثل غرفة نوم , مطبخ , حمام . الخ

- أريد من المستخدم ان يضغط على احدى الbutten ويسحب ثم يفلت الماوس فوق قطعة الأرض في المكان الذي يريده؟؟

- ستظهر له رسالة لإدخال حجم الغرفة

- ثم يرسم مستطيل على حسب حجم الغرفة ( بافتراض ان المستخدم أفلت زر الماوس في منتصف الغرفة)؟؟

- وفي كل مرة يقوم فيها المستخدم برسم غرفة يقوم البرنامج بالتأكد من القواعد المعمارية التي يجب اتباعها

- ثم بعد ذلك سوف أحول الرسم كله إلى بيت ثلاثي الأبعاد مرسوم بواسطة الDirectX ؟؟ ( هل يمكن التحويل فعلا ؟؟ )

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

فرج الله همومكم .. وكان في عونكم ..

تم تعديل هذه المشاركة بواسطة future1985 في 27 سبتمبر 2007 في 00:47

#2

ياحماعة الله يخليكم ردوا علي .. هل السؤال غير مفهوم ؟؟؟

#3

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

اختى العزيزة

1 - بداية بما انه كان لديك سابق خبرة فى البرمجة باستخدام ++C فانه لايوجد سبب مقنع لكى تتركى اللغة وتبحثى عن لغة اخرى

اعلم ان الدراسة الجامعية لاتعطى الكثير عن خوارق تلك اللغة - ولكن لاباس !

ان ماتحتاجينه لمشروعك هو بعض من الجرافك - والعمليات الحسابية و نظام ملفات بسيط

يمكنك استخدام المكتبة Allegro مع لغة البرمجة C او ++C وهى سهلة وقوية ومتخصصة فى برمجة الالعاب اساسا

او يمكنك استخدام محيط التطوير Qt 4.0 وهى ايضا سهلة وقوية وتتيح عمل GUI والعديد من المزايا الاخرى - وانا افضلها فى حالة مشروعك

2 - بخصوص سى شارب #C فهى اداة سهلة وجيدة وقوية - وسوف تجدى بها كل ماتحتاجيه لتطوير مشروعك

ان سى شارب تستند اساسا على الالاف من الفصائل Classes التى يشملها الدوت نت - وهذه الفصائل تخدم مختلف اغراض التطبيقات

كما ان ادوات التطوير المتوفرة لها مرنة جدا وسهلة التعلم والاستخدام

مع تحياتى

محمود فايد

#4

اختي الفكرة قابلة للتنفيذ بال C#

لكني اراها فكرة معقدة وسوف تحتاجين وقت طويل لدراسة C# و DirectX

انصحك باستخدام الجافا او ++C حسب رغبتك الخاصة

تم تعديل هذه المشاركة بواسطة زيد الرافدين في 29 سبتمبر 2007 في 01:44

#5

اختى العزيزة

بخصوص

"سوف يكون هناك buttons على اليسار تمثل غرفة نوم , مطبخ , حمام . الخ "

لعمل ذلك - فان الامر يشبه عمل مصمم صغير Simple Designer ولتطبيق ذلك سوف تحتاجى استخدام برمجة الكائنات

بغزارة Object Orieneted Programming حيث انك سوف تقومى بعمل الفصائل Classes التى تمثل الغرف المختلفة

وعندما يطلب المستخدم مثلا غرفة نوم او مطبخ - فانك تقومى بعمل كائن Object من الفصيلة المخصصة للزر الذى ضغط عليه المستخدم

(فصيلة غرفة النوم - فصيلة المطبخ ...وهكذا) - مع العلم انه ينبغى ان تقومى بعمل مصفوفة Array او Collection لكى تشير الى

الكائنات Objects التى يتم انشائها بناء على طلب المستخدم

حيث ان مشروعك سوف يكون مسئولا عن ادارة تلك الكائنات وتميزها اثناء وقت العمل Runtime

مع تحياتى

محمود فايد

تم تعديل هذه المشاركة بواسطة اعمق اسرار البرمجة في 29 سبتمبر 2007 في 01:46

#6

اختى العزيزة

بخصوص

"ثم بعد ذلك سوف أحول الرسم كله إلى بيت ثلاثي الأبعاد مرسوم بواسطة الDirectX ؟؟ ( هل يمكن التحويل فعلا ؟؟ )"

نعم ممكن - يمكنك انى تستخدمى لذلك Allegro حيث يمكن استخدامها ايضا مع #C وسوف تتيح لك تلك الاداة عمل تصميمات ثلاثية الابعاد وعرضها

بسهولة من خلال كتابة الكود الذى يعتمد على المصفوفات بشدة

مع تحياتى

محمود فايد

#7

جزاكم الله خيرا على الردود.. ولكن إلى الآن لم يصبح الموضوع واضحا لي !!

أخي أعمق أسرار البرمجة ..

اعمق اسرار البرمجة كتب:
فانه لايوجد سبب مقنع لكى تتركى اللغة وتبحثى عن لغة اخرىاعلم ان الدراسة الجامعية لاتعطى الكثير عن خوارق تلك اللغة - ولكن لاباس !

ان ماتحتاجينه لمشروعك هو بعض من الجرافك - والعمليات الحسابية و نظام ملفات بسيط

يمكنك استخدام المكتبة Allegro مع لغة البرمجة C او ++C وهى سهلة وقوية ومتخصصة فى برمجة الالعاب اساسا

او يمكنك استخدام محيط التطوير Qt 4.0 وهى ايضا سهلة وقوية وتتيح عمل GUI والعديد من المزايا الاخرى - وانا افضلها فى حالة مشروعك

ولكني بالفعل بدأت بدراسة ال C# ووجدتها شبيهه جدا بال ++C من ناحية البرمجة وبالجافا من ناحية GUI إلا أنها تتميز عنها بسهولة انشاء الGUI فهل برأيك أن C++ لها مميزات تفوق الC# في حالة مشروعي ؟؟

وطبعا لم أستطع فهم الأشياء الذي ذكرتها في كلامك ..فأين من الممكن أن أجد معلومات عنها ؟؟

وهل الجزئية الأولى من المشروع ( رسم الغرف يمكن اداؤها بالC# ) وكيف ؟؟

( سامحيني على كثرة اسئلتي .. لكن ذهني مشوش قليلا !! )

#8

كتبت الرد قبل أن أقرأ رديك السابقين ..

جزاك الله خيرا وفرج همك ..

ولكن بقي سؤال واحد لم تجيبني عليه.. وهو كيف سأرسم المتسطيل الذي يمثل الغرفة بالحجم والمكان الذي يريده المستخدم ؟؟

( أريد فقط أن أكون فكرة مبدئية عن طريقة عمل كل خطوة .. حتى تذهب رهبة المشروع عندما أفكر في شيء لاأعرف كيف أعمله بعد !! )

#9

اختى العزيزة

عندما يطلب المستخدم مثلا رسم غرفة نوم - او مطبخ

وعندما تكتبى الكود الازم لتوليد كائن Object من الفصيلة المخصصة لذلك والتى سوف تقومى بكتابتها

عليك ان تضعى فى اكواد تلك الفصيلة الكود الازم لعرض نموذج Form يسال المستخدم عن الابعاد الازم بصفة مبدئية

وحيث ان الكائن Object الذى سوف تقومى بعمله - تستطيعى الاشارة اليه - من خلال Object Refrence يسجل داخل مصفوفة من الكائنات Array of Objects فانه ببساطة يمكنك تغير خواص Properites ذلك الكائن - ومن هذه الخواص التى سوف تعرفيها - العرض Width - والارتفاع Height

; MyObjsArr[ActiveObj].width = mywidth

; MyObjsArr[ActiveObj].height = myheight

حيث تم فرض ان المصفوفة التى تشمل الموشرات الى الكائنات اسمها MyObjsArr وان الرقم الذى يدل على الكائن الذى نتعامل معه مسجل فى المتغير ActiveObj

ربما يكون فى الامر شىء من الغموض - لهذا انصحك بالتعمق فى برمجة الكائنات - او التعرف على فنياتها

يمكنك الاسترشاد بكتاب اعمق اسرار البرمجة - الجزء الاول - الباب الثانى - فنيات برمجة الكائنات

حيث سوف تجد شرح افضل ومنسق لتلك الفقرة

الكتاب فى الموقع http://www.kutub.info

مكتبة الكتب - قسم لغات البرمجة

مع تحياتى

محمود فايد

هذا الموضوع مغلق.

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