سي شارب
سي# | |
---|---|
التصنيف: | برمجة كائنية التوجه |
ظهرت في: | 2001 |
صممها: | مايكروسوفت |
آخر إصدار: | 4 |
رقمه: | 4 (2010) |
متأثرة بـ: | باسكال، سي++، إيفل، جافا |
أثرت في: | جافا[١] |
الرخصة: | احتكارية |
موقع ويب: | http://msdn.microsoft.com/vcsharp |
امتدادات الملفات: | cs, csproj |
سي# (بالإنجليزية: #C) هي إحدى لغات البرمجة متعددة الاستخدام من إطار عمل دوت نت من إنتاج شركة مايكروسوفت يرمز إليها بالرمز #C وتنطق "سي شارب"، وهي إحدى اللغات التي أنتجتها شركة مايكروسوفت خروجا من ورطة الجافا والقضية الشهيرة التي رفعتها عليها شركة صن ميكروسيستمز
[٢]،
تم الإعلان عنها في أواسط عام 2000
[٣]
تزامنا مع الإعلان عن إطار عمل دوت نت (بالإنجليزية: .NET Framework). تتميز سي# بأنها إحدى لغات البرمجة الكائنية التوجه وتجمع صفات سي++ وفيجوال بيسك حيث أنها تستخدم القواعد الخاصة بالسي++ وسرعة التطوير كما في فيجوال بيسك. لغة السي# موجهة إلى مبرمجي الفيجوال سي++ ومبرمجي السي++ على أنها امتداد لهذه اللغات.
الإصدارات
هذه قائمة بالإصدارات المختلفة للسي#:
الإصدار | مواصفات اللغة | مترجم مايكروسوفت |
---|---|---|
1.0 | ديسمبر 2001 | يناير 2002 |
2.0 | ديسمبر 2002 | نوفمبر 2005 |
3.0 | يونيو 2005 | نوفمبر 2006 |
4.0 | يونيو 2006 |
بيئات تطوير السي#
يوجد العديد من بيئات التطوير المتكاملة التي تستخدم لتطوير برامج بالسي#، مثل:
عن اللغة باختصار
تشبه لغة سي# تعبيريّا لغة سي++. حتى انه يمكن بقليل من الجهد فهم كود سي# لمن يعرف سي++. سي# لغة كائنية التوجه بشكل كامل، اي ان كل الكود المكتوب بهذه اللغة عبارة عن كائنات -لا يوجد متغيرات مستقلة - لا يمكن تعريف متغيّر خارج الفئة(بالإنجليزية: Class).. وتستخدم اللغة مكتبات الدت نت (بالإنجليزية: net.) الجاهزة، مثال على برنامج بلغة سي# (ترقيم الأسطر ليس ضمن البرنامج \ عند نسخك البرنامج تجاهل هذه الارقام (امسحها))
<source lang="cpp"> 1. using System; 2. using System.Collections.Generic; 3. using System.Text;
4. namespace hello 5. { 6. class Program 7. { 8. static void Main(string[] args) 9. { 10. Console.WriteLine("Hello World"); 11. Console.WriteLine(5 + 6); 12. Console.WriteLine("Bay!!"); 13. 14. } 15. } 16.}
</source>نتيجة البرنامج:
Hello World |
الشرح: السطر 2 و 3 لم نستخدمها يمكنك الاستغناء عنها. السطر 1 يعلن اننا نريد استخدام نطاق الأسماء(بالإنجليزية: systm namespace)المسمّى: system وهو نطاق يحتوي على فئات جاهزة (مثل الفئة Console) التي استخدمناها في السطور 10 11 12. سطر 4 : بداية اسم نطاق لبرنامجنا (نخن نختار الاسم)، وهو بدوره سيحتوي الفئة التي ستحتوي برنامجنا. 5 : قوس فاتح (نفتتح به كتلة من الأوامر والبيانات) 6: بداية الفئة(بالإنجليزية: Class) الخاصة ببرنامجنا. 7: قوس فاتح سيحتوي فحوى الفئة(بالإنجليزية: Class). 8: بداية الدالة الرئيسية - التي يجب أن تتواجد في كل برنامج سي#، ومنها يبدأ التنفيذ وهي الدالة Main الكلمة static تعني ان الدالة يمكن استدعائها دون الحاجة إلى إنشاء كائن للفئة التي تحتوي الدالة(هذا معناها هنا في هذا السياق - اما معناها العام فلن نشرحه هنا). void تعني ان الدالة Main لن ترجع قيمة (هناك دوال ترجع قيمة مقل دالة لجمع رقمين وترجع لنا المجموع) Main كما قلنا أهم الدوال.(string[] args) هذه قائمة بالبرامترات التي تستقبلها الدالة - لن نناقشها الآن، لكن إذا اردنا تمرير برامترات إلى دالتنا هذه فيجب تمريرها عبر سطر الاوامر بعد اسم البرنامج مثلا: c:\myprogram para1 para2 هكذا مررنا للدالة Main برامترات. 10 11 12 استخدمنا الدالة WritLine لكتابة سطر على الشاشة. هذه الدالة تابعة للفئة Console التي تتبع بدورها لنطاق الأسماء system. تقوم هذه الدالة بعمل ذكي، فهي تترجم كل ما تضعه بين الاقواس إلى نص وتكتبه على الشاشة. ففي السطر 11 كتبنا 5 + 6 قامت الدالة بتحويل الناتج (11) إلى تص وكتبته على الشاشة. السطور 10 11 12 هنّ استخدامات لنفس الدالة. 14 15 16 هي اقواس اغلاق 14 اغلقنا الدالة 15 اغلقنا الفئة (بالإنجليزية: Class). 15 اغلقنا اسم النطاق (بالإنجليزية: namespace).
انظر أيضا
- إطار عمل دوت نت
- مايكروسوفت فيجيوال ستوديو
- سي إل أي
- SharpDevelop
- مقارنة جافا وسي شارب
- مقارنة سي شارب وفيجوال بيسك
المراجع
- ^ Cornelius، Barry. Java 5 catches up with C#. خدمات حوسبة جامعة أكسفورد.
- ^ مدونة جيمس كوفاس، درس في تاريخ سي# ودوت نت.
- ^ تاريخ سي# المختصر
وصلات خارجية
- الصفحة الرئيسية للسي#
- دليل برمجة سي#
- مشاريع مفتوحة المصدر كُتِبت بالسي#
- موقع عربي يحوي مشاريع مفتوحة المصدر كُتِبت بالسي#
- Baltie - بيئة تطوير سي# للأطفال والصغار
- مشروع مونو
- Full C# Online book
|
|
az:C Sharp bg:C Sharp bn:সি শার্প bs:C šarp ca:C sostingut cs:C Sharp da:C Sharp de:C-Sharp C Sharp (programming language)]] eo:C dieso (programlingvo) es:C Sharp et:C Sharp eu:C Sharp fa:سیشارپ fi:C sharp fr:C sharp gl:C Sharp he:C sharp hr:C sharp hu:C Sharp id:C sharp is:C Sharp it:C sharp ja:C Sharp ka:C Sharp ko:C 샤프 lt:C sharp mk:C Sharp ml:സി ഷാർപ്പ് ms:C Sharp my:C sharp (programming language) nds:C sharp new:सी शार्प nl:C♯ no:C Sharp pl:C Sharp pt:C♯ ro:C sharp ru:C Sharp sah:C Sharp sh:C Sharp simple:C sharp sk:C Sharp sr:C Sharp sv:C-sharp tg:C Sharp th:ภาษาซีชาร์ป tr:C Sharp uk:C Sharp uz:C Sharp dasturlash tili vi:C thăng yo:C Sharp (programming language) zh:C♯