فيجوال بيسك دوت نت

لغة برمجة

فيجوال بيسك دوت نت (بالإنجليزية: Visual Basic .NET أو VB.NET)‏ هي نسخة جديدة بكل المقاييس من فيجوال بيسك أصدرتها مايكروسوفت في نهاية عام 2001. بنتها مايكروسوفت من الصفر لتجعلها إحدى لغات نظام فيجيوال ستديو دوت نت (بالإنجليزية: VS .NET)‏ وتستفيد من كل قدرات إطار عمل دوت نت، فتصير بذلك نداً حقيقياً لعائلة لغات سي++ بحيث تتسيد فيجوال بيسك برمجة تطبيقات مواقع الإنترنت، التطبيقات التجارية وتطبيقات قواعد البيانات والوسائط المتعددة ومعظم الألعاب وما شابه.[2][3]

فيجوال بيزك دوت نت
الشعار
معلومات عامة
التصنيف
التنميط
مقتبس من
ظهرت في
2001 عدل القيمة على Wikidata
صممها
نظام التشغيل
المنصة
الرخصة
التطوير
المطور
الإصدار الأول
2001 عدل القيمة على Wikidata
الإصدار الأخير
  • 17.9.2
    (27 فبراير 2024) عدل القيمة على Wikidata
المستودع
التأثير
متأثرة بـ
متفرقات
امتدادات الملفات
vb عدل القيمة على Wikidata
مواقع الويب
docs.microsoft.com… (الإنجليزية)
docs.microsoft.com… (اليابانية) عدل القيمة على Wikidata

وهذا هو السبب الذي دفع مايكروسوفت إلى إصدار اللغة الجديدة سي شارب، التي تعتبر توأماً لفيجوال بيسك إلا إنها تستخدم قواعد لغة سي++ في كتابة الأوامر، مما يسهل لمبرمجي سي++ الانتقال إليها. كما انضمت لغة جي شارب إلى عائلة دوت نت عام 2003، لإغراء مبرمجي جافا. ولكن مهما كانت سهولة سي شارب وجي شارب، فإن فيجوال بيسك تسبقهما في هذا المضمار، فهي أقرب ما تكون إلى اللغة الإنجليزية العادية، ولا تحتوي على الرموز الكثيرة المملة التي تملأ سي شارب وجي شارب، مثل ";" ، "++" ، "==" ، "||" إلى آخر هذه الرموز التي تجعل احتمالات الخطأ عند كتابة الشيفرة البرمجية أعلى، وتجعل البرنامج أصعب فهماً وأقل ألفة عند قراءته.

ولم تتوقف مايكروسوفت عن التطوير، ففي العام التالي أصدرت دوت نت 2003، وبعدها بعامين أصدرت دوت نت 2005 التي ضيقت الفجوة أكثر بين فيجيوال بيسيك وسي شارب بإضافة بعض القدرات الناقصة مثل إعادة تعريف المعاملات Operator Overloading. ثم جاءت دوت نت 2008 لتتيح تعريف الأنواع المجهولة Anonymous Types، وكتابة طرق إضافية Extended Methods للفئات الجاهزة الموجودة في اللغة، بالإضافة إلى استخدام الاستعلام المتكامل LINQ. وأخيراً جاءت دوت نت 2010 لتتيح لاستعلامات LINQ للاستفادة من الأجهزة التي تحتوي على أكثر من معالج دقيق من خلال الاستعلامات المتوازية PLINQ، مع إدخال بعض التعديلات الطفيفة في كود البيسك، مثل السماح بتقسيم الأوامر على أكثر من سطر في بعض المواضع بدون الحاجة إلى وضع علامة تقسيم السطر "_" ، ومثل تعريف دوال فورية Lambda Expressions متعددة السطور، وغير هذا من الإضافات.

أمثلة

برنامج مرحبا بالعالم !Hello World

