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

ماذا بعد السي++ ؟؟؟

مغلق
بدأه majnona_ في 19 أبريل 2005 · 14 رد · 1,368 مشاهدة · في قسم برمجة الألعاب و الرسوميات العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

ماذا بعد السي++ ؟؟؟ هذا هو سؤالي

اخوتي انا انهيت اساسيات السي++ .... واريد ان اتقدم خطوه الى الامام

فكرت بان ابدأ بالدايركت اكس ولكني وجدت نفسي متردد بينه وبين الفيزياء ( فيزياء ورياضيات)

وجئت الى هنا لكي اسمع منكم

هل ابدا بالدايركت اكس ام بالفيزياء والرياضيات

ولماذا ؟؟؟

ملاحظه:-

انا احب ان ابدا بالفيزياء والرياضيات ولكني اخاف عندما انهي هذا الموضوع ان انسى السي++ وذلك لاني الفيزياء لا يوجد بها اكواد وهكذا مثل الدايركت اكس ...................

ملاحظه اخرى :-

كم من الوقت احتاج حسب راييكم كي انتقل من الفيزياء الى الدايركت اكس ( ارجو ان لا تعطوني حجج عن هذا السؤال مثل ان لا اهتم بالوقت وهكذا - انا لا اهتم بالوقت ولكني متحمس جدا ولذلك اجد الوقت ذو دور كبير جدا في التعليم لاننا ان لم نعرف متى سننهي فلن ننهي )

ملاحظه اخيره:-

اي كتاب تنصحوني بالبدأ فيه ( من ناحية الدايركت اكس ومن ناحية الفيزياء والرياضيات) ..........

وشكرا .................

#2

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

الفيزياء والرياضيات اجلها بعدين... لكن لابد تكون فاهمها من المدرسة..

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

الدايركت اكس صعبة(وايضا سهلة لعينة من الاشخاص )

opengl اسهل وقوية جدا....

وملاحظة صغيرة

الفيزياء والرياضيات بحر لاساحل له...فمن الان لاتتصور بانك ستنهي كل شي...

فليست المسالة سنة او سنتين....

ركز على مكتبة معينة.. صمم لعبة ثنائية ثم طورها ثم انتقل ل 3d ابدا بدايات يسيرة..ولاتتعجل

انت الان ما شاء الله عليك كثير الاسئلة وهذا حق من حقوقك..لكن لا تحمل نفسك امور كثيرة انت في غنى عنها

واسف على الاطالة .فانا كثير الكلام.

تم تعديل هذه المشاركة بواسطة الشـمري في 19 أبريل 2005 في 17:51

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#3
الشـمري كتب:
ركز على مكتبة معينة.. صمم لعبة ثنائية ثم طورها ثم انتقل ل 3d ابدا بدايات يسيرة..ولاتتعجل

انت الان ما شاء الله عليك كثير الاسئلة وهذا حق من حقوقك..لكن لا تحمل نفسك امور كثيرة انت في غنى عنها

واسف على الاطالة .فانا كثير الكلام.

ماذا تقصد بمكتبه

؟؟؟

ممكن توضح ؟؟

وماذا تقصد باني يجب ان اكون بمستوى عالي بالسي++ ( اي مستوى) انا متقن الكلاسس واجدها سهله جدا جدا جدا جدا واعرف استعمالها

كما ومره اخره اقولها

اي مكتبه؟؟ هل تعني الدايركت اكس ؟؟؟ بماذا ابدأ بالدايركت اكس؟؟؟ ارجو ان لا تقول ل بامثلة هذا المنتدى او اي منتدى اجنبي لاني حاولة فان الشرح ضئيل جدا وذلك لانهم يقفزو عن بعض الدوال

ممكن كتاب دايركت اكس من الاساسيات؟؟

وشكرا ......

#4

بعد السي بلص بلص, و قبل الدرايركت اكس و غيره, ركز عالـ object oriented programming, يعني عود نفسك تستخدم classes و غيره, أهم شي بعد تعلم لغة البرمجة هو الممارسة في البرمجة, صدقني أهم من دايركتس اكس و معرف شنو.

