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


منتدى الزقم الحبيبة الى كل من يحب الزقم وولاية الوادي والجزائر ..غومة ايوب
 
الرئيسيةالبوابةأحدث الصورالتسجيلدخول

 

 ** لغة البرمجة ++c **

اذهب الى الأسفل 
كاتب الموضوعرسالة
riadh*bedir
كبير
كبير



عدد الرسائل : 1
العمر : 35
sms : مرحبا بك اخي العزيز ...نشكرك على المشاركة مزيد من التفوق يقول العدواني *العاقل من ادرك خبر غيره*..غومة ايوب
تاريخ التسجيل : 19/05/2008

** لغة البرمجة ++c ** Empty
مُساهمةموضوع: ** لغة البرمجة ++c **   ** لغة البرمجة ++c ** Icon_minitimeالأربعاء مايو 28, 2008 10:37 pm

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


++C....سي ++




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

تاريخ

طور بيارن ستروستروب (Bjarne Stroustrup), و الذي كان يعمل في مختبرات بيل, لغة السي++ في الثمانينات كتحسين للغة السي، تشمل السي++ جميع مزايا السي بالأضافة إلى مزايا البرمجة الكائنية، تسهّل لغة ++C الأسلوب المهيكل والمنهجي لعملية تصميم البرامج،وتعتمد على الكائنات كبنية أساسية لتشكيل البرامج.


و مثلها مثل لغة السى, فان السى++ هى لغة متعدده الاستخدامات الا انها مناسبة لبرامج أنظمة التشغيل. و تكتب معظم أجزاء أنظمة التشغيل و برامج مساعدة أنظمة التشغيل باستخدام السى++ و منها نظام جنو/لينكس.

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

بين السى و السى++

- تدعم السى++ السى بشكل كامل(نظريا أو هذا ما تقوله الشركات المنتجة للمترجمات) و عمليا يمكن لمعظم برامج السى أن تترجم بواسطة مترجمات سى++ و لهذا تسمى هذه المترجمات بمترجمات سى/سى++. - الا أن الأمر لا يخلو من بعض المشاكل غير المتوقعه, مثلا قد يحدث أن تسمى متغيرا باسم new و هى كلمة محجوزه في سى++ و ليست محجوزة في سى.

الجديد في سى++

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

و هذا بالاضافة إلى بضعة اضافات أخرى مثل :

- مكتبات جديدة لأداء مهام الادخال و الاخراج تعتمد على الكائنات.

- كلمة inline التى تضمن الاجراء الفرعى في الأساسى بدلا من استدعائه.

- استخدام الاشاره // لتضمين الملاحظات بطول سطر واحد.

سبب صعوبتها

ربما تعود أسباب صعوبة لغتى السى و السى++ لأسباب تاريخية أكثر منها واقعية و هو ما يردده المبرمجين المعتادين على استخدام السى++ و هذا يعود بنا إلى أصل لغة السى و هى لغة السى بى ال CPL و التى اشتهرت بشدة تعقيدها مما تسبب في ابتعاد المبرمجين عنها فتم تطويرها و تبسيطها إلى لغة سميت BCPL و لم تلقى الكثير من النجاح و لكنها تطوت إلى لغة البى B و عندما أرادو تطويرها سموها سى( و هذا هو أصل تسمية السى) ، و بالطبع ورثت السى++ خصائص لغة سى. الا أنه لا يمكن انكار أن مفاهيم مثل المؤشرات pointers ، و الاشارات هى مفاهيم مربكة للمبرمج المبتدىء ، بالضافة إلى مفاهيم التوارث Inheritance و تعدد الشكل polymorphism و القوالب Templates التى تربك حتى المبرمجين المحترفين. و كذلك لا تقدم سى++ الحماية الكافية للمبرمج كى لا يقع في أخطاء التشغيل التى قد تتسبب في توقف الحاسوب عن العمل. كيف؟

فى لغة الفيجوال بيسك مثلا عندما تحدد مصفوفة بحجم 20 عنصرا مثلا كلأتى :

Dim A(20) As Integer

ثم تحاول معالجة العنصر رقم 21 مثلا فسوف يبادرك محرك الفيجوال بيسك برسالة خطأ و يتوقف برنامجك. أما في السى++ فاذا عرفت مصفوفة بنفس الحجم : int a[20] // integer a from 0-19 not from 0-20 و عندما تحاول الوصول إلى العنصر رقم عشرين مثلا تكون قد تعديت حدود المصفوفة إلى جزء من الذاكرة ربما تكون مخصصة لبرنامج أخر أو معلومات حساسة لنظام التشغيل. و المشكلة الأخرى التى تربك الكثيرين أن أول عنصر بالمصفوفة هو 0 و ليس 1 و حجمها 20 أى أن العنصر الأخير هو 19 و ليس 20 مثل البيسك.
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
** لغة البرمجة ++c **
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

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