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

سبقت لغة C العديد من لغات البرمجة المختلفة لأغراض مختلفة ، لعل أبرزها كانت Pascal و FORTRAN و COBOL ، وحافظ بعضها على مرتبتها وأهميتها حتى بعد ظهور لغة C ، واختفى البعض الآخر وفقًا لاستخداماتها وإيجابياتها وسلبياتها. دعونا أولاً نتحدث عن لغة باسكال.
تم إطلاق لغة باسكال في عام 1970 وسميت على اسم الفيزيائي الشهير "بليز باسكال". تم إنشاؤها كلغة تعليمية لاستخدامها في المدارس والجامعات ، ولكن سرعان ما تم استخدامها على نطاق واسع. موجه للكائنات وضرورة تحديد جميع المتغيرات التي تريد استخدامها في بداية الكود المصدري والمشكلات الأخرى التي تحدث عنها Brian Kernighan ، أحد العقول وراء UNIX وتطوير لغة C ، في مقالته.
ثم جاءت لغة أوبجكت باسكال ، وهي تطور على باسكال وتحسن في بعض النقاط في عام 1985 ، بالإضافة إلى لغة دلفي في عام 1983 ، والتي بنيت على تيربو باسكال وتم توجيهها إلى الشركات بشكل أساسي ، الأمر الذي أغضب بعض المطورين وأبعدهم. في ذلك الوقت وفي عام 1972 تم إطلاق لغة C لأول مرة ، والتي قدمت حلولًا للعديد من المشكلات التي تعاني منها لغة باسكال ، وكما ذكرنا سابقًا ، تم إطلاق Object Pascal و Delphi في محاولة للحفاظ على هذه اللغة ولكن فات الأوان لذلك!
لكننا لا نقول هنا أن لغة سي ألغت بالضرورة جميع لغات البرمجة التي سبقتها. على سبيل المثال ، لا يزال FORTRAN مستخدمًا على نطاق واسع في المجتمع العلمي ، حيث أنه سهل الاستخدام في هذا المجال بفضل وجود مجموعة كبيرة من المكتبات ويتميز بنفس سرعة التنفيذ مقارنة بـ C. كان آخرها في عام 2018 ، لغة أخرى لا تزال مستخدمة حتى يومنا هذا هي COBOL ، خاصة في مجال البنوك والمحاسبة. وفقًا لإحصائية واحدة ، تم بناء 43 بالمائة من الأنظمة المصرفية في الولايات المتحدة الأمريكية على COBOL.
رحلة تطوير لغة C
كانت بدايات لغة C في Bell Labs في أوائل السبعينيات ، حيث تم تطوير هذه اللغة وفقًا لما ذكره "Denis Ritchie" - مبتكر لغة C - في ورقته البحثية حول تطوير لغة C من أجل العثور على لغة للتعامل مع نظام UNIX (UNIX) ، وهي مشتقة من لغة BCPL تم إنشاء لغة BCPL بهدف إنشاء لغة برمجة قابلة للنقل عند التجميع بين الأجهزة والأنظمة المختلفة ، وتكون صغيرة الحجم بحيث لا يتجاوز حجم الملف 18 كيلو بايت بعد التجميع.
ثم قام دينيس وبالتعاون مع زميله في مختبرات بيل "كين طومسون" بتطوير لغة B ، ولكن للأسف لم يتم تبني لغة B لأنها كانت بطيئة ، لذلك جاء دينيس من بعده وقام بتعديلها لتصبح لغة C نعلم اليوم ، بحلول عام 1973 ، وصلت اللغة C إلى مرحلة مستقرة ، مما سمح بإمكانية إعادة كتابة نواة UNIX لجهاز الكمبيوتر PDP-11 ، مما ساعد على اعتماد لغة C على نطاق عالمي ، وقد حدث هذا بالفعل ، في في عام 1988 ، شكل المعهد الوطني الأمريكي للمعايير (ANSI) لجنة لتحديد معايير C المعيارية التي تم دعمها لاحقًا على معظم المجمعين.