أما إذا كنت تقصد انك انهيت هذه المرحلة و تسأل عن القادم, فالخيار لك, إدأ من حيث شئت و توكل على الله.

رأيي ان تبدأ بالدايركت اكس, و الرياضيات على ما أظن تأتي مع الدايركت اكس, يعني حتتعلمهة غصبا عنك :D بعدين تقدر تنتقل للفيزياء, لأنه في برمجة الألعاب, الدايركت اكس اهم من الفيزياء, إذا كنت تعرف فيزياء دون دايركت اكس, فقد لا تنتج شيئا, أما لو كنت تعرف دياركت اكس دون فيزياء, فتستطيع بإذن الله ان تنتج أشياء.

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

ملاحظة إضافية:

اقتباس
وماذا تقصد باني يجب ان اكون بمستوى عالي بالسي++ ( اي مستوى) انا متقن الكلاسس واجدها سهله جدا جدا جدا جدا واعرف استعمالها

تعلم البرمجة الشيئية مهمة جدا, المسألة ليست مجرد كتابة كلاس و استخدامه, المسألة انك تفكر في البرنامج كله على أساس الـ objects,.

مفهوم الكلاس بحد ذاته قد يبدو سهل, بس تطبيقه يحتاج ممارسة, بصراحة لا أعرف كيف أشرح الموقف.

هي أحيانا مثل الرياضيات, يمكن تسمع الاستاذ يشرح الدرس, تقول عليه سهل جدا, بس يجي يوم الامتحان, تشوف الأسئلة صعبة, ليش؟ لأنك لم تمارس جيدا و اعتبرت الموضوع سهل جدا. أنا يحصل لي هذا كثيرا. أشوف الدرس سهل, أقول لنفسي "هذا الدرس ما يحتاج مراجعة .. وش اراجع فيه أصلا؟" بعدين ييجي الامتحان, الاقي نفسي مو عارف احل شي.

إذا كنت تشوف بأن الكلاسس سهلة, فيمكن تكون نفس الحالة, انت تنظر لها من منظور سطحي, بس صدقني الـ object oriented programming معقد أكثر مما تتصور, ولا بد لا بد من التمرس فيه و القراءة عنه (لا غنى عن القراءة عنه, إلا أن يكون عندك استاذ جيد يشرح الموضوع بإسهاب).

يعني احنة ظلينة بالجامعة ندرس الـ objet oriented programming لمدة 3 أشهر تقريبا .. و هذا كان مجرد مقدمة.

هذا كتاب وجدته في amazon لا أعرف ما مستواه, لكن يبدو ان القراء أعجبهم الكتاب

http://www.amazon.com/exec/obidos/tg/detai...579930?v=glance

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

تم تعديل هذه المشاركة بواسطة hasan_aljudy في 19 أبريل 2005 في 18:13

#5

اخي انت تبالغ بعض الشيء

ما هو الصعب بالكلاس وانا شخصيا حللت ما يقارب 10 تمارين عليه هو فقط بدون الوراثه او فيرتيوال او اي شيء اخر

وحللتهن بسهوله

ممكن اعرف ماذا تقصد بالتمرن والممارسه ( هل هي حل الاسئله ) ام ماذا ؟؟

hasan_aljudy كتب:
هذا كتاب وجدته في amazon لا أعرف ما مستواه, لكن يبدو ان القراء أعجبهم الكتاب

http://www.amazon.com/exec/obidos/tg/detai...579930?v=glance

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

على فكره اخي هذا نفس اسم الكتاب ولكنه ليس الكتاب الذي تتحدث عنه اسمه Object Oriented ولكن ليس الذي وضعته انت هنا

وعلى فكره هذا الكتاب قراته وقرات كمان كتاب وقرات نصف كتاب عرب بل اكثر من نصفه ( 300 صفحه تقريبا من اصل 500 ) وقرات نصف كتاب انجليزي ( على ما اذكر قرات 8 فصول من اصل 13 او 14 فصل)