في داخل الرمز البرمجي الرموز (الأكواد) أو السطور البرمجية التي تبدأ لعلامة الفاصلة العلوية (') لا تدخل في البرنامج أي لا ينفذها البرنامج يتخطاها، فهي تعبر عن ملاحظات المبرمج فقط.[4]

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

'This is line is just a comment.'هذا السطر مجرد ملاحظة، ولا يأثر على البرنامج
نموذج تطبيق بنافذة

نموذج تطبيق ويندوز (نافذة)

هذا النموذج عبارة عن نافذة تنبثق عند تنفيذ البرنامج، مكتوب بها مرحبا بالعالم. نحتاج زر يسمى Button1 على سبيل المثال (يمكن تسمية الزر بأي اسم):

Public Class Form1    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click        MsgBox("Hello world!", MsgBoxStyle.Information, "مرحبا بالعالم")        ' يظهر رسالة تقول مرحبا بالعالم    End SubEnd Class

نموذج تطبيق لوحة التحكم

هذا النموذج عبارة عن برنامج ينفذ داخل لوحة التحكم فقط يعني يستعمل داخل لوحة ادخال الأوامر (console) وبدون واجهة رسومية.

Module Module1    Sub Main()        Console.WriteLine("Hello world!") ' يكتب النص مرحبا بالعالم وينزل للسطر، النص يكون بالإنجليزية في هذه الحالة لأن لوحة ادخال الأوامر لا تدعم بالعربية بشكل جيد        Console.ReadKey() 'المستخدم يجب أن يضغط على أي زر قبل الخروج من البرنامج    End SubEnd Module

برنامج التكلم Speaking

نموذج تطبيق ويندوز (نافذة)

عبارة عن برنامج يتحدث بالصوت كل ما تدخله في مربع الكتابة. نحتاج مربع الكتابة (TextBox) باسم 'TextBox1' وزر بغسم Button1

Public Class Form1        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click        CreateObject("Sapi.Spvoice").Speak(TextBox1.Text)    End SubEnd Class

نموذج تطبيق لوحة التحكم

مثل السابق، لكن هذا برنامج بدون واجهة رسومية، عبارة عن برنامج يتحدث بالصوت كل ما تدخله في لوحة الأوامر (console).

Module Module1    Private Voice = CreateObject("Sapi.Spvoice")    Private Text As String    Sub Main()        Console.Write("Enter the text to speak: ") ' لطلب من المستخدم أن يدخل النص الذي يريده        Text = Console.ReadLine() ' يجب على المستخدم ادخال النص المراد قراءته صوت        Voice.Speak(Text) ' قراءة النص الذي أدخله المستخدم صوتا.    End SubEnd Module

الإصدارات

الاسماسم اخرالعامالميزات
VB 7.02002يعتمد الإصدار الأول فيجوال بيسك دوت نت على إطار عمل NET 1.0. الميزة الأكثر أهمية هي تعليمات برمجية مُدارة، والتي تتناقض مع فيجوال بيسك الكلاسيكية.
Visual Basic.NET 2003VB 7.12003تم إصداره مع .NET Framework 1.1. تتضمن الميزات الجديدة دعم .NET Compact Framework ومساعد إعداد ترقية أفضل VB. تم إجراء تحسينات أيضاً على أداء ووثوقية .NET IDE (المحول الخلفي بشكل خاص) ووقت التشغيل. بالإضافة إلى ذلك، توفر Visual Basic.NET 2003 في Visual Studio.NET الإصدار الأكاديمي، الذي تم توزيعه على عدد معين من الباحثين من كل عدة بلدان دون تكلفة.
Visual Basic 2005VB 8.02005بعد Visual Basic .NET 2003، أسقطت مايكروسوفت .NET " من اسم المنتج. أضافت مايكروسوفت العديد من الميزات لهذا الإصدار التي تهدف إلى تعزيز Visual Basic . NET باعتبارها منصة تطوير تطبيقات سريعة، وزيادة تمييزها عن سي شارب.، بما في ذلك:
  • ميزة التحرير والمتابعة
  • تقييم التعبير وقت التصميم
  • الاسم الزائف "My" والذي يوفر:
    • الوصول إلى مناطق معينة من إطار عمل .NET التي تتطلب شيفرة برمجية هائلة للوصول إلىها مثل استخدام My.Form2.Text = " MainForm " بدلاً من System.WindowsApplication1.Forms.Form2.text = " MainForm "
  • الفئات التي تم إنشاؤها ديناميكيًا (على سبيل المثال My.Forms)
  • تحسين محول VB إلى VB.NET
  • الكلمة المفتاحية "using"، وتبسيط استخدام الكائنات التي تتطلب نمط التخلص إلى الموارد الحرة
  • ميزة "التعليمات البرمجية الخاصة بي" فقط، والتي تخفي (الخطوات على) الشفرة المتداولة التي كتبها Visual Studio .NET IDE ورمز مكتبة النظام أثناء التصحيح
  • ربط مصدر البيانات، وتسهيل تطوير عميل/خادم قاعدة البيانات

لسد الفجوات بينها وبين لغات .NET الأخرى، أضاف هذا الإصدار:

  • البرمجة العامة
  • الفئات الجزئية، وهي طريقة لتعريف بعض أجزاء فئة في ملف واحد ثم إضافة المزيد من التعريفات لاحقاً؛ مفيدة بشكل خاص لدمج الشيفرة البرمجية التي تم إنشاؤها من قبل المستخدم مع التعليمات الشيفرة التي تم إنشاؤها تلقائيًا
  • عامل التشغيل الزائد والأنواع الخالية
  • دعم نوع بيانات العدد الصحيح غير الموقع شائع الاستخدام في اللغات أخرى
  • تقديم عامل التشغيل IsNot الذي يجعل 'If X IsNot Y' مكافئ 'If Not X Is Y'
Visual Basic 9.0VB 9.019 نوفمبر 2007تم إصداره مع .NET Framework 3.5.

أضافت Microsoft العديد من الميزات لهذا الإصدار، بما في ذلك:

  • عامل تشغيل شرطي صحيح، "If(condition as boolean, truepart, falsepart)"، لاستبدال الدالة "IIf"
  • أنواع مجهولة
  • دعم لـ LINQ
  • تعبيرات لامدا
  • قيم XML الحرفية
  • نوع الاستدلال
  • أساليب التمديد
Visual Basic 2010VB 10.0أبريل 2010خططت مايكروسوفت لاستخدام وقت تشغيل اللغة الديناميكي لذلك الإصدار ولكن تحولت إلى استراتيجية تطوير مشترك بين لغة فيجوال بيسك ولغة سي شارب الشقيقة لجعل كلا اللغتين تماثل بعضها البعض. تم تحسين قدرة فيجوال بيسك الفطرية على التفاعل مع كائنات CLR و COM للعمل مع اللغات الديناميكية المبنية على DLR مثل IronPython وIronRuby. تم تحسين المحول البرمجي لفيجوال بيسك لاستنتاج متابعة الخط في مجموعة من السياقات الشائعة، وإزالة الحاجة إلى أحرف متابعة السطر "_" في كثير من الحالات. أيضا، تم استكمال الدعم الموجود لـ الدوال مضمنة مع دعم ل Subs المضمنة بالإضافة إلى إصدارات متعددة الأسطر لكل من Subs وتعبيرات لامدا.
VB 11.02012تم إصداره جنبا إلى جنب مع .NET Framework 4.5. وتشمل السمات الرئيسية التي أدخلت في هذا الإصدار:
  • البرمجة غير المتزامنة مع عبارات "async" و "async"
  • Iterators
  • التسلسل الهرمي للنداءات
  • معلومات المنادي
  • الكلمة المفتاحية "Global" في عبارات "namespace"
Visual Basic 2013VB 12.02013تم إصداره جنبا إلى جنب مع .NET Framework 4.5.1 و Visual Studio 2013. يمكن أيضاً إنشاء تطبيقات .NET Framework 4.5.2 بواسطة تثبيت حزمة المطور.
Visual Basic 2015VB 14.02015تم إصداره مع Visual Studio 2015. تتضمن ميزات اللغة عامل تشغيل جديد "?." لإجراء تدقيقات فارغة مضمّنة، ويتم تضمين ميزة استيفاء سلسلة جديدة لتنسيق سلاسل مضمنة.
Visual Basic 2017VB 15.x2017تم إصداره مع Visual Studio 2017. توسيع الدعم لـ ميزات لغة Visual Basic 15 الجديدة مع مراجعة 2017, 15.3, 15.5, 15.8. يقدم إعادة بناء التعليمات الجديدة التي تسمح بتنظيم تعليمات الشيفرة البرمجية مع إجراء واحد.
Visual Basic 2019VB 16.02019تم إصداره مع Visual Studio 2019. ركز الإصدار الأول من فيجوال بيسك على .NET الأساسية.

تطوير الأنظمة الأساسية ومفتوح المصدر

محول برمجي  (مترجم الرمز البرمجي Compiler) الفيجوال بيسك دوت نت الرسمي مكتوب بلغة فيجوال بيسك دوت نت وموجود على منصة غيت هاب (GitHub) كجزء من منصة دوت نت.[5] إنشاء أدوات فيجوال بيسك دوت نت المفتوحة المصدر كانت بطيئة مقارنة مع لغة c#، على الرغم من أن منصة مونو للتطوير  (Mono development platform) توفر تطبيقات مكتبات خاصة لفيجوال بيسك دوت نت، وفيجوال بيسك دوت نت النسخة الثامنة تدعم المترجم المكتوب بلغة فيجوال بيسك دوت نت،[6] وكذلك مكتبات إطارات العمل القياسية مثل مكتبات نماذج ويندوز ذات الواجهات الرسومية GUI.

SharpDevelop و MonoDevelop هي منصات (IDEs) مفتوحة المصدر بديلة. بيئة العمل Gambas هي كذلك مماثلة لكنها تختلف عن فيجوال بيسك.

انظر أيضًا

مراجع

وصلات خارجية