مستقبل فيجوال بيسك
WebForms (نماذج الويب) وخدمات الويب (خدمات الويب) وتحسينات اللغة التي ستظهر في الإصدار
قراء هذه المقالة هم مستخدمون على دراية بـ Visual Basic بالفعل.
نظرة عامة: يحتوي الإصدار التالي من Microsoft Visual Basic على ثلاثة تحسينات رئيسية: تحسينات في WebForms وخدمات الويب وبناء الجملة الموجه للكائنات. يمكّن WebForms مستخدمي Visual Basic ذوي الخبرة من تطوير تطبيقات الشبكة بنفس السهولة التي يقومون بها في البرامج المستقلة اليوم. من خلال واجهة SOAP، تتيح لك خدمات الويب نشر المكونات التي تصممها في أي مكان يمكنك الوصول فيه إلى الإنترنت. بالإضافة إلى ذلك، فإن العديد من التحسينات الرئيسية في اللغات الموجهة للكائنات تجعل تعليمات Visual Basic البرمجية مرنة مثل لغة C، بما في ذلك الوراثة وتعدد الأشكال والتحميل الزائد. للحصول على معلومات حول هذا الجانب، يرجى الرجوع إلى "VBITSkeynoteonthenext GenerationofVisualBasic" لستيف بالمر.
لقد مر isualBasic بالعديد من التحسينات. لكن الشيء الوحيد الذي أحببته فيه منذ بدايته هو أنه، في جوهره، لا يزال بإمكانك كتابة برامجك بنفس الطريقة التي كانت عليها في عام 1991. بالطبع، تم تحسين حزمة برامجها بشكل كبير مقارنة بذلك الوقت، لكن هذه التحسينات تكميلية بشكل عام ولا تحجب الغرض من كونها أداة برمجة بحد ذاتها. هذا الغرض هو: جعل Visual Basic أسهل وأسرع في التصميم والكتابة وتصحيح التطبيقات المتميزة الموجهة للكائنات.
يقدم الإصدار الحالي من Visual Basic 6.0 WebClasses كوسيلة مبسطة لتكوين تطبيقات قوية موجهة للشبكة. في الواقع، توفر WebClasses عددًا كبيرًا من الطرق لنقل البرامج إلى الإنترنت من خلال الأدوات الشائعة. (للحصول على مناقشة مفصلة حول قابلية التوسع لـ Visual Basic 6.0 ضمن الشبكة، راجع "عمود الأساسيات المتقدمة" الخاص بـ Ted Pattison (الذي نشره Microsoft Internet Developer في أكتوبر 1999)
لقد أتيحت لي الفرصة مؤخرًا للتعرف على بعض التحسينات الجديدة المخططة للإصدار التالي من Visual Basic. ويكمن التحسن الرئيسي في سعة التخزين، التي تضاعفت ثلاث مرات سعة التخزين المتاحة للمطورين. تم التخطيط للإصدار التالي من Visual Basic ليحتوي على ميزة تسمى WebForms في بيئة Visual Studio®. يمثل WebForms حلاً جديدًا للشبكة يعتمد على المكونات. ستصبح خدمات الويب حلاً جديدًا قائمًا على XML ينشر وظائف معالجة الأحداث ذات المستوى المتوسط من خلال بروتوكولات الشبكة القياسية. وفي الوقت نفسه، ستتضمن لغة Visual Basic بعض البنيات التي طلبها المطورون منذ فترة طويلة، مما يجعل Visual Basic متوافقًا مع عادات البرمجة الشيئية المألوفة لمستخدمي C وJava.
سيتم الإعلان عن هذه التحسينات في الإصدار التجريبي التالي من Visual Basic. سأقدم هنا بعض مقتطفات التعليمات البرمجية، ولكن ليس الحل الكامل. إذن ما الذي يدعو للقلق الآن؟ الأمر بسيط، طالما أنك مصمم على الاستفادة من هذه الميزات الجديدة، يمكنك الآن تصميم برامجك من خلال هذه الأساليب المحددة والحصول على أفضل التمارين العملية التي تساعدك على الانتقال بسلاسة إلى الإصدار التالي من Visual Basic. وحتى لو لم تقم بذلك، فلن تخسر شيئًا طالما أنك تنظم برامجك المستقبلية وفقًا للمبادئ التي أضعها في نهاية هذه المقالة.
VisualStudioWebForms
سيكون الإصدار التالي من Visual Basic جزءًا من بيئة تطوير Visual Studio ومن المرجح أن يقدم المفهوم الجديد لـ WebForm لمطوري الويب. الغرض من تقديم مفهوم WebForm هو توسيع وظيفة الوصول العشوائي لـ Visual Basic بحيث يمكن تطبيق Visual Basic على كتابة برامج الشبكة التي لها تأثير واسع بشكل متزايد. يمكن للمطورين الذين يستخدمون أي لغة في Visual Studio مشاركة نماذج Visual Studio WebForms هذه.
تتكون صفحة WebForms من جزأين: ملف HTML الذي ينفذ الواجهة المرئية لصفحة WebForms وملف مصدر يتعامل مع أحداث صفحة WebForms. وبما أن ثلث التطوير الحالي المعتمد على بيئة Visual Basic موجه نحو الشبكة، تخطط Microsoft لزيادة تعزيز القدرات في هذا المجال. في الإصدار التالي من Visual Basic، يمكنك تصميم WebForms بنفس الطريقة التي تستخدم بها Visual Basic لإنشاء النماذج اليوم. سيكون لديك صندوق أدوات لعناصر التحكم في الويب. يمكنك سحب عناصر التحكم وإسقاطها مباشرةً في محرر HTML لاستخدامها، وكل ما عليك فعله هو تعيين خصائصها وكتابة بعض التعليمات البرمجية المناسبة. (انظر الشكل 1). باختصار، يمكنك القيام بهذه المهام تمامًا كما تستخدم Visual Basic لإنشاء النماذج. سيكون لديك تصميمات نماذج وتعليمات برمجية مجمعة متوافقة تمامًا مع IntelliSense® وتنسيق WYSIWYG. لذا، طالما أنك تعرف كيفية كتابة التطبيقات باستخدام Visual Basic، فإن WebForms يتيح لك أن تصبح مطور ويب دون تغيير طريقة عملك على الإطلاق.
الشكل 1 بناء الويب نموذج أربع خطوات
يتم تشغيل WebForms على الخادم ويرسل النماذج بتنسيق HTML فقط إلى المستخدمين. تمامًا مثل ActiveServerPage(asp)، فهو ليس متصفحًا محددًا ولا تطبيقًا يستند إلى WebForm، ولكن العملية بأكملها تعمل أيضًا على الخادم. في الواقع، أنت تقوم بتشغيل برنامج يقوم بإنشاء واجهة بتنسيق HTML 3.2 للمستخدمين البعيدين. على عكس صفحات ويب ASP، يتم تجميع هذه الرموز وتشغيلها بدلاً من تفسيرها، وبالتالي يتم تحسين سرعة التشغيل بشكل ملحوظ.
الغرض من تصميم WebForms هو الحصول على أفضل الميزات لكل من ASP وWebClass. يمكنك استخدام أي لغة في عائلة Visual Studio لإنشاء نماذج ويب. لذلك، يمكنك استخدام ما تعرفه لكتابة تطبيقات ويب فعالة وموجهة نحو الخادم.
خدمات الويب
خدمات الويب هي التحسين الرئيسي الثاني الذي تم إجراؤه بواسطة نظام أدوات تطوير Visual Studio. خدمة الويب في جوهرها عبارة عن معالج أحداث من الطبقة المتوسطة يتم نشره من خلال بروتوكول شبكة قياسي. نظرًا لأنهم يستخدمون HTTP كآلية نقل (انظر الشكل 2)، فيمكنهم التواصل عبر جدران الحماية. يمكنك ببساطة إنشاء خدمات ويب متعددة في تطبيق ويب طالما تم تعيين عناوين URL بشكل مناسب. عند تشغيل البرنامج، يتم تجميع المكالمات بين جميع هذه المكونات الداخلية تلقائيًا واستدعاؤها من خلال واجهة XML. يمكن للمطورين كتابة خدمات الويب واستخدامها على أي نظام أساسي وبأي لغة. إذا كنت بحاجة إلى السرية، يمكنك استخدام SecureSocketLayer (SSL) أو تقنية الفحص القياسية.
الشكل 2: هندسة خدمات الويب
إذا بدأ أي من هذا يبدو مألوفًا بالنسبة لك، فهذا مكان جيد للبدء. الآلية المستخدمة لنقل البيانات بين المكونات هي SOAP، بروتوكول ترخيص الكائنات البسيطة. قدمت DonBox SOAP بالتفصيل في مجلة MSDN™ التي تم نشرها في مارس 2000.
تم تصميم كل هذه الميزات الجديدة للسماح لمطوري تطبيقات الويب بتكوين خدمات ويب موجودة وقابلة لإعادة الاستخدام حتى يتمكنوا من كتابة تطبيقاتهم بشكل أسرع دون الحاجة إلى كتابتها من الصفر في كل مرة. سيؤدي هذا إلى حقبة جديدة من موفري أكواد البرامج ومطوري البرامج.
باستخدام الإصدار التالي من Visual Basic، ستتمكن قريبًا من نشر وتنفيذ الوظائف في مشروع معين في شكل خدمة ويب. قد تكون على دراية بعملية جعل فئة Visual Basic عامة. سيكون هناك شعار جديد في الإصدار التالي من Visual Basic، يسمى مؤقتًا webpublic. وهذا يعني أنه سيتم نشر البرنامج كخدمة ويب. لا يمكن استخدامه فقط من خلال المشاريع المحلية التي تحتاج إليه من خلال واجهة COM، ولكن يمكنه أيضًا خدمة أي برنامج شبكة يشير إلى عنوان URL الخاص به. تمامًا كما يمكنك إضافة مرجع إلى كائن عام في مشروع جديد، يمكنك إضافة مرجع إلى برنامج شبكة واستخدامه كما لو كان برنامجًا محليًا.
وبطبيعة الحال، فإن آلية التشغيل مختلفة بعض الشيء. يمكن لـ Visual Basic تحليل المراجع إلى الكائنات المحلية من خلال واجهة COM. عند إضافة مرجع إلى خدمة شبكة إلى التطبيق الخاص بك، سيقوم الكائن البعيد تلقائيًا بإنشاء تعريف الواجهة وإرساله إلى بيئة تطوير Visual Studio باستخدام بروتوكول SOAP. على الرغم من أنه سيتم إنشاء هذه الروابط في نموذج XML، إلا أنه ليس عليك إجراء أي اتصال بنفسك. سيقوم VisualBasic بالتعامل معها تلقائيًا نيابةً عنك. بعد تلقي تعريف الواجهة، يمكنك استخدام IntelliSense كما لو كنت قد كتبت تعليمات برمجية تشير إلى الكائن.
وهنا مثال بسيط. في بعض الحالات، قد ترغب في كتابة هذه الوظيفة باسم Seahawks، والتي قد تبدو مثل الكود التالي:
PublicFunctionSeahawks(ByValopponentAsString)AsString
سيهوكس = "تخسر"
وظيفة النهاية
إذا كان المشروع الذي تقوم بإنشائه يتضمن هذه الوظيفة، فسيقوم Visual Basic تلقائيًا بإنشاء وصف بتنسيق XML لهذه الوظيفة ونشره على الإنترنت.
<?xmlversion='1.0'?>
<methodshref='http://julian/Football/Teams'>
<methodname='Seahawks'href='Seahawks'>
<طلب>
<paramdt='string'>الخصم</param>
</طلب>
<responsedt='string'/>
</الطريقة>
</الطرق>
سيتم استخدام ملف XML هذا لوصف وظائف Seahawks. إذا كنت تستخدم بيئة تطوير Visual Studio، فيمكنك سحب وإسقاط أي خدمة ويب منشورة مباشرة في التطبيق لإنشاء فئة جديدة. إذا كنت تريد الاتصال بخدمة ويب في أي مكان على الإنترنت، فأنت تحتاج فقط إلى إنشاء مثيل للفئة التي تحتوي على خدمة الويب ثم استدعاء الأساليب المنشورة الخاصة بها.
عندما يتم استدعاء وظيفة Seahawks، فإنها تتصل تلقائيًا عبر حزم XML. إذا كنت تستخدم Microsoft® Internet Explorer 5.0 (الذي يتضمن دعم XML)، فيمكنك تجربة تشغيل هذه الوظيفة في متصفحك. يمكنك أيضًا استدعاء هذه الوظيفة باستخدام عنوان URL كما يلي:
http://julian/webservice1/component1.methods/Seahawks?opponent=Miami
سيعود البيانات بتنسيق XML كما يلي:
<?xmlversion="1.0"?>
<Response>يخسر</Response>
من أجل تسهيل تطوير خدمات الويب، سوف يقدم Visual Basic نوع كائن جديد، WebService. يمكنك تصميم خدمة الويب الخاصة بك ونشرها إلى خدمة بعيدة بنفس سهولة إنشاء ملف DLL محلي الآن.
تحسينات اللغة
كانت هناك علاقة متوترة منذ فترة طويلة بين المبرمجين الذين يفضلون Visual Basic والمبرمجين الذين يفضلون اللغات الأخرى الأكثر "تعقيدًا". لقد دافعت أكثر من مرة عن لغتي البرمجية المفضلة ضد الاتهامات بأنها "لغة ألعاب" وأن لغة Visual Basic تفتقر إلى ميزات OOP.
حسنًا، خمن ماذا حدث؟ سيضع الإصدار التالي من Visual Basic أخيرًا حدًا لشكاواهم. تخطط Microsoft لإضافة ثلاث ميزات رئيسية للبرمجة الموجهة للكائنات: الوراثة وتعدد الأشكال والتحميل الزائد. هذا ليس كل شيء! سيتم أيضًا تقديم بنيات إضافية، بما في ذلك معالجة الأخطاء المنظمة والتصفح، في لغة Visual Basic.
تتيح لك ميزة الميراث تصميم فئة أساسية ثم كتابة بعض الفئات المشتقة التي ترث وظائف الفئة الأساسية، وهذا يمكن أن يوفر الوقت ويحسن إمكانية إعادة استخدام البرنامج. على سبيل المثال، تكتب فئة أساسية تسمى BaseClass لها وظيفة:
الدالةGetCustomerName()
'دوسومستاف
وظيفة النهاية
الآن تريد كتابة فئة أخرى يمكنها استدعاء وظيفة GetCustomerName الخاصة بالفئة الأساسية تمامًا مثل وظيفتها. ما هي الطريقة القديمة؟ ولم يكن هذا ممكنا في الماضي. ومع ذلك، تتطلب الطريقة الجديدة الآن فقط إدراج سطر بسيط فوق الفئة الجديدة:
يرثBaseClass
وظيفةGetCustomerID()
'دوسومستاف
وظيفة النهاية
تسمى كتابة وظيفتين أو أكثر بنفس الاسم ولكن بمعرفات مختلفة التحميل الزائد. إلى حد ما، قام Visual Basic بتنفيذ التحميل الزائد في تحويل الأنواع الداخلية وإعداد الخصائص عند استدعاء الوظائف. قارن بين السطرين التاليين من تعليمات Visual Basic البرمجية الصالحة:
النص 1. النص = "7"
النص1.النص=7
في كلا الاستدعاءين، سيتم تعيين النص الموجود في Text1 إلى السلسلة "7". يعد هذا استدعاء زائد لأن Visual Basic يعرف كيفية التعامل مع أنواع البيانات المختلفة للإدخال. فهو يعاملها كمتغيرات ويحولها تلقائيًا. عند استدعاء بعض الوظائف ذات أنواع معلمات محددة بوضوح، سيقوم Visual Basic أيضًا بإجراء نفس التحويل. استدعاءات الدالة التاليتين:
أ=SetVal("هذا")
أ=سيتفال(7)
يمكن استدعاء الوظائف التالية بشكل صحيح:
وظيفةSetVal(xAsString)
Form1.Text1.Text=x
وظيفة النهاية
بما أن Visual Basic يمكنه بالفعل نقل العديد من أنواع المتغيرات المختلفة، فلماذا تحتاج إلى وظائف التحميل الزائد؟ وذلك لأنه على الرغم من أن وظيفة واحدة يمكنها حاليًا التعامل مع أنواع بيانات متعددة، إلا أنها لا تستطيع إنتاج إجراءات مختلفة بناءً على أنواع البيانات المختلفة التي تم تمريرها. بدلاً من ذلك، قارن بين الوظيفتين التاليتين:
الوظيفة: احصل على معرف العميل (custnameasstring) كعدد صحيح
"ابحث عن معرف العميل بناءً على اسم العميل."
وظيفة النهاية
الوظيفة: احصل على معرف العميل (شراء طويل) كعدد صحيح
"ابحث عن معرف العميل بناءً على طلب الشراء
وظيفة النهاية
من خلال التحميل الزائد، يمكنك تنفيذ الوظائف بناءً على نوع بيانات الإدخال. يعد هذا أمرًا مهمًا جدًا للإصدار التالي من Visual Basic، لأنه يحتوي على ميزة جديدة - حماية نوع البيانات الافتراضية. بشكل عام، يعد التحويل التلقائي للمتغيرات مفيدًا، ولكن يمكنك أن تتخيل أنه قد يسبب لك مشاكل في بعض الأحيان. على سبيل المثال، في المثال السابق لـ SetVal، ماذا سيحدث إذا كنت تريد إرسال الحرف 7 بدلاً من السلسلة "7"؟ سوف يكتشف الإصدار التالي من Visual Basic هذا الخطأ تلقائيًا. (إذا كان الكود الخاص بك يعتمد على وظيفة Visual Basic السابقة غير القابلة للكتابة، فسيتم تعطيل هذه الميزة)
وأخيرا، تعدد الأشكال هو عملية إعادة تعريف فئة محددة بالفعل. على سبيل المثال، تريد كتابة فئة مشتقة من فئة BaseClass، ولكنك تريد إعادة كتابة الدالة GetCustomerName. في الإصدار التالي من Visual Basic، يمكنك تنفيذ تعريف الفئة هذا باستخدام طريقة جديدة مشابهة لما يلي: (ملاحظة: يعتمد بناء الجملة النهائي على الإصدار الرسمي)
يرثBaseClass
وظيفةGetOrders()
تجاوزاتFunctionGetOrders()
•••
وظيفة النهاية
المزيد من ميزات بناء الجملة
قد يحتوي الإصدار التالي من Visual Basic على أكثر من مجرد التحسينات الموجهة للكائنات التي ذكرتها أعلاه. هناك أيضًا إنشاء سلاسل الرسائل ومعالجة الأخطاء والعديد من التحسينات الجديدة التي طال انتظارها لقابلية التوسع وإمكانية إعادة الاستخدام.
حاليًا، يدعم Visual Basic الطراز المترابط. ورغم أن هذا النموذج يوفر كفاءات حقيقية لتطوير التطبيقات، إلا أنه ليس مثاليًا. سيكون للإصدار التالي من Visual Basic تحسينات في هذا المجال. يستخدم نموذجًا حرًا، والذي سيكون مفيدًا عند كتابة تطبيقات الشبكة القابلة للتطوير. سيتضمن Visual Basic أيضًا بعض بنيات بناء الجملة التي يمكنك استخدامها لإنشاء مؤشرات ترابط متعددة. العمليات النموذجية التي تحدث في الخيط هي كما يلي:
sett=NewThread(NewThreadstart
(عنوان(BaseClass.Function1))
من هذا المثال، يمكنك أن ترى أن الإصدار التالي من Visual Basic يحتوي على بنية AddressOf، والتي يتم استخدامها لإرجاع عنوان الوظيفة. لم تعد مضطرًا إلى تخطي وظائف API التي تتطلب مؤشرات وظيفية! إذا كنت بحاجة إلى مكالمة رد، يمكنك الاستفادة من هذا للقيام بذلك.
هناك تحسين آخر مخطط له وهو معالجة الأخطاء المنظمة. منذ وقت ليس ببعيد، طلب منك Visual Basic إدراج العديد من عبارات OnError في التعليمات البرمجية الخاصة بك. لسنوات كنت غير مرتاح لإدراج الكثير من عبارات GOTO. لقد حذرتني هذه العبارات مرارًا وتكرارًا من عدم استخدامها مرة أخرى! الآن دعونا نواجه المشكلة - نحن بحاجة إلى آلية لمعالجة الأخطاء.
سيقوم الإصدار التالي من Visual Basic بمركزية معالجة الأخطاء. سيدعم VisualBasic محاولة...التقاط...أخيرًا إنشاء مثل تلك اللغات "النبيلة". يمكنك وضع روتين فرعي يحتوي على معالجة الأخطاء في الجزء العلوي من التعليمات البرمجية الخاصة بك. فيما يلي مثال على تنفيذ معالجة الأخطاء:
سوبسافيفوريت ()
يحاول
فتح "ملف الاختبار"
•••
اكتب رقم 1
يمسك
قتل "ملف الاختبار"
أخيراً
إغلاق رقم 1
نهاية المحاولة
EndSub
هناك تحسينات أخرى مثيرة سيتعرف عليها مستخدمو Visual Basic الحاليون. في الإصدار التالي من Visual Basic، يمكنك تهيئة المتغيرات في نفس الوقت الذي يتم الإعلان عنه:
حجم صحيح = 10
يمكنك أيضًا إنشاء كائن جديد وتهيئته في تعبير. يمكنك أيضًا مشاركة المتغيرات من خلال الفئات. أخيرًا، وليس فقط، يمتد مفهوم الميراث إلى أساس واجهة المستخدم الخاصة بالمشروع. أحد الانتقادات النموذجية لـ Visual Basic هو أنه يجعل من الصعب إنشاء العديد من النماذج المختلفة بناءً على نفس الأساس. (غالبًا ما يكون هذا متطلبًا في بيئة التطوير المشتركة). في الإصدار التالي من Visual Basic، ستتمكن من القيام بذلك من خلال أنواع القوالب.
لقد كانت هذه التحسينات متوقعة منذ سنوات. دعونا نرى. أصبحت اتصالات Visual Basic (التي كنت أقوم بها منذ ما يقرب من اثنتي عشرة سنة) معقدة بشكل متزايد، بما يتجاوز بكثير الإصدار الأول في عام 1991. تم استخدام Visual Basic في الأصل للتصميم السريع وتطوير النماذج الأولية للأدوات الصغيرة والمحمولة في أيامها الأولى. ونتيجة لذلك، اكتسبت Visual Basic سمعة (غير متوقعة، في رأيي) باعتبارها "لغة لعبة". والآن بعد أن أصبح من الواضح أنها لم تعد لعبة، فإن أي شخص يقول ذلك يتصرف انطلاقًا من تحيز أعمى. يوجد الآن عدد كبير من حزم البرامج المعتمدة على Visual Basic في مختلف المجالات. VisualBasic يتطور. في العام الماضي، في مركز الأبحاث، تحدثت مع أحد مطوري البرامج الذي كان يكتب برامج باستخدام Web-Class والتي كانت تتلقى ملايين الزيارات أسبوعيًا.
التغييرات في الإصدار التالي من Visual Basic مثيرة للدهشة. إذا كنت ترغب في الحصول على تلك الفوائد التي يجلبونها، فاستخدمها. إذا كنت لا ترغب في ذلك، فيمكنك بثقة استخدام ما لا تزال تستخدمه. ومع ذلك، من الجيد معرفة أن الوظائف التي تقوم بها C وJava يمكن تنفيذها بلغة مثل Visual Basic التي تعتبر أسهل في الاستخدام من C وJava.
اتجاهات التنمية المستقبلية
ما نوع الانطباع الذي تركه عرض المعاينة هذا عليك؟ إنه سؤال جيد، ولكن يمكنك العثور على الإجابة عليه. في العام الماضي، يمكننا أن نرى بوضوح التغييرات في تطوير ASP. غالبًا ما تتكون برامج التطوير هذه من بعض نصوص ASP سهلة القراءة، ويتم تشغيل البرنامج بأكمله بناءً على هذه البرامج النصية. نظرًا لأن ASP يفسر وينفذ كود البرنامج النصي بالكامل، عند تجميع كل مكون، يكتشف الأشخاص تدريجيًا القيود الكامنة في هذه التقنية. أسمع المزيد والمزيد من المطورين يقولون أنهم يريدون فصل معالجات الأحداث الخاصة بهم تمامًا عن التعليمات البرمجية النصية وتنفيذها ضمن نموذج تجميع أسرع، مكتوب بلغة C++ أو Visual Basic، من خلال واجهة COM للتجميع.
لأي سبب يمكن أن يخطر ببالك، يمكن لـ Visual Basic أن يفي به. إن تصميم المكونات باستخدام Visual Basic ليس في الواقع أكثر صعوبة من استخدام VBScript أو JScript®. يمكنك كتابة تعليمات برمجية يتم تنفيذها بشكل أسرع وتحقق متطلباتك بسهولة. عند إصدار الإصدار التالي من Visual Basic، يمكنك استخدام Visual Basic لإنشاء كائنات موجهة للشبكة متوافقة مع ASP. باختصار، يعتبر اتباع طريق دمج المكونات هو الخيار الأفضل الآن وفي المستقبل.
كما ذكرت سابقًا، هناك قاعدة واسعة من التطبيقات الموجهة للإنترنت والمكتوبة باستخدام Visual Basic (وWebClasses). المشكلة هي أن معظم التطبيقات المستندة إلى WebClasses ليست مصممة بشكل جيد. وهي لا تميز بشكل جيد بين الطبقات المختلفة للتطبيق، مما يخلط بين عمليات الطبقة المتوسطة وواجهات المستخدم المستندة إلى DHTML.
سيقدم الإصدار التالي من Visual Basic فئات WebClasses، وهي أدوات مختارة بعناية لتطوير الويب. لأنه أكثر قابلية للتطوير، وأكثر قوة، ولا يعرف اللغة حقًا. إنه يعمل عبر جميع الأدوات في Visual Studio. إذا انتبهت لبعض القواعد الأساسية للتطوير متعدد الطبقات، فيمكنك إجراء هذا الانتقال بسهولة. يجب إيلاء اهتمام خاص لفصل عملية الطبقة الوسطى وعملية طبقة العرض. يوصى بشدة بالرجوع إلى بنية Windows® DNA2000 عند القيام بهذه المهام. يجب إكمال وظائف معالجة الأحداث الأساسية في الطبقة الوسطى، ويمكنك استخدام مكونات مختلفة مكتوبة باللغة المترجمة المفضلة لديك لتنفيذ هذه الوظائف. يتم بعد ذلك تجميع هذه المكونات في ملف نصي ASP حتى تتمكن المكونات من العمل معًا. سيكون من المثالي أن تضع معظم منطقك في كائنات الأحداث بدلاً من البرامج النصية. إنها ليست فكرة جيدة للانتقالات المستقبلية إلى خدمات الويب فحسب، بل إنها أيضًا ممارسة تستحق المحاكاة. ->