ولم اشعر باي صعوبه وكل كود موجود بالكتاب اقراءه بسهوله ( من ناحية الكلاسيس) الصعوبه التي وجدتها في جميع السي++ هي المؤشرات فقط وبعض الشيء من المصفوفات ( حتى ان المصفوفات اراها احيانا ممتعه)

شكرا على ردك يا اخي

وارجو من باقي الاخوه ان يعطوني رايهم وان يعطوني اسم لكتاب دايركت اكس من البدايه ( الاساسيات)

وشكرا مره اخره

#6

لا يا أخي الممارسة ليست حل مسائل, الممارسة يعني البرمجة ..

الكلاس مو صعب, و لكن ما الهدف من الكلاس؟ يعني ما فائدته؟ البرمجة بشكل عام ليست صعبة .. كل شي واضح .. for loops, while loops, functions, structs, لو نظرت الى كل واحد من هؤلاء على حدة, فستجدها جميعها سهلة.

لكن السؤال, كيف تستخدمها لعمل برامج كبيرة و معقدة؟

و هذا ليس كل شيء, فعندما تبدأ في البرمجة, ستجد نفسك بعد فترة تريد تغيير اجزاء من الكود, لأن طبيعة المشكلة اللتي تحاول حلها تتغير مع الزمن, و يصبح البرنامج بحاجة الى تطوير .. و لكن كيف ستطور البرنامج؟ هذا يتطلب إعادة كتابة أجزاء من الكود, و هذا ليس بالأمر السهل, لأنك إذا اعدت كتابة جزء هنا فهنالك أجزاء أخرى تعتمد على هذا الجزء, و الآن عليك ان تعيد كتابة تلك الأجزاء أيضا.

و كلما كبر حجم البرنامج, زادت درجة التعقيد, و زادت الصعوبة في صيانة البرنامج و اصلاح الأخطاء البرمجية.

فتعلم البرمجة ينقسم الى قمسين: اولا تعلم لغة البرمجة و الأساليب المستخدمة في البرمجة.

و القسم الثاني هو تعلم هندسة البرمجيات و التفكير في البرنامج قبل كتابته و تصميم البرنامج.

الممارسة هنا هي كتابة برامج صغيرة قد لا تكن ذو فائدة, لكنها تبقى برامج على كل حال.

يعني اكتب برامج صغيرة .. ليس المهم ان تفعل شيئا مهما, بل المهم انها تخليك تكتب كود, و هذه هي الممارسة. يعني عادي جدا تكون فكرة البرنامج سخيفة, لا تهتم لذلك, المهم انها برامج. أنا شخصيا كتبت العديد من البرامج التي قد تعتبر تافهة لأنها لا تفعل شيء ذو فائدة, لكني شخصيا تعلمت منها الكثير. و في طريق العلم لا يوجد شيء اسمه برنامج تافه.

فالممارسة مهمة جدا.

ربما لن تدرك ما أقصد حتى تنظر الى برنامج حقيقي كامل ...

إذا كان عندك خط انترنت سريع و لا تبالي بتحميل ملف حجمه 30 ميجا بايت, فادخل على موقع ogre و حمل محركهم:

http://www.ogre3d.org/

و هو على فكرة محرك رسم ثلاثي الأبعاد, يعني لو حملته لن تضيع وقتك بل ممكن تستفيد منه جدا.

و هذه صفحة تحميل الكود:

http://www.ogre3d.org/index.php?option=com...selectcat&cat=4

حمل الـ OGRE 1.0.1 Source for Windows و شوف ما هو الكومبايلر اللذي تستخدمه و حمل الـ 3rd-party Dependencies الخاصة به.

لعلك اذا نظرت اليه (الى كود البرنامج) قد تفهم ما أرمي إليه.

عموما لا استطيع اجبارك على تغيير رأيك,

اما بالنسبة لكتب الدايركت اكس فهناك العديد منها, و لا أدري أيها الأفضل,

و لكن جرب هذا الكتاب:

http://s5.yousendit.com/d.aspx?id=09KFZDBNRD7O80B83FEJ2PB5GD

