المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : نظرة عامة على لغة سي ++



طلال صعفق الحافظ
21-11-2001, 00:29
نظرة عامة على لغة سي ++


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

التطور التاريخي للغة سي :

ولدت لغة سي ونشأت وترعرعت في أحضان نظام يونيكس UNIX ، الذي صُمم في مختبرات شركة AT&T الأمريكية .

كتب نظام يونيكس أول ما كتب ، بلغة اتجميع Assembly لأجهزة PDP-7 ، ثم طوره الباحثان ثومبسون Thompson وريتشي Ritchie ليناسب أجهزة PDP-11 الأكثر تطوراً . وقد فضلت شركة Bell الأمريكية ، وغيرها من الشركات ، نظام يونيكس ، بسبب أنه قابل للنقل ، بين أنظمة التشغيل المختلفة (Portable) ، على عكس لغة التجميع المرتبطة بالمعالجات الدقيقة ، وغير القابلة للنقل .

في الوقت نفسه ، كان ثومبسون نفسه يطور بعض لغات البرمجة ، التي تناسب أنظمة تشغيل مختلفة ، ومن هذه اللغات : لغة ( Basic Combined Programming) BCPL التي صممها مارتن ريتشاردز Martin Richards فيكامبردج عام 1967، وهذه اللغة ، كانت قد انبثقت من لغة أخرى هي (Combined Programming Language ) CPL ، التي صممت في جامعة لندن في حوالي عام 1960م . وهذه الأخيرة ، استعارت بعض تعليماتها من لغة الجول 60 ( AGOL 60) . قام بعد ذلك ثومبسون بتطوير BCPL ، وسماها لغة B فقط . ومن الجدير بالذكر ، أن جميع هذه اللغات المذكورة آنفاً ، تعتبر كلغة التجميع ، لغات للآلة Machine Languages .

بعد ذلك ، قام ريتشي ، فأخذ من B أحسن تعليماتها ، وغير في كثير من قيودها ، وأضاف إليها تعليمات أخرى جديدة ، مثل أنواع المعطيات ، وماصفات التخزين ، وجعل منها لغة برمجة Software language كما هي لغة للآلة وسماها لغة C ( وهو حرف أبجدي متقدم عن الحرف B ) ، فولدت بذلك لغة سي عام 1972م ، على يد ريتشي نفسه ، في مختبرات AT&T الأمريكية .

وقد تطورت لغة سي ، بعد ذلك تطورات سريعة ، وأصبحت من أكثر لغات البرمجة شعبية وإقبالاً ، وذلك لسببين رئيسيين هما :

الأول : مرونة لغة سي ، فهي تصلح لكافة التطبيقات ، وتعطي المبرمج حرية التصرف ، على مستوى البرمجيات software أو الأجهزةhardware .

الثاني : شعبية وانتشار نظام يونيكس ، كنظام تشغل يكتب بلغة سي ، فهي تدعم نظام يونيكس ، وهو يدعمها .

وتعتبر لغة سي الآن ، من أشهر اللغات ، وأكثرها انتشاراً في الدول المتقدمة ، وبدأ المبرمجون ، من كافة الاختصاصات يكتبون برامجهم بها ، وعلى سبيل المثال ، لا الحصر ، ظهر كتاب [ برامج المايكرو كمبيوتر للمهندسين الكيميائيين ] عام 1987م عن دار ماجرو هيل الأمريكية ، مكتوباً من ألفه إلى يائه بلغة سي ، ومعنى ذلك أنه يفترض أن جميع المهندسين الكيميائيين في أمريكا يفهمون لغة سي ، ويتعاملون بها .

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

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

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

C++ و البرمجة الكائنية :-

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

1- التغليف و إخفاء البيانات :-

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

2- الوراثة و إعادة الاستعمال :-

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

3- التعددية الشكلية :-

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

موقع الجيل الصاعد

\r

المشرف العام
21-11-2001, 03:02
ماشاء الله عليك ..


فعلا ... لغه برمجه جبارة ..


هل هناك تطبيقات سهله لها.. ليسهل تعلمها ..


بمعنى أكثر وضوحا .. هل هناك مواقع عربيه تعلم هذه اللغه.


ولك تحياتي

طلال صعفق الحافظ
21-11-2001, 10:40
نعم توجد مواقع تعليميه..
أفضلها بالنسبة لي http://www.c4arab.com
وعلى طول مباشرة http://c4arab.com/showcat.php?cid=4




وانا راح أدور لكم وللجميع عن مواقع أخرى....هذا وعد



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