عرض القائمة الرئيسية


جاري تحميل أقسام المنتدى




مساحة إعلانية
  1. [C] مدخلك إلى عالم C : مقال شامل عن اللغة ( معلومات , خصائص , مكتبات .. )

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



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


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





    متطلبات الدرس



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



    تابع الدرس أخـي

    ماهي لغة C ؟
    هي لغة برمجة عالمية وقوية منخفضة المستوى ومتعددة المنصات, تم تطويرها ما بين 1969 و 1973 على يدي عالم الحاسوب الأمريكيدينيس ريتشي (
    Dennis Ritchie ) وساعده فيها كين تومسن( Ken_Thompson) وتم ذلك فيمختبرات بيل ( Bell Labs ) المتواجدة بنيوجرسي بالولايات المتحدة الأمريكية والمسماة نسبة للعالم الإسكتلندي مخترع الهاتف جراهام بيل ( Graham Bell )



    وقد تم تطوير لغة سي ( C ) انطلاقا من لغة البي (b ) التي بدورها مبرمجة بلغة BCPL

    تم برمجة لغة السي خصيصا لتطوير نظام التشغيل
    يونيكس ( Unix )

    تختلف عن لغة C++ في أن الأخيرة أكثر سرعة وتعتمد البرمجة كائنية التوجه ( OOP ) إضافة إلى خصائص أخرى
    لكن لغة السي تبقى ذات أهمية كبيرة ومستعملة لحد الآن على نطاق واسع وتحتل المراتب الأولى عالميا في ترتيب اللغات الأكثر استعمالا


    كيف نشأت اللغة ؟

    حوالي سنة 1972 خرجت لغة السي لهذا العالم بعد أن قام بتطويرها عالم الحاسوب الأمريكي دينيس ريتشي رفقة كين تومسن وقد نشأت اللغة انطلاقا من عدة لغات قبلها وهي لغة B ولغة BCPLالمنتمية لها
    بحيث نشأت الأخيرة سنة 1966 على يد مارتن ريتشاردز من جامعة كامبريدج البريطانية ثم ظهرت بعدها لغة البي المطورة عنها سنة 1969 في مختبرات بيل وعلى يدي عالمي الحاسوب الأمريكيين دينيس ريتشي وكين تومسن اللذان وفي سنة 1972 وفي نفس المكان قاما بتطوير وإخراج لغة السي للعالم وكان ذلك عام 1972


    بعدها بـ 11 سنة خلف لغة السي لغة مطورة عنها تدعم البرمجة كائنية التوجه أسرع وأقوى منها حيث كان ذلك عام 1983 في مختبرات بيل أيضا وهاته المرة تم تصميم اللغة من طرف بيارن ستروستروب من المنظمة العالمية للمقاييسISO وقبل سنة من الآن وافقت الأخيرة على آخر التطويرات التي وصلت إليه اللغة وهي C++11 والتي لا يسعنا الحديث عنها الآن
    كما أن المواضيع التي تتحدث عنها منعدمة في عالمنا العربي ولذلك قررت أن أكتب عنها لاحقا مقال أو عدة مقالا للتعريف بها
    حتى لا نكون متأخرين كثيرا عن الغرب
    هناك لغة أخرى تم تصميمها انطلاقا من
    C++/Cتتشابه في مفاهيم عديدة لكنها لا تطابق اللغتين كما تختلف عنهما في الشيفرة
    وهناك أيضا لغة
    JAVAالتي تم تصميمها انطلاقا من C++ في مختبرات صن ميكروسيستمز


    عموما كل ما ذكرته من مراحل تطور لغة السي واللغات التي قبلها والتي بعدها هاقد وضعت لك كل ذلك أخي في هاته الصورة بشكل ملخص جدا


    اضغط على الصورة لعرض أكبر. 

