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

فيجوال بيسك دوت نت  هي نسخة جديدة بكل المقاييس من فيجوال بيسك أصدرتها مايكروسوفت في نهاية عام 2001. بنتها مايكروسوفت من الصفر لتجعلها إحدى لغات نظام فيجيوال ستديو دوت نت  وتستفيد من كل قدرات إطار عمل دوت نت، فتصير بذلك نداً حقيقياً لعائلة لغات سي++ بحيث تتسيد فيجوال بيسك برمجة تطبيقات مواقع الإنترنت، التطبيقات التجارية وتطبيقات قواعد البيانات والوسائط المتعددة ومعظم الألعاب وما شابه.

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

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

أمثلة

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

بما معناه إذا كنت تريد وضع ملاحظة داخل الرمز البرمجي بدون التأثير على البرنامج نفسه قم بفعل التالي:'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 Sub
End Class

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

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

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

نموذج تطبيق ويندوز (نافذة) 
عبارة عن برنامج يتحدث بالصوت كل ما تدخله في مربع الكتابة. نحتاج مربع الكتابة (TextBox) باسم 'TextBox1' وزر بغسم Button1Public Class Form1
    
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        CreateObject("Sapi.Spvoice").Speak(TextBox1.Text)
    End Sub
End 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 Sub
End Module

الإصدارات

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

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

انظر أيضًا 
برمجة

لغة برمجة عالية المستوى

مقارنة بين لغات البرمجة

فيجوال بيسك

مراجع

وصلات خارجية 
 من الصفر إلى الاحتراف: فيجيوال بيسك دوت نت 2010، محمد حمدي غانم

برمجيات 2001
عائلة لغة بيسك
لغات برمجة .نت
لغات برمجة كائنية التوجه
مايكروسوفت بيسك
مايكروسوفت فيجوال ستوديو