لكل من اراد تعلم البرمجة يجب ان يتعلم لغة السي شارب C# هي تطبيق برمجة تم تطويره بواسطة شركة مايكروسوفت ويدخل في غالبية منتجاتها ، وتعتبر جزءأساسي من مجموعة “ NET. ” وتعتبر سي شارب لغة برمجة متعددة الاستخدامات وتقدم الكثير من الفوائد التي لا تصدق .
ما هي لغة السي شارب
هي لغة موجهة للتطبيقات تتضمن دعمًا للبرمجة الموجهة للمكونات ، حيث تعتمد البرامج الحديثة بشكل كبير ومتزايد في تصميمها على مكونات البرنامج في شكل حزم وظيفية قائمة بذاتها والوصف الذاتي .
ويعتبر مفتاح هذه المكونات ينحصر في كونها تقدم نموذج برمجة مع الخصائص والأساليب والأحداث ، كذلك لديهم عناصر تتمكن من توفير معلومات تعريفية حول المكون ودمج وثائقهم الخاصة ، كما يقوم سي شارب بتوفير تصميمات لغة لدعم هذه المفاهيم مباشرةً ، مما يجعل C # لغة طبيعية للغاية لإنشاء واستخدام مكونات البرامج . [1]
مميزات لغة سي شارب C #
- تساعد سي شارب في إنشاء تطبيقات قوية ومستمرة وذلك من خلال جمع البيانات المهملة كما تسترجع تلقائيًا الذاكرة التي تم تشغيلها عن طريق الكائنات غير المستخدمة ويتعذر الوصول إليها .[1]
- معالجة استثنائية تعمل على توفير نهج منظم وموسع لاكتشاف الأخطاء واسترداد البيانات . [1]
- كما أن لغة سي شارب لديها ميزة التصميم الآمن مما يجعلها مستحيلة القراءة ومعرفة المتغيرات أمر غير وارد ، وكذلك فهرسة المصفوفات إلى ما وراء حدودها ، أو أداء قوالب الكتابة غير المحددة . [1]
- جميع أنواع لغة سي شارب لديها نظام موحد من أنواع المتغيرات بينها الأنواع البدائية مثل int و double ، وتعتبر تلك الأنواع من نوع كائن وحيد الجذر ، وبناء عليه تداخل كافة الأنواع في مجموعة من العمليات المشتركة ، ويمكن تخزين القيم من أي نوع ونقلها وتشغيلها بطريقة متسقة . [1]
- تقوم سي شارب بدعم كلاً من أنواع المرجع وأنواع القيم المعرفة من قبل المستخدم ، وهو ما يسمح بالتخصيص الديناميكي للكائنات بالإضافة إلى التخزين المباشر للهياكل الخفيفة . [1]
- تتميز أيضًا لغة سي شارب بأنها قابلة للتطور مع الوقت بطريقة متوافقة . [1]
- أيضًا كان هناك تركيزًا على الإصدار في تصميم سي شارب ، وهو الأمر الذي يتم إهماله من قبل العديد من لغات البرمجة لذلك تنقطع البرامج المكتوبة بهذه اللغات أكثر من اللازم ، عند تقديم إصدارات أحدث من المكتبات التابعة . [1]
- وتشمل لغة سي شارب عدة جوانب للتصميم متأثرة بشكل مباشر باعتبارات تعيين الإصدار ، وهي ” المعدلات الظاهرية والتجاوزات المنفصلة ، وقواعد تحليل الحمل الزائد للطريقة ، ودعم إعلانات أعضاء الواجهة الواضحة ” . [1]
برنامج ” Hello world “
على سيل المثال: يستخدم برنامج طباعة ” Hello world ” بشكل تقليدي للمبتدئين في لغة برمجة سي شارب C #.
شرح البرنامج عبارة عن أنه يحتوي على ملفات مصدر سي شارب على امتداد الملف ” cs ” وبافتراض أن برنامج Hello world مخزن في الملف hello.cs ، فمن الممكن تجميع البرنامج باستخدام سطر الأوامر . [1]
ويستخدم برنامج Hello world توجيه يشير إلى مساحة اسم النظام ، وتوفر مساحات الأسماء وسيلة هرمية لتنظيم برامج C # والمكتبات ، كما تحتوي مساحات الأسماء على أنواع ومساحات أسماء أخرى ، مثالًا : تحتوي مساحة اسم النظام على عدة الأنواع ، مثل فئة وحدة التحكم المشار إليها في البرنامج ، بالإضافة إلى عدد من مساحات الأسماء الأخرى مثل IO” و Collections ” .
ثم يتيح استخدام التوجيه الذي يشير إلى مساحة اسم محدد لاستعمال غير مشروط للأنواع التي تعتبر أعضاء في مساحة هذا الاسم ، وبذلك من خلال استخدام هذا التوجيه يتم استخدام البرنامج لـ Console.WriteLine كاختصار لـ System.Console.WriteLine . [1]
عناصر لغة C #
لغة سي شارب كبيرة وعميقة جدًا نستطيع من خلال ذكر العناصر التالية أن نقرب النظرات العامة لتعلم عنه معلومات أساسية ، هذه العناصر هي:
هيكل البرنامج
يعد هيكل البرنامج هو الباب نحو تعلم المفاهيم التنظيمية الرئيسية في لغة سي شارب C # لكافة البرامج ، ومساحات الأسماء ، والأنواع ، والأعضاء ، والتجمعات .[1]
الأنواع والمتغيرات
من خلال تلك الأنواع والمتغيرات تعلم ما هي أنواع القيم وأنواع المراجع والمتغيرات داخل لغة سي شارب C # . [1]
التعبيرات
يتم إنتاج القيم من خلال التعبيرات ، ويتم إنشاء التعبيرات من المعاملات والمشغلين . [1]
صياغات
الصياغات هي عبارات تستخدم في التعبير عن إجراءات البرنامج . [1]
الطبقات والكائنات
من أبسط أنواع لغة سي شارب هي الطبقات ، وتعد الكائنات هي نفسها الفئة أو مثيلاتها ، وقد صممت الطبقات من خلال الأعضاء . [1]
البنيات
البنيات هي عبارة عن هياكل أو هياكل بيانات وليس كما الفئات فهي تعتبر أنواع القيم . [1]
المصفوفات
المصفوفة هي بنية من البيانات تتضمن عدد من المتغيرات ، التي يمكن الوصول إليها بواسطة مؤشرات محسوبة . [1]
واجهات
تعلم الواجهة أنها عقدًا يُنفذ من خلال الفئات والهياكل ، كما أنه من الممكن أن تحتوي الواجهة على أساليب وخصائص وأحداث وفهرسة ، ولا يمكن للواجهة أن توفر تطبيقات للأعضاء الذين تحددهم – إنها تحدد فقط الأعضاء التي يجب توفيرها بواسطة الفئات أو البنى التي تنفذ الواجهة . [1]
المندوبين
يتمكن المندوبين من التعامل مع الأساليب ككيانات يمكن تعيينها للمتغيرات وتمريرها كمعلمات ، هو أمر يشبه فكرة المفوضون أي أنه مفهوم مؤشرات الوظائف الموجودة في الكثير من اللغات الأخرى ، ولكن المفوضين ليسوا كمؤشرات الوظائف حيث يعتبرون أمنون في الكتابة وموجهين للكائنات ، كما يعد نوعًا من الأساليب مع قائمة معلمات معينة ونوعية الإرجاع . [1]
سمات
السمات تمكنك من تحديد معلومات تعريفية إضافية عن الأنواع والأعضاء وبقية الكيانات . [1]
تطبيقات تستخدم لغة سي شارب
- تطبيقات الويب .
- تطبيقات ويندوز .
- تطبيقات الموبايل .
- الخدمات المستندة إلى السحابة .
- التطبيقات المستندة إلى سطح المكتب لنظام التشغيل Windows .
- الألعاب التي تستخدم Unity .
- خدمات ويندوز .
- تطبيقات تدفق العمل . [2]
تطوير الالعاب
تستخدم ميكروسوفت لغة سي شارب C # في تطوير الألعاب خاصة ألعاب Xbox ، كما يتم استخدامها في تطوير وإنشاء ألعاب الفيديو من خلال طريقة Unity ، مما يشير إلى أن الآلاف من الألعاب تمت كتابتها من خلال لغة البرمجة سي شارب ومن هذه الألعاب لعبة RimWorld الشهيرة ، لذا تعتبر تلك اللغة أحد لغات برمجة ألعاب الفيديو الرئيسية . [2]