1. مقدمة
يتوفر رمز PDF الخاص بهذا المستند |HERE|.
VB.NET هي لغة حديثة. كانت متاحة في إصدارات تجريبية منذ عام 2000 قبل أن تصبح متاحة رسميًا في فبراير 2002 بالتزامن مع منصة .NET من Microsoft المرتبطة بها. لا يمكن لـ VB.NET العمل إلا مع بيئة التشغيل هذه، وهي البيئة المتوفرة حاليًا فقط على أنظمة تشغيل Windows NT و2000 وXP.
مع منصة .NET، ظهرت ثلاث لغات برمجة جديدة: C#، وVB.VET، وJSCRIPT.NET. تُعد لغة C# إلى حد كبير «نسخة» من لغة Java. أما VB.NET وJSCRIPT.NET فهما امتدادان لـ Visual Basic وJScript لمنصة .NET. وتتيح هذه المنصة للبرامج التي تعمل ضمنها مجموعة كبيرة جدًا من الفئات، وهي فئات قريبة جدًا من تلك الموجودة في الآلات الافتراضية لـ Java. وبتقدير أولي، يمكن القول إن منصة .NET هي بيئة تشغيل مشابهة لتلك الموجودة في الآلة الافتراضية لـ Java. ومع ذلك، يمكن ملاحظة اختلافين مهمين:
- لا تعمل منصة .NET إلا على أجهزة ويندوز، في حين تعمل جافا على أنظمة مختلفة (ويندوز، يونكس، ماكينتوش).
- تسمح منصة .NET بتنفيذ البرامج المكتوبة بلغات مختلفة. ويكفي أن يكون المُجمِّع الخاص بهذه البرامج قادرًا على إنتاج كود IL (اللغة الوسيطة)، وهو الكود الذي تنفذه الآلة الافتراضية .NET. جميع فئات .NET متاحة للغات المتوافقة مع .NET، مما يساهم في إزالة الاختلافات بين اللغات بقدر ما تستخدم البرامج هذه الفئات على نطاق واسع. ويصبح اختيار لغة .NET مسألة ذوق أكثر منها مسألة أداء.
وبنفس الطريقة التي لا يمكن تجاهل لغة Java، لا يمكن تجاهل منصة .NET، وذلك بسبب العدد الهائل من أجهزة ويندوز المثبتة، بالإضافة إلى الجهود التي تبذلها مايكروسوفت لترويجها وفرضها. يبدو أن لغة C# هي خيار جيد للبدء في استخدام .NET، لا سيما للمبرمجين الذين يستخدمون لغة Java، نظرًا للتشابه الكبير بين هاتين اللغتين. وبعد ذلك، يمكن الانتقال بسهولة من لغة C# إلى لغة VB.NET أو إلى لغة أخرى من لغات .NET. ستتغير صيغة البرمجة، لكن فئات .NET ستبقى كما هي. على عكس ما يبدو، فإن الانتقال من VB إلى VB.NET صعب. فـ VB ليست لغة موجهة للكائنات، في حين أن VB.NET موجهة للكائنات تمامًا. وبالتالي، سيواجه مبرمج VB مفاهيم لا يتقنها. يبدو من الأسهل التعامل مع هذه المفاهيم من خلال نسيان ما نعرفه عن لغة VB. ولذلك، لن نشير كثيرًا إلى لغة VB في ما يلي.
هذا المستند ليس دورة تدريبية شاملة. إنه موجه للأشخاص الذين لديهم معرفة مسبقة بالبرمجة ويرغبون في اكتشاف لغة VB.NET. وهو يتبع بنية المستند «مقدمة إلى لغة C#» للكاتب نفسه لتسهيل المقارنة بين اللغتين. في الواقع، استخدمتُ هنا مترجمات آلية من لغة C# إلى لغة VB.NET. ورغم أن هذه المترجمات ليست مثالية تمامًا، إلا أنها تؤدي ما بين 80 إلى 100% من العمل حسب الحالة. لذا، عند قراءة كود برامج VB.NET التي ستلي، يجب أن نتذكر أن هذا الكود تم إنشاؤه في البداية بواسطة آلة، ثم قمتُ بتعديله بنفسي عند الضرورة. وبالتالي، قد نجد فيه «عبارات» برمجية ربما لم نكن لنستخدمها بأنفسنا.
وقد ساعدتني الكتب التالية:
- Professional C# programming، دار نشر Wrox
- C# و .NET، جيرار ليبلان، دار نشر Eyrolles
هذان كتابان ممتازان أنصح بقراءتهما. تمت ترجمة برامج C# إلى VB.NET بواسطة مترجم متاح على الرابط (مارس 2004) http://authors.aspalliance.com/aldotnet/examples/translate.aspx. أما الباقي فقد تم الحصول عليه من خلال وثائق Visual studio.NET.
Serge Tahé، مارس 2004