تم استخدام C أيضًا في برمجة معظم نواة Linux (Linux) ، وتمت برمجة معظم أطر قواعد البيانات جزئيًا في C ، مثل Oracle Database و MySQL و MS SQL Server و PostgreSQL ، بالإضافة إلى أن معظم اللغات عالية المستوى تعتمد على C بطريقة أو بأخرى. على سبيل المثال ، يعتمد مترجم بايثون على لغة سي.
ثم قام دينيس وبالتعاون مع زميله في مختبرات بيل "كين طومسون" بتطوير لغة B ، ولكن للأسف لم يتم تبني لغة B لأنها كانت بطيئة ، لذلك جاء دينيس من بعده وقام بتعديلها لتصبح لغة C نعلم اليوم ، بحلول عام 1973 ، وصلت اللغة C إلى مرحلة مستقرة ، مما سمح بإمكانية إعادة كتابة نواة UNIX لجهاز الكمبيوتر PDP-11 ، مما ساعد على اعتماد لغة C على نطاق عالمي ، وقد حدث هذا بالفعل ، في في عام 1988 ، شكل المعهد الوطني الأمريكي للمعايير (ANSI) لجنة لتحديد معايير C المعيارية التي تم دعمها لاحقًا على معظم المجمعين.

تم استخدام C أيضًا في برمجة معظم نواة Linux (Linux) ، وتمت برمجة معظم أطر قواعد البيانات جزئيًا في C ، مثل Oracle Database و MySQL و MS SQL Server و PostgreSQL ، بالإضافة إلى أن معظم اللغات عالية المستوى تعتمد على C بطريقة أو بأخرى. على سبيل المثال ، يعتمد مترجم بايثون على لغة سي.
أين لغة C اليوم؟ وأين يتم استخدامه؟
حافظت لغة C على مرتبتها رغم وجود لغات برمجة قوية ومتقدمة ظهرت بعدها ، مثل Python و Java وغيرها ، نظرًا لبعض خصائصها ، بما في ذلك سرعة تنفيذها ، وقدرتها على العمل على الجميع. المنصات والأجهزة (قابلية النقل) واحتوائها على هياكل بيانات مختلفة مبنية في مكتبتها الأساسية ، ونتيجة لذلك ، تباينت استخدامات لغة C ، بما في ذلك:
برمجة النظم المدمجة (Embedded Systems)
تعد لغة C خيارًا ممتازًا عند برمجة الأنظمة المضمنة لأنها تعتبر لغة متوسطة المستوى وبالتالي فهي قريبة من لغة الآلة وفي نفس الوقت ، من السهل التعامل معها مقارنة باللغات منخفضة المستوى مثل التجميع و نعني هنا بالأنظمة المدمجة أي نظام يحتوي على وحدة معالجة مثل Microcontrollers وغيرها.
برمجة نُظم التشغيل (Operating Systems)
من المنطقي جدًا أن تشمل استخدامات لغة C برمجة أنظمة التشغيل ، حيث تمت برمجة أول نظام تشغيل في العالم معها - UNIX - بالإضافة إلى نظام Windows بعده وجزء من نظام Android ، حيث إنه على أساس نواة لينكس.
برمجة لغات البرمجة (Programming Languages)
كما يعلم العديد من التقنيين ، اعتمدت ++C على C ، لكنها ليست اللغة الوحيدة في ذلك. اعتمدت كل من Java و #C و Perl و PHP و Python عليها ، أو على الأقل ألهمت وأخذت بعض مبادئها أو طريقة كتابتها (بناء الجملة).
برمجة الألعاب وتطويرها (Game Development)
نظرًا لسرعة تنفيذ الأكواد المكتوبة بلغة C ، فهي تعتبر من أبرز اللغات المستخدمة في صناعة وبرمجة الألعاب نظرًا للحاجة في هذا المجال إلى العمليات الحسابية والأوامر ، لذا فإن عامل السرعة شديد الأهمية. مهم ، وقد تم بناء مجموعة من محركات اللعبة بناءً على لغة C ، مثل محرك Jedi ومحرك Allegro Build وغير ذلك الكثير ، بالإضافة إلى محركات الرسوم مثل Blender.
برمجة البرامج والمنصّات الحسابيّة (Computational Platforms)
أدت سرعة لغة C ومكاتبها الواسعة والمتعددة في مجال الحساب والرياضيات إلى استخدامها في العديد من المنصات الحسابية ، مثل Wolfram Mathematica و MATLAB.
هل سبق لك أن تعلمت أو برمجت مشروعًا باستخدام لغة سي؟ ما هي المزايا التي لاحظتها من خلال استخدامك لهذه اللغة وتفاعلك معها؟ شارك تجربتك مع هذه اللغة في التعليقات!

إرسال تعليق