و هذا اللنك مؤقت!

و لعل أخي GameDev 4 Arab يستطيع ان يفيدك أكثر في هذا المجال.

تم تعديل هذه المشاركة بواسطة hasan_aljudy في 19 أبريل 2005 في 18:48

#7

اقصد مكتبة دايركت اكس او اوبنجل

يبدو انك مصر على الدايركت اكس..شخصيا وجدت الدايركت اكس معقد..

كما قال حسن الوضع مع البرمجة الكائنية صعب(مثلا عندما تريد البدء بمحرك.. متى يكون كائن ..هل اجعله يرث من كائن ..هل استخدم تعدد الواجهات الان.. استخدم المؤشر مع الكائن الان.. ) يعني تصميم وهيكلة البرنامج وجعله كائني هنا الصعب...

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#8

السلام عليكم

اخي حسن هذا ما رميت اليه

لقد قصدت بحل المسائل اي كتابة برامج حيث قمت بكتابة ما يقارب 10 برامج عن الكلاس و10 عن الدوال و10 operators وقمت بفهم وكتابة الاكواد التي بالكتاب( الاكواد التي بالكتاب هي برامج صغيره وكما قلت سخيفه ولكنها تساعد على الفهم ) كلها ما عدا القليل

من الوراثه والدوال الصديقه والفئات الصديقه وكل هذه الامور

ولهذا اقول لك انني قرات

اخي كم برنامج كتبة عن الكلاسيس؟؟؟ اذا جوابك كان كثير فارجو ان تضع رقم وليس كلمه !!!!

وشكرا على ردك اخي الشمري

وشكرا للجميع

على فكره انا قررت بماذا سابدا!!!!

عندما انتهي من فهم اول كود في وين 32 وحفظه اي باخر شهر 4 سابدا بالدايركت اكس والفيزياء ( الفيزياء+ الرياضيات) معا اي ساقرا الفيزياء والدايركت اكس بالتوازي ( كل يوم اقرا فيزياء ودايركت اكس ) واما بالنسبه للكتب التي سابدا بها

فبالنسبه للدايركت اكس سابدا بالكتاب الذي نصح به الجميع وهو Beginning_DirectX9

وبالنسبه للفيزياء( الفيزياء + الرياضيات) سابدا بالكتاب الذي انا اخترته وهو Beginning Math and Physics for Game Programmers

واظن انني هكذا قد اخترت بماذا سابدا

ارجو التعليق على هذه البدايه ------- واذا اخترت الطريق الخطأ او قفزت عن بعض الاشياء( مواضيع مهمه ) فارجو تنبيهي

ونصيحه لكل من سيبدأ السي++:-

اقول له ان لا يخاف لان السي++ سهله جدا وان لا يخاف من كلام الغير --- 100% يوجد بعض الصعوبات ولكن ليس لدرجة من يقول( " يا الهي ما اصعب هذه اللغه " او " لن اعود الى هذه اللغه بعد اليوم من كثرة صعوبتها" )

وشكرا للجميع .................

#9

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

لكن في كورس الجامعة جعلونا نكتب حوالي 3 او اربع برامج .. (وين برامجي ووين برامج الجامعة!!) و كذلك كنت انظر كثيرا الى كود كتبه اناس غيري (و هذه نقطة مهمة أيضا في التعلم, ان تنظر الى ما يكتبه المبرمجون في برامج حقيقية).

بالنسبة لممارسة الـ object oriented فأعتقد هناك ثلاث مراحل:

أولا مجرد كتابة كلاس .. كلاس واحد فقط و محاولة عمل شيء به.

بعدين كتابة كلاسين او ثلاثة (او اكثر) و جعلها تتفاعل مع بعضها.

بعدين ادخال الوراثة و الـ polymorphism في الموضوع.

إذا تقدر تقرة عن الـ cohesion and coupling و تحاول تطبقهة يكون أحسن, لأنها مفاهيم مهمة من اجل تصميم قوي.

مثلا اذا نظرت الى هذا التمرين: http://pages.cpsc.ucalgary.ca/~schock/cour...ents/a3/a3.html

