تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الفوارق الأشيع بين لغات .net الأربع (C#- Visual basic - C++-CLI- F#)
#1
كاتب الموضوع : عبد العظيم بخاري

الفوارق الأشيع بين لغات .NET الأربع (C#, Visual basic , C++/CLI, F#)


لغة C# كما نعلم هي لغة برمجية تم تصميمها خصيصاً من اجل العمل تحت بيئة الدوت نت. في حقيقة الأمر هناك اكثر من 50 لغة برمجية موجودة من اجل كتابة التطبيقات لل.NET .. منها Haskell و Prolog و Ruby و Oberon و Delphi و Pascal و Pizza و COBOL و Smalltalk و Eiffel ....الخ

صممت مايكروسوفت ايضاً لغات خاصة بها للدوت نت مثل لغة C# و الفيجوال بيسك و C++/CLI و J# و Jscript.NET و F#.

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

دائماً الclasses هي نفسها في اطار عمل الدوت نت لكن النمط الكتابي للغة قد يخرج لنا مميزات متنوعة من اطار العمل Framework.. فنحن امام كنز تتسابق لغات البرمجة لعرضه والاستفادة منه بالشكل الأفضل .. فمثلاً جملة using في C# تسهل استعمال تطبيق الobjects للانترفيس IDisposable , اما في لغات اخرى فتحتاج لكودات اكثر لعمل نفس الوظيفة.

فهذه المقالة ستعرض لك اهم الفوارق البرمجية بين لغات الدوت نت الأربع (C#, Visual basic , C++/CLI, F#) حيث ستشرح لك كيفية تحويل التطبيقات من لغة معينة إلى اخرى فاذا ما واجهت كود ما مكتوب بالفيجوال بيسك أو C++/CLI يمكنك بسهولة اعادة كتابته بالC# والعكس صحيح.. ايضاً سنتطرق إلى بعض المميزات البرمجية في كل لغة مع ذكر امثلة سهلة الفهم..

محتويات المقالة:

- Namespaces.

- تعريف الأنواع.

- Methods.

- Arrays.

- الجمل الشرطية.

- حلقات التكرار.

- معالجة الException.

- الوراثة.

- تحرير الموارد.

- Delegates.

- Events.

- Generics.

- استعلامات LINQ.

- دمج كودات الmanaged مع الكودات المحلية native (unmanaged) في C++/CLI.

في هذه المقالة افترضت أنك تعرف C# سابقاً .. لأن المقالة مخصصة حول اعطائك معلومات عامة عن كيفية تحويل افكار الC# التي تعرفها إلى اللغات الاخرى .. لذلك ليس من الضروري معرفة الفيجوال بيسك أو C++/CLI أو F# , وايضا لا تنتظر مني ان تتعلم تلك اللغات في هذه المقارنة البسيطة..

كما هو معروف فإن لغات الدوت نت الأكثر استعاملاً من مايكروسوفت هي C# و الفيجوال بيسك . فالاولى تم تصميمها حديثاً وتم وضع افكار كثيرة بها مقتبسة من C++ و Java و Pascal و لغات اخرى..

الفيجوال بيسك هي الإبن الروحي للVB6 حيث تم اضافة الكثير من مميزات البرمجة الكائنية إليه ليغدو في النهاية لغة جديدة تشبه في شكلها الVB6 لكنها ذات جوهر مختلف.

C++/CLI هي امتداد وتوسعة للغة C++ . الميزة الأضخم لها هو القدرة على خلط كودات native مع كودات managed , فيمكنك تطوير تطبيقات C++ المكتوبة بكودات native ودعمها بالوظائف التي تقدمها بيئة عمل الدوت نت . ويمكنك ايضاً اضافة الclasses التي للدوت نت إلى مكتبات native لذلك يمكن استعاملهم مع اللغات الاخرى مثل C#. ايضاً يمكنك كتابة تطبيقات كاملة مبنية على كودات managed باستعمال C++/CLI.

F# هي لغة جديدة تمت اضافتها مؤخراً بشكل رسمي في الفيجوال ستديو .. هذه اللغة تعتمد على البرمجة الوظيفية functional programming بشكل اساسي اضافة لدعمها للبرمجة كائنية التوجه التقليدية مما يجعلها تعمل جيدا مع الدوت نت بطبيعة الحال .. وحتى تحصل على بعض المعلومات حول معنى البرمجة الوظيفية في F# فالفنكشنات يمكن استعاملها كقيم ! وهذا يجعل من السهل انشاء واعدادا وتشكيل وتنظيم الوظائف من فنكشنات متعددة والقيام بمهام function pipelining حيث يتم ربط الوظائف (الفنشكنات) مع بعضها البعض ..

يمكن اعتبار F# اداة مثالية لطلاب الكليات العلمية وبالاخص في مجال الرياضيات .

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

لقراءة بقية المقالة من هذا الرابط
http://www.flyarb.com/DotNet.aspx
(وضعته بسبب عدم اتساع الموضوع لبقية المقالة)
اخوكم عبد العظيم بخاري
}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  حصرياً جميع روابط Microsoft Visual Studio.Net مباشرة وشغالة 100% من شركة Microsoft أسامة أحمد 11 23,690 14-01-24, 10:55 AM
آخر رد: سعيدة نبيل
  لغات البرمجة واستخداماتها والمقارنة بينها esamibrahim111 1 2,486 31-05-17, 09:28 PM
آخر رد: alma2
  تحميل برنامج مايروسوفت فيجوال بيسك Download Microsoft Visual Basic mohamed atef2018 2 5,144 09-07-16, 10:58 PM
آخر رد: عمور2016
Star [مقال] أدوات صغيرة لتحويل المشاريع بين لغات البرمجة VB.net , C++ , C# , Java Mostafa Saad 0 3,623 28-02-15, 09:50 AM
آخر رد: Mostafa Saad
  دعنا نتعرف قليلا على لغة #f جديد لغات vs 2010 RaggiTech 4 3,053 09-10-12, 06:39 PM
آخر رد: RaggiTech
  زمن المعالجات - Microsoft Visual Studio LightSwitch RaggiTech 0 2,633 09-10-12, 06:27 PM
آخر رد: RaggiTech
  مدخل إلى Visual Studio Extensibility باستخدام Visual Studio SDK RaggiTech 0 2,450 09-10-12, 05:05 PM
آخر رد: RaggiTech
  موقع غاية في الأهمية ..ملخصات لغات البرمجة RaggiTech 0 2,160 08-10-12, 05:49 PM
آخر رد: RaggiTech
  نظرة سريعة في الجديد في Visual Studio 2008 فيما يتعلق ببيئة التطوير RaggiTech 0 1,880 08-10-12, 05:45 PM
آخر رد: RaggiTech
  إنشاء قالب مشروع جديد في visual studio RaggiTech 0 2,209 08-10-12, 01:00 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم