مرحبا أصدقائي مطوري الألعاب و المبرمجين عموما لدي سؤال .. أنا مبرمج ألعاب و لدي خلفية جيدة في البرمجة و لدي معرفة في أساسيات و مبادئ اللغات البرمجية و أنا بصدد تعلم لغة برمجة جديدة بشكل جدي لأتقدم مستوى أعلى في هذا المجال الرائع و لكني محتار أيهما الأفضل لتعلمه السي شارب أم السي بلس بلس أنا معجب بلغة الc# و لكن لدي رغبة في تعلم الC++ لذلك أرجوا أن تساعدوني و تدلوا بآرائكم.
لا تخبرني بما لا أستطيع فعله | Don't tell me what I can't do
السلام عليكم، إذا كنت يا أخي تريد إتقان برمجة الألعاب بشكل جدي فأنا أنصحك بتعلم لغة ++C وليست أية لغة أخرى لأنها تعمل بشكل إفتراضي على أغلب أنظمة التشغيل كما أنه متاح لها الكثير من المكتبات التي تسهل إنشاء نوافذ OpenGL و التعامل مع أذرعة التحكم المتصلة بالكمبيوتر و غيرها مثل SDL2 و Allegro و Sfml كما أنها تساعدك بشكل عام على التحكم في حجم و كيفية الذاكرة المستخدمة بالإضافة إلى أنها في معظم الحالات أسرع من لغة #C لأنها تترجم بشكل مباشر للغة الألة و ليس للغة وسيطة كالـ #C. عيبها الوحيد من وجهة نظري أنها أصعب قليلا من لغة #C في التعلم ولكنها ليست صعبة لدرجة أنك لن تستطيع فهما، على العكس، ما أن تبدأ بتعلمها ستشعر أنها سهلة و لكنها في الغالب تحتاج لوقت أطول قليلا لإتقانها.
أما إذا كنت تريد أن تطور الألعاب بطريقة أسهل و أسرع فيمكنك إستخدام أحد محركات الألعاب المعروفة مثل Unreal Engine أو Unity أو Cry Engine وكل محرك من الثلاثة يستخدم أحد لغات البرمجة المعروفة، فيمكنك إستخدام ++C في محرك Unreal Engine وإستخدام #C في المحركين الأخرين.
وفي 04 مايو 2017 01:46 م، أعرب mohamed samir عن رأيه بالموقف كالآتي:
السلام عليكم، إذا كنت يا أخي تريد إتقان برمجة الألعاب بشكل جدي فأنا أنصحك بتعلم لغة ++C وليست أية لغة أخرى لأنها تعمل بشكل إفتراضي على أغلب أنظمة التشغيل كما أنه متاح لها الكثير من المكتبات التي تسهل إنشاء نوافذ OpenGL و التعامل مع أذرعة التحكم المتصلة بالكمبيوتر و غيرها مثل SDL2 و Allegro و Sfml كما أنها تساعدك بشكل عام على التحكم في حجم و كيفية الذاكرة المستخدمة بالإضافة إلى أنها في معظم الحالات أسرع من لغة #C لأنها تترجم بشكل مباشر للغة الألة و ليس للغة وسيطة كالـ #C. عيبها الوحيد من وجهة نظري أنها أصعب قليلا من لغة #C في التعلم ولكنها ليست صعبة لدرجة أنك لن تستطيع فهما، على العكس، ما أن تبدأ بتعلمها ستشعر أنها سهلة و لكنها في الغالب تحتاج لوقت أطول قليلا لإتقانها.
أما إذا كنت تريد أن تطور الألعاب بطريقة أسهل و أسرع فيمكنك إستخدام أحد محركات الألعاب المعروفة مثل Unreal Engine أو Unity أو Cry Engine وكل محرك من الثلاثة يستخدم أحد لغات البرمجة المعروفة، فيمكنك إستخدام ++C في محرك Unreal Engine وإستخدام #C في المحركين الأخرين.
أتمنى أن أكون أفدتك.
أشكرك ياصديقي .. رغم أني تأخرت في الرد لبعض الظروف لكن أبشرك لقد قررت بعد تفكير و بفضلك ايضا اختيار لغة الc++ .. يمكنني الرهان عليها لأنني بكل تأكيد سأحتاجها مستقبلا و بما أنني مازلت صغيرا سأستغل الفرصة و أكرس كل وقتي لتعلمها . فشكرا لك.
لا تخبرني بما لا أستطيع فعله | Don't tell me what I can't do
تعلم محرك الالعاب نفسه فانت لن تحتاج لاكثر من ذلك، ولن تحتاج للغوص عميقاً في امور البرمجة مالم ترغب بصنع العاب عملاقة وضخمة داخل شركة معينة (وحتى لو كان كذلك فغالبا لن تضطر لاستخدام امور متقدمة) اذا كانت لديك لغة برمجة بالاساسيات فكل شيء تقريباً بخير معك
لكن لو اردت تعلم لغة برمجة فالغتين من نفس النوع - OOP - وأيهما تعلمت ستفيدك في فهم كل لغات البرمجة من نوع OOP لان الخصائص والصفات مشتركة الا في بعض الاختلافات البسيطة التي ستلحظها عند الانتقال من لغة لآخرى (وبالطبع لن تضطر لاعادة التعلم)
فانا مثلا تعلمت في الجامعة لغة سي بلس بلس، ولكني ابرمج الالعاب بالسي شارب وانا لم المس درس واحد يخص السي شارب :)
هناك انواع اخرى من لغات البرمجة ربما تفضل ان تتعلمها مثل لغات المنطق LOGIC PROGRAMMING LANGUAGE وهي اللغات المختصة بالذكاء الاصطناعي وقواعد البيانات مثل PROLOG وغيرها. (لكني لا انصحك بها اذا لم تكن مهتم فهي ايضا لن تفيدك بالالعاب بشكل مباشر) كل شيء مفيد طبعا لكن اقصد ان محرك الالعاب يغنيك عنها اصلاً