هل تظن انك تستطيع كتابة برنامج يوفي بهذه المتطلبات؟ (هذا السؤال يطب منك كتابة البرنامج بالجافا لكن اللغة ليست مهمة)

لا اطلبمنك كتابة برنامج لحل المتطلبات, و لكن هكذا في راسك بس, هل تظن انك تستطيع كتابة برنامج يفي بالمتطلبات؟

على فكرة, انا في حلي لهذا البرنامج كتبت 11 كلاس.

على فكرة هو الموضوع ليس صعب, و هذا ليس ما كنت أريد قوله .. (لا احب استخدام كلمة صعب!!!!) لكن الموضوع مهم و يستحق ان الواحد يبذل جزء من وقته يتمرن عليه.

اقتباس
ونصيحه لكل من سيبدأ السي++:-

اقول له ان لا يخاف لان السي++ سهله جدا وان لا يخاف من كلام الغير --- 100% يوجد بعض الصعوبات ولكن ليس لدرجة من يقول( " يا الهي ما اصعب هذه اللغه " او " لن اعود الى هذه اللغه بعد اليوم من كثرة صعوبتها" )

:D

فعلا انا اوافقك %100, انا اصلا عندما بدأت في التعلم تعلمت السي بلص بلص .. و لم اجد فيها صعوبة تذكر .. طبعا الاواحد يواجه صعوبات, لكن هل هناك شي في الحياة خالي من الصعوبات؟

لا أدري لماذا يظن الناس ان السي صعبة .. ربما بسبب الأقواس؟ { }؟ :wacko:

#10

### ربما بسبب الأقواس؟ { }؟ ###

وش دراك... <_<

تراني كنت منهم :lol:

تم تعديل هذه المشاركة بواسطة الشـمري في 19 أبريل 2005 في 21:05

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#11

السلام عليكم

بالنسبة لسؤالك

اقتباس
ماذا بعد السي++ ؟؟؟

فالقرار يعود لك

اقتباس
اخوتي انا انهيت اساسيات السي++

الأساسيات وحدها لاتكفي

اقتباس
هل ابدا بالدايركت اكس ام بالفيزياء والرياضيات

ولماذا ؟؟؟

بالفيزياء والرياضيات كما قال لك الأخ الكريم الشمري

اقتباس
الفيزياء والرياضيات بحر لاساحل له

و هذا يعني أنه من الأفضل البدأ بـ بالدايركت اكس أحسن

اقتباس
انا احب ان ابدا بالفيزياء والرياضيات ولكني اخاف عندما انهي هذا الموضوع ان انسى السي++ وذلك لاني الفيزياء لا يوجد بها اكواد وهكذا مثل الدايركت اكس ...................

إن كنت قد فهمت لغة السي و السي++ فإنك لن تنساها أبدا

و السلام

#12
GameDev4Arab كتب:
الأساسيات وحدها لاتكفي

ماذا تقصد ؟؟؟؟؟؟؟ الاساسيات وفيها الكثير من ناحية برمجة الالعاب.

وبالنسبه للنسيان

انا قصدت انني سانسى بعض الدوال او انسى بعض المواضيع التي لا تتكر كثيرا مثل virtual وهذا الموضوع اظن انه يمكن نسيانه

وثانيا: - من قال ان الفهم لا ينسى ... الفهم ينسى مع الزمن اذا لم نرجع اليه ونقراءه مره ومره ومره اخرى ........................... ولكن الفرق بينه وبين الحفظ هو اننا عندما نفهم يمكن ان نتذكر بسرعه اذا نسينا

وشكرا اخي ....

ارجوا ان تنصحوني بكتاب فيزياء

وشكرا

#13

جرب هذا الكتاب

Beginning Math and Physics for Game Programmers

#14
GameDev4Arab كتب:
جرب هذا الكتاب

Beginning Math and Physics for Game Programmers

شكرا لك اخي

هذا هو الكتاب الذي اقراءه

#15

و بالنسبة للرياضيات

Vector Game Math Processors

كتاب رائع

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

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