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

لا اله الا الله

اللهم صلي وسلم و بارك على سيدنا محمد و على آله و صحبه أجمعين ومن تبعه بإحسان إلى يوم الدين
 
الرئيسيةأحدث الصورالتسجيلدخول
مواضيع مماثلة

     

     ماهو الفيجوال سي ++؟؟؟

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


    انثى
    عدد الرسائل : 202
    العمر : 75
    تاريخ التسجيل : 27/02/2008

    ماهو الفيجوال سي ++؟؟؟ Empty
    مُساهمةموضوع: ماهو الفيجوال سي ++؟؟؟   ماهو الفيجوال سي ++؟؟؟ Icon_minitimeالسبت 1 مارس 2008 - 12:12

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

    بالتأكيد ، انك تعلمت سي++ وحاليا وقمت بكتابه بعض البرامج البسيطه .. ولكن الشئ الذي يقلقك ويشغلك هو انك سمعت من احد اصدقائك او من الاحد المحترفين ان "اغلب برامج الويندوز مكتوبه بالسي++" .. مثلا برنامج الماسنجر مكتوب بالسي++ ايضا برنامج الفوتوشوب وبرنامج 3 دي ماكس وو الخ .. اغلب البرامج ان لم تكن جميعها تكتب بالسي++ .. ايضا الالعاب اغلبها مكتوبه بالسي++ ..

    بالتأكيد ، هذا هو السؤال الذي تطرحه .. "كيف يمكن كتابه مثل هذه البرامج بالسي"++ ؟؟
    الجواب:
    عندما تعلمت سي++ ، تعلمتها تحت بئيه الكونسول Console Mode ، وهذه البرامج تعمل تحت الدوز (في الحقيقة محاكي للدوز) .. هذه البرامج لا تستطيع التعامل مع الفأره ، ايضا لن تستطيع التعامل مع الاحداث .. ايضا تسير تحت تسلسل واحد اي انك لن تستطيع عرض المخرجات كلها دفعه واحده .. بل عليك الانتظار حسب ما يؤديه برنامجك ...

    في الحقيقه ، تستطيع برمجه الفأره في هذه البيئه ، ولكن عليك ان تعمل تحت بيئه 16 بت وليس 32 بت ، ما معنى هذا الكلام ؟؟

    حسنا ، لتسهيل الامر عليك .. عندما تكتب برنامج ما وتترجمه باستخدام احد المترجمات مثلا بفيجول سي++ او بولاند سي++ او ديف Dev - C++ .. كل هذه المترجمات تنتج تطبيق كونسول ، ولكنه في الحقيقه تطبيق 32 بت ( الويندوز بدا من الاصدار ويندوز 95 اصبح 32 بت ، اما الاصدارات القديمه والدوز هي 16 بت) .... وعندما تستخدم بيئه 32 بت لن يمكنك استخدام مقاطعات الدوز التي يجب ان يكون التطبيق 16 بت ...

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


    هذه البرامج 32 بت كتبت بالسي او السي++ .. لكن باستخدام ما يعرف بواجهه برمجه التطبيقات Application Programming Interface واختصارا API (وايضا يطلق عليها win32 لانها تعمل داخل انظمه 32 بت ، قديما كان هناك win16 ولكنها اصبحت لاغيه ... الجدير بالذكر ، انه كل اصدار من هذه الدول API يتم اضافه دوال جديده ، ولكن مع الاحتفاظ باسامي الدوال القديمه كما هي وذلك لكي يستطيع المبرمجين القدامي الانتقال بسهوله الى البيئه الجديده ).

    ماهي هذهAPI ؟
    هي مجرد دوال موجوده في داخل ملفات تنتهي بالامتداد .dll وموجوده في مجلد النظام لديك (c:\******s\system) ... هي باختصار نظام التشغيل ويندوز ... مثلا عندما ترى مستطيل فاعرف انه تم استدعائه من هذه الدوال .. عندما ترى قائمه ،وو كل شيئ تقريبا ...

    حسنا ، عندما تستخدم هذه الدوال في برنامج تستطيع فعل ما تريد .. نعم ما تريد .. ويمكن استخدام هذه الدوال في اي لغه كانت سي ، سي++ ، فيجول بيسك ، وغيرها من اللغات . وفي الحقيقه عندما تتعامل مع اللغات ذات الوجهات مثلا دلفي او فيجول بيسك مثلا قمت برسم زر Command فهذه اللغه تستدعي الداول نيابه عنك لتسهيل الامر ..

    نعم لتسهيل الامر ، فالأمر ليس بهذه البساطه ، معرفه الدوال امر مستحيل وصعب للغايه .. لذلك اغلب البرمجين لن يستخدموا تللك الدوال لوحدها فقط .. لكن مع لغه البرمجه مثلا VB يمكنك استدعاء تلك الدوال عندما اللغه لا تستطيع على فعل شيء (مثلا فتح السيدي ، معرفه معلومات الجهاز) في هذه الحاله سوف تستخدمها ..

    عدد الدوال كبير جدا ، وفي حال اردت معرفه عمل داله معينه ، ببساطه افتح MSDN وهو موقع يحتوي على جميع الدوال .. ويمكنك تنزيله على شكل كتاب (تقريبا) ومن خلاله تستطيع معرفه اي داله وطريقه عملها ، بالاضافه الى مثال في بعض الدوال ..

    اذا اردت تعلم دوال API مع لغه سي (سي وليست سي++) .. هناك كتاب ******s Programming للمؤلف Petzold ، وهو كتاب يعلمك كيف ترسم اشكال ، قوائم ، تتعامل مع الماوس والكيبورد ، وغيرها من الكثير من المواضيع ، بل حتى يتعدى الاساسيات ويدخل مواضيع متقدمه في البرمجه مثل Multithreading و Memory Managment وغيره .. بالمناسبه البرمجه باستخدام هذه الطريقه غالبا ما يشار لها بالـ SDK -Style .


    من هنا ، قامت مايكروسوفت بعمل كلاسات Classes وكبسلت هذه الدوال في هذه الكلاسات .. واصبحت هناك مكتبه متكامله من الكلاسات وسمتها MFC وهي اختصار Microsoft Foundation Class اي ان التعامل معها بطريقه البرمجه الموجهه للكائنات Object Oriented Programming .. من هنا نستنتج انه لعمل برامج MFC يجب ان تكون ملم باساسيات السي++ بشكل جيد .. !!

    في فيجول سي++ ، تستطيع عمل برامج بكلا الانواع سواء Console او win32 او MFC وطبعا الاخيره مقتصره فقط على الفيجول سي++ .... وتستطيع استخدام win32 في اي نوع من الانواع ...

    لماذا اتعلم فيجول سي++ ؟

    اذا كنت تريد عمل برامج ذات واجهات Graphical User Inteface GUI
    اذا كنت تريد عمل تطبيقات انترنت وبرامج شبكيه Internet development, Network Programming
    اذا كنت تريد بناء وصول لقواعد البيانات data**** access، اذا كنت تريد عمل مكونات component technology
    وكنت تعرف في سي++ ، اذا عليك تعلمها ...

    كيف اتعلم فيجول سي++ ؟

    هذا يعتمد عليك اولا واخيرا ... فالمكتبه MFC مليئه جدا جدا .. ويصعب شرحها بشكل كامل .. هناك الكثير من الكتب المتوفره في هذا الموضوع (هناك كتب مترجمه موجوده في المكتبه ، لكنها غير كافيه) ، وفي حال اردت التعلم يجب ان يكون لديك على الاقل مرجع واحد تستطيع القرائه منه بشكل يومي ...

    والفتره التي يقولها اغلب المؤلفين انه لكي تحترفها عليك على الاقل سته شهور من القراءه والتطبيق المستمر اعلم انه شيء صعب كثيرا .. لكن للقوه ضريبتها ، فهي اقوى لغه لذلك عليك ان تستحملها ...


    ماهي الـQT ولماذا البعض يفضلها علىالـMFC ؟



    حسنا ، التطبيق الذي سوف تنتجه باستخدام mfc سوف يعمل فقط داخل انظمه ويندوز ... لانه مبني بالاعتماد على داول API كما ذكرنا .. وكل نظام تشغيل له دوال تختلف عن الاخر ..

    Qt ، هي مكتبه متكامله شبيه بال MFC ولكن مع فارق بسيط انها تعمل في داخل لينوكس وويندوز ... اي ان البرنامج المكتوب بها سوف يعمل بدون اي مشاكل في اللينكوس وحتى الماكنتوش لانها اصلا من لغات التطوير في لينكوس ..

    ايضا التعامل مع Qt اسهل كما ذكر البعض من انصار اللينكوس.

    حسنا ، ما هو الفيجول سي++ . نيت Visual C++.NET؟؟
    هو احدث الاصدارات من هذه البيئه .. على العموم لا اعرف الكثير عنها لكن تم وضع لغه جديده من السي++ وهي C++/CLI وهي لغه السي++ الخاصه بالدوت نيت !! ايضا كان هناك Managed C++ وهي اول سي++ في اول اصدار لدوت نيت ، لكن الان تم استبدالها بالـ C++/CLI .

    لماذا لا يكثر الحديث عنVisual C++.NET كما هو الحال معC# او جافا ؟؟
    لأن اكثر ما يدور حاليا لدى المبرمجين فهو بناء التطبيقات ، وفي هذه الحالة السي++ تخسر الكثير بسبب الصعوبه بعكس لغات vb.net او جافا ...
    اذا من اجل بناء تطبيقات عاديه ، لديك vb.net او c# او delphi
    من اجل بناء تكنلوجيا وانظمه كبيره جدا ، فجيول سي++ ، سي++ ، سي
    من اجل بناء برامج منخفضه المستوي ، فجيو ل سي++ ، سي ، اسمبلي

    منقوووووووووووووووووووووووووووووووووول Rolling Eyes Twisted Evil



    ا
    الرجوع الى أعلى الصفحة اذهب الى الأسفل
     
    ماهو الفيجوال سي ++؟؟؟
    الرجوع الى أعلى الصفحة 
    صفحة 1 من اصل 1
     مواضيع مماثلة
    -

    صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
    لا اله الا الله :: قسم لغات البرمجة :: الفيجول ++C-
    انتقل الى: