منتديات البرنس المصرى

اهلا بك زائرنا الكريم
منتديات البرنس المصرى ترحب بكم ويشرفها ان تنضم الى اسرة المنتدى
منتديات البرنس المصرى

egyption prince

منتديات البرنس المصرى ترحب بالاعضاء الجدد وتتمنى لكم قضاء وقت ممتع

    اساسيات فى لغات البرمجة

    شاطر
    avatar
    SHADOW
    مشرف المنتدى الترفيهى
    مشرف المنتدى الترفيهى

    عدد المساهمات : 601
    تاريخ التسجيل : 05/09/2010
    العمر : 25

    اساسيات فى لغات البرمجة

    مُساهمة من طرف SHADOW في الجمعة سبتمبر 17, 2010 10:03 am

    بســـــــــــــــم الله الرحمن الرحيم


    أساسيات السى ( c) :. والبرمجة الهيكلية فى صورة اسئلة واستفسارات اتمنى حسن الاستفادة للجميع


    س: تعتبر لغة سي++ من أقوى اللغات لغات البرمجة، نرجو منكم القاء الضوء على تاريخ هذه اللغة.
    بسم الله والصلاة والسلام على رسول الله. بنيت لغة سي ++ على أساس لغة سي وتعتبر كامتداد وتوسع لها. ولذا فهي تحتوي على كل إمكانيات سي. وتمثل لغة سي++ جماليات الفن للغات البرمجة الحالية. كا إن توفر هذه اللغة على أجهزة الحاسب الصغيرة والكبيرة لتدريسها أو استخدامها كأداة في حل المسائل وتمثيل القواعد والمفاهيم جعلها لغة شائعة الصيت. وتعتبر هذه اللغة لغة المحترفين حول العالم. ويمكن برمجة جميع خواص ومميزات البرمجة الكينونة باستخدام لغة سي++. وتتميز لغة سي++ بقابليتها على معالجة التطبيقات الكبيرة والمعقدة وكذلك القوة في صيانة البرامج المكتوبة مما يوفر وقتاً في التصميم والإضافات الضرورية على البرامج وتطويراتها. عموماً يمكن تلخيص أهم مميزات لغة سي++ هو توفرها، سهولة فهمها وتعليمها، قدرتها على توسيع التطبيقات القديمة. كما إن لغة سي++ تدعم آليات وتقنية الكينونات (Objects)، الكيانات (Classes)، إعادة الاستعمال (Reusability)، الإخفاء (Encapsulation)، والوراثة (Inheritance) و التعددية (Polymorphism).

    س: تُعد لغة سي++ من اللغات التي تعتمد على البرمجة الكينونية Object-Oriented Programming
    وربما يكون هذا من أهم الفروق بينها وبين لغة سي، هلا أوضحت لنا معني البرمجة الكينونية وإستخداماتها لإزالة اللبس أمام المبرمجيين المبتدئيين حول هذه النقطة.

    نعم فهذا سؤال جيد. كما تعلم لقد أصبحت التطبيقات تكتب بملايين الأسطر التي تحتوي على التعليمات الأمر الذي أدى إلى مضاعفة عدد المحللين، المصممين، والمبرمجين مما أدى إلى زيادة أجور التكلفة، كل ذلك ساهم في ظهور لغات البرمجة الكينونية. تختلف لغات البرمجة الكينونية عن التّقاليد المعروفة للبرمجة الهيكلية. هناك عدة عوامل مهمة ميزت لغات البرمجة الكينونة عن لغات البرمجة الهيكلية منها: أولاً: إن البرامج في البرمجة الكينونية عبارة عن مجموعات من وحدة أساسية هي الكينونة، والتي تجمع بين البيانات والدوال التي تعمل على هذه البيانات. ثانياً، على خلاف البرمجة التّقليدية، التي تستعمل إجراءات على مجموعة منفصلة من البيانات القابلة للتأثيرات الخارجية، إن الكينونة تستلم طلبات وتتفاعل بإرسال رسائل بين بعضها البعض. إن لغات البرمجة الكينونية تدعم آليات وتقنية الكينونات، الكيانات، الدوال (الرسائل)، إعادة الاستعمال، التوسع في التطبيقات، الإخفاء، التعددية، والوراثة. وحيث ان لغة سي لا تُدعم هذه المفاهيم فهنا أتت الحاجة إلى لغة قوية تُدعم هذه المفاهيم وهي لغة سي++ والتي تعتبر امتداد وتوسع للغة سي.

    س: يعتقد الكثير ان لغة سي++ لغة صعبة التعلم، بلإضافة الى اننا نلاحظ قلة المبرمجين بها على المستوى العربي، خيث يتجه الكثير الى لغة فيجول بيسك ماذا تريد ان تقول للمبرمجين المبدئين والمحترفين حول هذه النقطة. وبماذا تنصح من اراد ان يتعلم لغة سي++، وما هي أسرع وأفضل الطرق.

    الاعتقاد بأن سي++ لغة صعبة التعلم غير صحيح بل على العكس اعتقد إن تعلم لغة سي++ للمبتدئين اسهل من تعلم لغة سي وذلك لعدة أسباب منها إن لغة سي++ منظمة، قواعد لغتها مرنة ويمكن احتوائها بسرعة. غير انه لابد من اقتناء الكتب والمراجع واستعمال نظام التعليمات التابع للغة لفهمها أكثر والحصول على معلومات تساعد في إنجاز البرامج بدقة
    وسرعة. والسبب في قلة المبرمجين بلغة سي++ إن تطوير البرامج ينقسم إلى قسمين وهما البرامج التطبيقية (user applications) وبرامج الأنظمة (system applications). عادة ما تستخدم لغة سي++ في تطوير التطبيقات العلمية والعملية وبرامج تطوير الأنظمة مثل تطوير المترجمات (compilers) وأنظمة التشغيل (operating systems) وغيرها، وتطوير مثل هذه البرامج قليل جداً في عالمنا العربي ولذا يتجه كثير من المبرمجين إلى القسم الأخر من التطبيقات باستخدام لغات تطوير البرامج التطبيقية مثل لغة فيجول بيسك لتطوير البرامج التطبيقية الشائعة الاستعمال في عالمنا العربي. كما ذكرت في عالمنا العربي لا يمكن الاستغناء عن لغة فيجول بيسك لذا انصح المبتدئين بتعلم اللغتين لتنوع استخداماتهما. أما المحترفين فأنصحه بأن يبدأ باستخدام مايكروسوفت فيجول سي++ (Microsoft Visual C++) في تطوير البرامج حيث إن تطبيقاتها 32 بيت (32 bit applications)، مما يؤدي إلى سرعة تنفيذ البرامج، تنوع واجهة التطبيق الراسمة (GUI)، وضوحها، ودقتها واعتقد انه باستخدامها سوف يلاحظ الفرق.

    س: الجافا لغة جديدة متفرعة من لغة سي++، ما هي الحاجة بوجهة نظركم إلى هذه اللغة الجديدة، وما هي تطبيقاتها وبما انها متفرعة من لغة سي++، الم تكن سي++ كافية لعمل هذه التطبيقات بدل من إنشاء لغة جديدة. وبمذا تختلف هذه اللغة عن لغة سي++
    لكل لغة تطبيقاتها الخاصة بها فلغة كوبول (Cobol) خاصة بالتطبيقات بالأعمال التجارية ولغة برولوق (Prolog) خاصة بتطبيقات الذكاء الاصطناعي وهكذا. ووجود لغة جديدة مثل الجافا لا يلغي أو أن نستغني عن الأخرى. وبالرغم من إن لغة "جافا" جديدة ولكن لا يزال الكثير من المبرمجين المحترفين متمسكين في تطوير البرامج بلغة سي++. ولا نزال نرى الكثير من التطبيقات الموجودة في الولايات المتحدة الأمريكية وغيرها يتم تطويرها باستخدام لغة سي++. وبالرغم من إن لغة سي++ ليست لغة برمجة كينونية خالصة مثل لغة جافا والتي تعتبر لغة برمجة كينونية خالصة (Pure object-oriented programming) ولغة جافا ليست متفرعة من لغة سي++ ولكنها تتبنى كثير من قواعدها ومفاهيمها. واهم الفروق بين لغة جافا ولغة سي++ إن لغة جافا لها القدرة على العمل على أي نظام تشغيل وهي فكرة قديمة جديدة، بمعنى إن لغة يو سي اس دي باسكال UCSD Pascal والتي استخدمت قبل 15 سنة في تطوير البرامج كان لها نفس الفكرة وهو العمل على أي نظام تشغيل ولكن هذا مع الأسف لم يساعدها على الانتشار والاستمرار. لكن الذي ساعد لغة جافا على الانتشار وجود الإنترنت حيث إن كثير من التطبيقات المستخدمة في الإنترنت استخدمت لغة جافا في تطويرها. أما في تطوير برامج الأنظمة والبرامج العملية والعملية فأعتقد انه سوف يستمر العمل في تطوير هذه الأنظمة باستخدام لغة سي++ ولغة فيجول سي++ على الأقل عشر سنوات للمستقبل.

    س: قرأت في مقالة في أحد الجرائد لأحد الكتاب العبارة التالية "نحن قلبنا المعادلة في العرض والطلب، في الولايات المتحدة الامريكية يستوردون المبرمجين لتوفر الوظائف لهم، بينما لا يجد المبرمجين ذوي المؤهلات العالية وظيفة في الخليج" ما هو تعليقك على هذا الموضوع.
    أولا المؤهل العالي وحده لا يكفي في مجال الحاسب الآلي لا بد من الخبرة. ومع احترامي لرأي صاحب هذه العبارة فالشق الأول صحيح ولكن الشق الثاني فيه مبالغة كبيرة فأنا لم أرى مبرمج أو محلل نظم ذو مؤهل عال غير موظف أو لم يجد له وظيفة أو عاطل عن العمل بل على العكس أعرف مهندسين ومبرمجين غيروا أو تحولوا من عملهم لوجود فرصة افضل وأحسن ويمكن أن أعطيك أسماء إذا أردت، قد يكون هناك البعض ولكنهم لا يشكون القاعدة. وبالرغم من ذلك أقول نعم إن الولايات المتحدة الأمريكية استقطبت العديد من المبرمجين ومحللي النظم لعدة أسباب أهمها الراتب الممتاز حيث إن معدل الراتب السنوي للمبرمج أرتفع من 36.000 إلى 51.000 دولار ولكن لاحظ هنا ولله الحمد، قامت المملكة العربية السعودية بزيادة راتب أساتذة الجامعات ممن يعملون في مجال الحاسب الآلي أو من له علاقة بذلك والمبرمجين والمحللين بمقدار 25% من أصل الراتب. كما انه يتم تعين المبرمج أو محلل نظم على المرتبة السابعة الدرجة الرابعة كأول مربوط له. وبالرغم من إننا نطمح في المزيد حيث إن هذا لا يوازي ما يُدفع في الولايات المتحدة الأمريكية ولكنهم هناك يدفعون ضرائب وهذا لا يوجد عندنا ولله الحمد. من ناحية أخرى ألاحظ إن هناك تقصير واضح من الشركات وأصحاب رؤوس الأموال للاستثمار في هذا المجال فأنا لا أرى شركات كبيرة تقوم بالمنافسة في تصميم وكتابة البرامج، سوى بعض الشركات الصغيرة والتي تقوم بعمل بعض البرامج الصغيرة كالألعاب وغيره. وكما ترى أكثر هذه البرامج غير عملية وتصميمها غير فعال وذلك بسبب استخدام لغات برمجة تفتقر إلى السرعة والأداء الجيد. ولهذا أرى على المحترفين التحول إلى استخدام لغة فيجول سي++ لقوتها ووضوح واجهة التطبيق الراسمة لتطبيقاتها وسرعة أدائها. كذلك يجب على الشركات وأصحاب رؤوس الأموال الاستثمار في مجال البرمجيات وتوظيف الكوادر المؤهلة وتدريبهم بشمل دوري. كذلك يُفترض من الشركات دعم الأبحاث وتبنيها فهذه الشركات مقصرة جداً في هذا الموضوع حيث إنه يعتبر صدمة وخيبة أمل أن يكون معدل دعم الشركات للأبحاث هو 1% بينما تدعم الحكومة 99% من هذه الأبحاث. وبمقارنة هذه النسب نجد إن بعض الدول يكون دعم الشركات للأبحاث هو 85% بينما تدعم الحكومة 15% فقط. أرجو من الله العلي القدير التوفيق لنا ولجميع المسلمين انه نعم المولى ونعم النصير.

    Read more: http://www.ninjawy.com/showthread.php?t=12472#ixzz0zlul2AEW


    ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
    avatar
    احمد اسماعيل
    مشرف المنتدى القانونى
    مشرف المنتدى القانونى

    عدد المساهمات : 529
    تاريخ التسجيل : 05/09/2010
    العمر : 41
    الموقع : avo_ahmed@hotmail.com

    رد: اساسيات فى لغات البرمجة

    مُساهمة من طرف احمد اسماعيل في الجمعة سبتمبر 17, 2010 1:32 pm

    موضوع مفيد فعلا للمتخصصين
    شكرا لك على النشاط الواضح ربنا يخيلك لينا يا طارق باشا
    avatar
    SHADOW
    مشرف المنتدى الترفيهى
    مشرف المنتدى الترفيهى

    عدد المساهمات : 601
    تاريخ التسجيل : 05/09/2010
    العمر : 25

    رد: اساسيات فى لغات البرمجة

    مُساهمة من طرف SHADOW في الجمعة سبتمبر 17, 2010 7:29 pm

    merci for watch Very Happy Embarassed


    ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
    avatar
    tiger

    عدد المساهمات : 29
    تاريخ التسجيل : 16/09/2010
    العمر : 31

    رد: اساسيات فى لغات البرمجة

    مُساهمة من طرف tiger في الجمعة سبتمبر 17, 2010 9:54 pm

    موضوع كويس بس كلامه صعب شوية محتاج متخصص زى ما قال الاستاذ الموضوع اللى قبله اسهل
    avatar
    SHADOW
    مشرف المنتدى الترفيهى
    مشرف المنتدى الترفيهى

    عدد المساهمات : 601
    تاريخ التسجيل : 05/09/2010
    العمر : 25

    رد: اساسيات فى لغات البرمجة

    مُساهمة من طرف SHADOW في الجمعة سبتمبر 17, 2010 10:39 pm

    شكرا على ارائكم Very Happy


    ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

      الوقت/التاريخ الآن هو الثلاثاء أغسطس 21, 2018 9:59 pm