الإسم:	-progwd.png 
مشاهدات:	2163 
الحجم:	11.2 كيلوبايت 
الهوية:	55190




    لغات تأثرت بها لغة C ؟
    تأثرت السي بعدة لغات سأذكر بعضها وهي :




    لغات أثرت فيها لغة C ؟
    على غرار لغة
    C++ المطورة عنها فإن هناك لغات عديدة تأثرت بلغة السي أو تم تطويرها بواسطتها
    وفي القائمة التالية أذكر بعض هاته اللغات :



    إضافة إلى كل هاته اللغات هناك لغات أخرى أثرت في لغة السي كـ CPL ,PL/I, ALGO68
    وأثرت في لغات أخرى لم يتم ذكرها نظرا لكونها غير مستعملة على نطاق واسع كـ AMPL , AWK , CSH , C-- , BitC , GoLimbo , LPC , Pike ,Processing
    صيغ ملفات السي C ؟
    هناك نوعان من صيغ الملفات الخاصة بلغة C, وهي :
    ملفات الهايدر (Header File) وصيغتها هي (.H أو .h) مثال (main.h)
    ملفات ذات الصيغة (.C أو .c) مثال (main.c)
    والصيغ نفسها موجودة أيضا في لغتي
    C++/Objective-C


    ما الشيء المهم في لغة C ؟

    - اللغة مستعملة أو مساهمة في برمجة أنظمة التشغيل :Unix/Plan 9/Inferno/Singularity/Android
    - أنها تسهل عملية التعامل مع موارد النظام ومختلف أجهزة الهاردوير والذاكرة وغيرها
    - تمكن وتسهل من التعامل مع الملفات وقواعد البيانات
    - تتعامل مع عدد كبير من قواعد البيانات
    - يمكن ربطها مع عدد كبير من مكتبات الجرافيك والصوت والواجهات وغيرها كـ DirectX/OpenGL/Framework
    - سريعة في التعامل مع الجهاز وموارد النظام
    - برمجة تطبيقات باستعمال C قد يحتاج أكواد أكثر ومدة أطول للوصول إليها بلغات أخرى كـ Visual Basic مثلا
    - لغة السي متعددة المنصات .. فهي متوافقة مع نظام Unix/Windows/Mac OS


    مجالات استخدام لغة السي C ؟
    لغة السي يمكن أن نقول أنها عامة وتشمل كل المجالات ويمكن أن تستعمل في الوصول لأي تطبيق
    وفي مختلف أنظمة التشغيل حتى الموجودة على الهواتف الذكية وكذلك منصات أجهزة الألعاب كـ XBOX/PS
    فيمكن برمجة برامج وتطبيقات وألعاب للحاسب ومنصات الألعاب وحتى للهواتف الذكية

    مكتبات مستعملة في السي C ؟
    هناك مكتبات عديدة تختلف حسب اختلاف مهامها ووظائفها
    فهناك من بين المكتبات المعروفة والمشهورة في اللغة


    • ( مكتبة stdio.h ) نستدعيها لنتمكن من استعمال دوال الإدخال والإخراج
      • printf لطباعة وإظهار نص
      • scanf لتخزين قيمة في متغير
      • fopen لفتح ملف معين
      • fread لقراءة ما بداخل الملف
      • fwrite للكتابة داخل ملف
      • fclose لإغلاق الملف المفتوح


    • ( مكتبة math.h) لاستعمال الدوال الرياضية
      • abs إعطاء القيمة الصحيحة لعدد
      • sqrt حساب الجذر التربيعي
      • pow حساب أس العدد

    للمزيد من الدوال : دوال رياضية لمكتبة math لغة C








    • ( مكتبة time.h ) لإعطاء الوقت والتاريخ نذكر منها
      • clock إعطاء التوقيت منذ بدء البرنامج بالعمل
      • time إعطاء الوقت الحالي حسب نظام التشغيل
      • difftime لحساب وإعطاء الفرق بين الأوقات


    للمزيد من الدوال : دوال لإعطاء الوقت والتاريخ مكتبة time لغة C




    هناك مكتبات أخرى كمكتبة string/float وغيرها
    للمزيد : مكتبات أخرى تابعة للغة C

    هل لغة السي متعددة المنصات ؟
    - بالفعل لغة C متعددة المنصات تدعم Unix/Windows/Mac OS
    وتدعم أنظمة تشغيل أخرى كثيرة كالمذكورة في الأعلى

    كيف يمكنني أن أبرمج على بيئة السي ؟
    لتكون مبرمجا بلغة C ولعمل تطبيقات عليها
    يجب أن تتوفر على بيئة توفر لك ذلك
    هناك برامج عديدة تتيح ذلك , منها
    Microsoft Visual Studio
    CodeBlocks
    Notepad++
    NetBeans
    Embarcadero Delphi


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


    تحميل برنامج Codeblocks مترجم السي ( C Compiler )


    روابط خارجية
    لغة السي (ويكيبيديا)
    مترجم جنو للغة سي
    كتاب The C Programming Language
    بعض أشكال الدوال في لغة C
    فهرس شامل عن لغة C/C++


    كتابي The C Programming Language الأول والثاني
    من تأليف دينيس ريتشي مع براين كيرنيجان ويعدان أول كتابين يشرحان اللغة


    للتحميل
    الإصدار الأول | الإصدار الثاني

    إلى هنا بحول الله أكون قد انتهيت وقد كانت هاته مقدمة متواضعة عن لغة السي
    وإن شاء الله سأضع الدرس في كتاب PDF لتعم الفائدة أكثر


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

    نسأل الله لنا ولكم التوفيق ونلتقي في درس آخر بإذن الله

    تابع الدرس أيضا على مدونتي : عالم البرمجة









    محمد فلاك
    عالم البرمجة





    الصور المرفقة  
    PC ARTS SCHOOL
    C O M I N G S O O N
    • تعديل / حذف

  2. الصورة الرمزية AboHitham Level: 80
    أسلوب طرح ممتاز ومعلومات قيمة

    ببساطة مقال متكامل بارك الله فيك


    أخلص النية لله وإن شاء الله تكون صدقة جارية لك.


    بارك الله في علمك ونفع بك.
    • تعديل / حذف

  3. الصورة الرمزية PcArtsSchool Level: 7
    السلام عليكم ورحمة الله
    جزاكم الله خيرا أخي الفاضل

    إن شاء الله تقبل النية لله فتكتب لنا الصدقة الجارية
    شكرا مجددا
    • تعديل / حذف

  4. الصورة الرمزية saleemsaleem Level: 7
    جميل جدا والله استفدت من هذا الدرس ويارب تكمل

    استفسار

    ماهي اللغة المستخدمة في برمجة موقع الويكبيديا والفيسبوك والجوجل احب افهم ايش من لغات وليش ؟
    • تعديل / حذف

  5. الصورة الرمزية PcArtsSchool Level: 7
    مرحبا بك أخي .. هناك عدة دروس أخرى طرحتها .. يمكنك تصفح قائمة مواضيعي وهي في مجال البرمجة
    وأي سؤال يمكنك طرحه وفي أي وقت

    بالنسبة للغات البرمجة .. فيجب أن تعرف أن هناك أكثر من لغة واحدة .. ولكل لغة وظيفة محددة

    فمثلا :

    HTML للعرض والمظهر
    CSS/jQuery لتنسيق وتنظيم هذا المظهر وإعطاءه صيغة جمالية
    JavaScript/Ajax/jQuery لإعطاء ديناميكية وحركية للموقع
    Php/Asp للتعامل مع السيرفر وعمل تطبيقات وإرسال واستقبال معلومات

    ما ذكرتها يضم لغات وتقنيات ومكتبة .. مثلا PHP/ASP لغتا برمجة
    CSS يمكن أن نطلق عليها إسم تقنية .. فهي ليست بلغة
    jQuery عبارة عن مكتبة

    وهاته اللغات تتكامل فيما بينها

    المواقع التي ذكرتها كجوجل وويكيبيديا وفايسبوك وغيرها
    تعتمد أولا أهم لغة وهي HTML
    إضافة إلى PHP/JavaScript .. و CSS/Ajax وبقية اللغات والتقنيات حسب الحاجة

    فمثلا شبكة دبليوإنتر
    تستعمل نسخة منتدى vBulletin المبرمجة بـ PHP/HTML/CSS/JavaScript ..
    • تعديل / حذف

  6. Level: 43
    على الرغم انه ليس لدي اهتمامات ببرمجيات الأنظمة
    لكن على الاقل مهتم بمعرفة نبذة عنها
    خصوصاً أن كان حول لغة C

    شكراً على هذا المقال الجميل و المنظم
    أتمنى أن يستفاد المهتمون بهذا المجال و ان يكون هناك مقالات أكثر
    • تعديل / حذف

  7. الصورة الرمزية PcArtsSchool Level: 7
    مرحبا بك أخي الفاضل
    وجزاك الله خيرا على زيارتنا وإبداء رأيك
    على الأقل كما ذكرت يكون لك ثقافة بسيطة عن اللغة قد تحتاجها لاحقا
    وفقكم الله
    • تعديل / حذف

  8. الصورة الرمزية saleemsaleem Level: 7
    اخي عالم البرمجة شكرا

    انا نفسي ذات يوم افعل موقع انترنت عربي الاصل ويضم كل لغات العالم ونكون نحن العرب مؤسسين هذا الموقع نفسي موقع عربي واحد اقوى من الجوجل والوكبيديا والفيسبوك ونفعل حاجة بسم العرب يارب واشتي نصاحك لي قدر الامكان والتوفيق للجميع
    • تعديل / حذف

  9. الصورة الرمزية PcArtsSchool Level: 7
    العفو أخي .. ومرحبا بك في أي وقت

    للأسف كما سبقنا الغرب في الواقع بالسيارات والحواسيب والهواتف والتكنولوجيا .. فقد سبقونا في عالم الإنترنت وكل ما في الشبكة الآن من إيجادهم وابتكارهم .. ونحن فقط مستعملون .. فطالما هم من أوجدوها فبالتأكيد سيكونون الأفضل فيها

    الحمد لله .. يعني المحتوى العربي لا نقول أنه ضعيف تماما .. توجد منتديات ومواقع عربية كبيرة .. كشبكة W-Enter و المنابر وطريق الجرافيك .. وغيرها في مجال التصميم .. بلغت الاحترافية لدرجة ممتازة .. مع أنه تنقص في أنها لا توجد دروس في كل مجالات التصميم ولا تتوفر الكثير منها .. خاصة دروس الفيديو .. نظرا لاحتكار العلم في مواضيع عدة

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

    أيضا هناك منتديات كبيرة كمنتديات ترايدنت وسوالف وإقلاع سوفت وبرامج نت .. وغيرها تقدم محتوى رائع وحصري ..

    لكن مع ذلك يجب أن نبتعد عن سياسة إحتكار العلم ونحاول الرقي في كل المجالات وندعم المواهب
    شكرا أخي
    • تعديل / حذف

  10. الصورة الرمزية saleemsaleem Level: 7
    اخي انا عارف هذا انا قصدت ان احنا العرب ليش مايكون معانا موقع زي الويكبيديا يدخله كل الناس بكل انحاء العالم
    الفكرة هي نحتاح
    مبرمجين
    مصممين
    لغويين عرب
    لغوين بكل لغة بالعالم
    وادارة

    وبس وتبقى الفكرة العربية هي التي تدير كل الي ذكرتهم وننشاء موقع عالمي في هذا الموقع فكر عربية وهذه الفكر يحتاجها كل انسان في الارض وبعدها موقعنا يصبح عالمي من عرب
    • تعديل / حذف

صفحة 1 من 2 12 الأخيرةالأخيرة

مدخلك إلى عالم C : مقال شامل عن اللغة ( معلومات , خصائص , مكتبات .. )

إحصائيات

المشاهدات :  7,835 التعليقات :  15

قد يهمك أيضاً :

الكلمات الدلالية لهذا الموضوع

من هنا ؟

المتواجدون حالياً
1
( الأعضاء 0 و الزوار 1 ) .