فيجوال بيسك (.NET)
| نموذج | متعدد النماذج : منظم ، إلزامي ، موجه نحو الكائنات ، تصريحي ، عام ، تأملي وموجه نحو الأحداث |
|---|---|
| صمم بواسطة | مايكروسوفت |
| المطور | مايكروسوفت |
| ظهرت لأول مرة | 2001 |
| إصدار مستقر | 17.9.2 [1]
/ 27 فبراير 2024 |
| الانضباط في الطباعة | ثابت ، قوي وضعيف ، [2] آمن وغير آمن ، [2] اسمي |
| منصة | إطار عمل .NET ، Mono ، .NET [3] [4] |
| نظام التشغيل | بشكل أساسي على Windows وأيضًا على Android و BSD و iOS و Linux و macOS و Solaris و Unix |
| رخصة | مُجمِّع Roslyn : ترخيص Apache 2.0 [5] |
| ملحقات اسم الملف | .vb |
| موقع إلكتروني | docs.microsoft.com/dotnet/visual-basic/ |
| التنفيذات الرئيسية | |
| مجموعة أدوات تطوير البرامج .NET Framework ومترجم Roslyn و Mono | |
| اللهجات | |
| مايكروسوفت فيجوال بيسك | |
| متأثر بـ | |
| فيجوال بيسك الكلاسيكي | |
| متأثر | |
| أساسي صغير ، عطارد | |
Visual Basic ( VB )، المسمى في الأصل Visual Basic .NET ( VB.NET )، هي لغة برمجة متعددة النماذج وموجهة للكائنات ، تم تنفيذها على .NET و Mono و .NET Framework . أطلقت Microsoft VB.NET في عام 2002 كخليفة للغة Visual Basic الأصلية ، والتي كان آخر إصدار منها هو Visual Basic 6.0. على الرغم من إسقاط جزء ".NET" من الاسم في عام 2005، تستخدم هذه المقالة "Visual Basic [.NET]" للإشارة إلى جميع لغات Visual Basic التي تم إصدارها منذ عام 2002، من أجل التمييز بينها وبين Visual Basic الكلاسيكي . إلى جانب C# و F# ، فهي واحدة من اللغات الرئيسية الثلاث المستهدفة لنظام .NET البيئي. قامت Microsoft بتحديث استراتيجية لغة VB الخاصة بها في 6 فبراير 2023، مشيرة إلى أن VB هي لغة مستقرة الآن وستواصل Microsoft صيانتها. [6]
بيئة التطوير المتكاملة (IDE) من Microsoft لتطوير Visual Basic هي Visual Studio . معظم إصدارات Visual Studio تجارية ؛ والاستثناءات الوحيدة هي Visual Studio Express و Visual Studio Community ، وهما برنامجان مجانيان . بالإضافة إلى ذلك، تتضمن مجموعة أدوات تطوير .NET Framework مُجمِّع سطر أوامر مجاني يسمى vbc.exe. يتضمن Mono أيضًا مُجمِّع سطر أوامر VB.NET.
غالبًا ما يتم استخدام Visual Basic جنبًا إلى جنب مع مكتبة واجهة المستخدم الرسومية Windows Forms لإنشاء تطبيقات سطح المكتب لنظام التشغيل Windows . تتضمن برمجة Windows Forms باستخدام Visual Basic سحب عناصر التحكم وإفلاتها على نموذج باستخدام مصمم واجهة المستخدم الرسومية وكتابة التعليمات البرمجية المقابلة لكل عنصر تحكم.
الاستخدام في صنع برامج واجهة المستخدم الرسومية
تُستخدم مكتبة Windows Forms بشكل شائع لإنشاء واجهات المستخدم الرسومية في Visual Basic. تشتق جميع العناصر المرئية في مكتبة فئة Windows Forms من فئة Control. يوفر هذا الحد الأدنى من الوظائف لعناصر واجهة المستخدم مثل الموقع والحجم واللون والخط والنص، بالإضافة إلى الأحداث الشائعة مثل النقر والسحب/الإفلات. تتمتع فئة Control أيضًا بدعم الإرساء للسماح لعنصر التحكم بإعادة ترتيب موضعه تحت عنصر التحكم الرئيسي.
يتم تصميم النماذج عادةً في بيئة التطوير المتكاملة Visual Studio . في Visual Studio، يتم إنشاء النماذج باستخدام تقنيات السحب والإفلات . يتم استخدام أداة لوضع عناصر التحكم (مثل مربعات النص والأزرار وما إلى ذلك) على النموذج (النافذة). تحتوي عناصر التحكم على سمات ومعالجات أحداث مرتبطة بها. يتم توفير القيم الافتراضية عند إنشاء عنصر التحكم، ولكن يمكن للمبرمج تغييرها. يمكن تعديل العديد من قيم السمات أثناء وقت التشغيل بناءً على إجراءات المستخدم أو التغييرات في البيئة، مما يوفر تطبيقًا ديناميكيًا. على سبيل المثال، يمكن إدراج التعليمات البرمجية في معالج حدث تغيير حجم النموذج لإعادة وضع عنصر تحكم بحيث يظل في منتصف النموذج، أو يتوسع لملء النموذج، وما إلى ذلك. من خلال إدراج التعليمات البرمجية في معالج الحدث لضغط مفتاح في مربع نص، يمكن للبرنامج ترجمة حالة النص الذي يتم إدخاله تلقائيًا، أو حتى منع إدراج أحرف معينة.
بناء الجملة
هذا القسم يحتاج إلى التوسعة ، يمكنك المساعدة بإضافة المزيد إليه. ( أبريل 2014 ) |
يستخدم Visual Basic عبارات لتحديد الإجراءات. العبارة الأكثر شيوعًا هي عبارة تعبيرية، تتكون من تعبير يجب تقييمه، على سطر واحد. كجزء من هذا التقييم، يمكن استدعاء وظائف أو برامج فرعية ويمكن تعيين قيم جديدة للمتغيرات . لتعديل التنفيذ المتسلسل الطبيعي للعبارات، يوفر Visual Basic العديد من عبارات تدفق التحكم التي يتم تحديدها بواسطة كلمات رئيسية محجوزة. يتم دعم البرمجة المنظمة من خلال العديد من البنيات بما في ذلك بنيتان للتنفيذ الشرطي ( ... ... ... و ... ... ) وأربعة بنى تنفيذ تكرارية (حلقة) ( ... ، ... ، ، و ... ). تحتوي عبارة ... على أقسام تهيئة واختبار منفصلة، ويجب أن يكون كلاهما موجودًا. (انظر الأمثلة أدناه.) تنتقل العبارة عبر كل قيمة في القائمة.
IfThenElseEnd IfSelect CaseCaseEnd SelectDoLoopForToFor EachWhileEnd WhileForToFor Each
بالإضافة إلى ذلك، في Visual Basic:
- لا توجد طريقة موحدة لتحديد كتل العبارات. وبدلاً من ذلك، يتم تفسير كلمات رئيسية معينة، مثل "If … Then" أو "Sub" كبداية لكتل فرعية من التعليمات البرمجية ولها كلمات رئيسية مطابقة للإنهاء مثل "End If" أو "End Sub".
- يتم إنهاء العبارات إما بعلامة النقطتين (":") أو بنهاية السطر . يتم تمكين العبارات متعددة الأسطر في Visual Basic بعلامة " _ " في نهاية كل سطر. تم إزالة الحاجة إلى حرف الاستمرارية السفلي إلى حد كبير في الإصدار 10 والإصدارات اللاحقة. [7]
- يتم استخدام علامة التساوي ("=") في تعيين القيم للمتغيرات وفي المقارنة.
- تُستخدم الأقواس الدائرية مع المصفوفات ، سواء للإعلان عنها أو للحصول على قيمة عند مؤشر معين في أحدها. يستخدم Visual Basic الأقواس الدائرية لتحديد معلمات البرامج الفرعية أو الوظائف.
- تشير علامة الاقتباس المفردة (') أو الكلمة الأساسية
REM، الموضوعة في بداية السطر أو بعد أي عدد من المسافات أو أحرف الجدولة في بداية السطر، أو بعد أي رمز آخر على السطر، إلى أن (بقية) السطر عبارة عن تعليق .
مثال بسيط
فيما يلي برنامج Visual Basic بسيط للغاية، وهو نسخة من المثال الكلاسيكي " Hello, World! " تم إنشاؤه كتطبيق وحدة تحكم:
الوحدة الوحدة 1
Sub Main () ' برنامج العرض التوضيحي الكلاسيكي "Hello, World!" Console.WriteLine ( " Hello , World!" ) End Sub
الوحدة النهائية
يتم طباعة " Hello, World! " في نافذة سطر الأوامر . يخدم كل سطر غرضًا محددًا، على النحو التالي:
الوحدة الوحدة 1
هذا تعريف وحدة نمطية. الوحدات النمطية هي قسم من التعليمات البرمجية، والتي يمكن أن تحتوي على أي نوع من الكائنات، مثل الثوابت أو المتغيرات أو الوظائف أو الطرق أو الفئات، ولكن لا يمكن إنشاؤها ككائنات مثل الفئات ولا يمكن أن ترث من وحدات نمطية أخرى. تعمل الوحدات النمطية كحاويات للتعليمات البرمجية التي يمكن الرجوع إليها من أجزاء أخرى من البرنامج. [8]
من الممارسات الشائعة أن يكون للوحدة النمطية وملف التعليمات البرمجية الذي يحتوي عليها نفس الاسم. ومع ذلك، هذا ليس مطلوبًا، حيث قد يحتوي ملف التعليمات البرمجية الواحد على أكثر من وحدة نمطية أو فئة.
فرعي رئيسي ()
يحدد هذا السطر برنامجًا فرعيًا يسمى "Main". "Main" هي نقطة الدخول، حيث يبدأ البرنامج في التنفيذ. [9]
لوحة التحكم .WriteLine ( " مرحبا بالعالم!" )
يؤدي هذا السطر المهمة الفعلية المتمثلة في كتابة الناتج. Console هو كائن نظام، يمثل واجهة سطر أوامر (تُعرف أيضًا باسم "وحدة التحكم") ويمنح وصولاً برمجيًا إلى تدفقات نظام التشغيل القياسية . يستدعي البرنامج طريقة Console WriteLine، مما يتسبب في عرض السلسلة التي تم تمريرها إليه على وحدة التحكم.
بدلاً من Console.WriteLine، يمكن استخدام MsgBox، الذي يطبع الرسالة في مربع حوار بدلاً من نافذة سطر الأوامر. [10]
مثال معقد
يقوم هذا الجزء من التعليمات البرمجية بإخراج مثلث فلويد إلى وحدة التحكم:
استيراد System.Console
برنامج الوحدة
Sub Main () صفوف باهتة كعدد صحيح
' التحقق من صحة الإدخال.
افعل حتى عدد صحيح . TryParse ( ReadLine ( "أدخل قيمة لعدد الصفوف المراد عرضها: " & vbcrlf )، rows ) وأيضًا rows >= 1 WriteLine ( "النطاق المسموح به هو 1 و{0}" ، Integer.MaxValue ) حلقة ' إخراج مثلث فلويد Dim current As Integer = 1 Dim row As Integer Dim column As Integer For row = 1 To rows For column = 1 To row Write ( "{0,-2}" ، current ) current += 1 Next
WriteLine ()
التالي النهاية الفرعية
''' <summary>
' '' مثل Console.ReadLine ولكن يأخذ سلسلة مطالبة. ''' </summary> دالة ReadLine ( اختياري موجه كسلسلة = لا شيء ) كسلسلة إذا كان الموجه ليس لا شيء ثم اكتب ( موجه ) نهاية إذا
العودة إلى وحدة التحكم . ReadLine () نهاية الدالة
الوحدة النهائية
مقارنة مع Visual Basic الكلاسيكي
إن ما إذا كان ينبغي اعتبار Visual Basic .NET مجرد إصدار آخر من Visual Basic أو لغة مختلفة تمامًا هو موضوع نقاش. هناك إضافات جديدة لدعم الميزات الجديدة، مثل معالجة الاستثناءات المنظمة والتعبيرات المختصرة. كما حدث تغييران مهمان في نوع البيانات مع الانتقال إلى VB.NET: مقارنة بـ Visual Basic 6، تضاعف طول Integer نوع البيانات من 16 بت إلى 32 بت، وتضاعف طول Long نوع البيانات من 32 بت إلى 64 بت. وهذا ينطبق على جميع إصدارات VB.NET. يُعرف العدد الصحيح المكون من 16 بت في جميع إصدارات VB.NET الآن باسم Short. وبالمثل، فإن محرر نماذج Windows مشابه جدًا في الأسلوب والوظيفة لمحرر نماذج Visual Basic.
الأشياء التي تغيرت بشكل كبير هي الدلالات - من لغة برمجة تعتمد على الكائنات تعمل على محرك حتمي يعتمد على COM إلى لغة موجهة للكائنات بالكامل مدعومة بإطار عمل .NET ، والذي يتكون من مزيج من وقت تشغيل اللغة المشتركة ( آلة افتراضية تستخدم جمع القمامة الجيلي ومحرك تجميع في الوقت المناسب ) ومكتبة فئة أكبر بكثير . إن زيادة اتساع الأخير هي أيضًا مشكلة يتعين على مطوري VB التعامل معها عند القدوم إلى اللغة، على الرغم من معالجة هذه المشكلة إلى حد ما من خلال ميزة My في Visual Studio 2005.
لقد غيرت التغييرات العديد من الافتراضات الأساسية حول الشيء "الصحيح" الواجب فعله فيما يتعلق بالأداء والقدرة على الصيانة. لم تعد بعض الوظائف والمكتبات موجودة؛ والبعض الآخر متاح، ولكن ليس بنفس كفاءة البدائل "الأصلية" لـ .NET. حتى إذا تم تجميعها، فإن معظم تطبيقات Visual Basic 6 المحولة ستتطلب مستوى معينًا من إعادة الهيكلة للاستفادة الكاملة من اللغة الجديدة. تتوفر الوثائق لتغطية التغييرات في بناء الجملة، وتطبيقات تصحيح الأخطاء، والنشر والمصطلحات. [11]
أمثلة مقارنة
تقارن الأمثلة البسيطة التالية بين بناء جملة VB وVB.NET. وتفترض هذه الأمثلة أن المطور قد أنشأ نموذجًا، ووضع زرًا عليه، وربط البرامج الفرعية الموضحة في كل مثال بمعالج حدث النقر للزر المذكور. وينشئ كل مثال مربع رسالة "Hello, World" بعد النقر على الزر الموجود في النموذج.
فيجوال بيسك 6:
أمر فرعي خاص1_ Click () MsgBox "مرحبا بالعالم" End Sub
VB.NET (يمكن استخدام فئة MsgBox أو MessageBox):
الزر الفرعي الخاص 1_النقر ( المرسل ككائن ، e كـ EventArgs ) يتعامل مع الزر 1. انقر فوق MsgBox ( "مرحبًا بالعالم" ) End Sub
- يقوم كل من Visual Basic 6 وVisual Basic .NET تلقائيًا بإنشاء عبارات
SubandEnd Subعند النقر المزدوج على الزر المقابل في عرض التصميم. كما يقوم Visual Basic .NET أيضًا بإنشاء عباراتClassand الضروريةEnd Class. يحتاج المطور فقط إلى إضافة العبارة لعرض مربع الرسالة "Hello, World". - يجب إجراء كافة استدعاءات الإجراءات باستخدام أقواس في VB.NET، بينما في Visual Basic 6 كانت هناك اتفاقيات مختلفة للوظائف (الأقواس مطلوبة) والوظائف الفرعية (لا يُسمح بالأقواس، ما لم يتم استدعاؤها باستخدام الكلمة الأساسية
Call). - الأسماء
Command1وButton1ليست إلزامية. ومع ذلك، فهي أسماء افتراضية لزر الأمر في Visual Basic 6 و VB.NET على التوالي. - في VB.NET،
Handlesتُستخدم الكلمة الأساسية لجعل subButton1_Clickمعالجًا لحدثClickالكائنButton1. في Visual Basic 6، يجب أن يكون لـ subs معالج الحدث اسم محدد يتكون من اسم الكائن (Command1)، وشرطة سفلية (_)، واسم الحدث (Click، وبالتاليCommand1_Click). - توجد دالة تسمى
MessageBox.ShowفيMicrosoft.VisualBasicمساحة الاسم والتي يمكن استخدامها (بدلاً منMsgBox) بشكل مشابه للدالة المقابلة في Visual Basic 6. هناك جدال [12] حول الدالة التي يجب استخدامها كأفضل ممارسة (ليس فقط مقتصرة على عرض مربعات الرسائل ولكن أيضًا فيما يتعلق بميزات أخرى لمساحةMicrosoft.VisualBasicالاسم). يفضل بعض المبرمجين القيام بالأشياء "بطريقة .NET"، نظرًا لأن فئات Framework تحتوي على ميزات أكثر وهي أقل ارتباطًا باللغة. يزعم آخرون أن استخدام الميزات الخاصة باللغة يجعل الكود أكثر قابلية للقراءة (على سبيل المثال، استخدامint(C#) أوInteger(VB.NET) بدلاً منSystem.Int32). - في Visual Basic 2008، أصبح تضمين ، اختياريًا.
ByVal sender as ObjectByVal e as EventArgs
يوضح المثال التالي الفرق بين Visual Basic 6 وVB.NET. يقوم كلا المثالين بإغلاق النافذة النشطة .
فيجوال بيسك 6:
Sub cmdClose_Click () إلغاء تحميلي End Sub
VB.NET:
Sub btnClose_Click ( sender As Object , e As EventArgs ) يتعامل مع btnClose . انقر فوق Close () End Sub
تم استبدال البادئة "cmd" بالبادئة "btn"، بما يتوافق مع الاتفاقية الجديدة المذكورة سابقًا. [ which؟ ]
لم يوفر Visual Basic 6 اختصارات مشغل شائعة. الاختصارات التالية مكافئة:
فيجوال بيسك 6:
Sub Timer1_Timer () 'يقلل ارتفاع النموذج بمقدار بكسل واحد لكل نقرة Me . Height = Me . Height - 1 End Sub
VB.NET:
Sub Timer1_Tick ( المرسل ككائن ، e كـ EventArgs ) يتعامل مع Timer1.Tick Me.Height - = 1 End Sub
مقارنة مع C#
تعد لغة C# و Visual Basic أولى لغات البرمجة التي صممتها شركة Microsoft للبرمجة على إطار عمل .NET (ثم أضافت لاحقًا لغة F# والمزيد؛ كما أضاف آخرون لغات أخرى). ورغم أن اللغتين C# و Visual Basic مختلفتان من حيث التركيب النحوي، إلا أن الاختلافات بينهما تنتهي في الغالب. طورت شركة Microsoft كلتا اللغتين لتكونا جزءًا من نفس منصة تطوير إطار عمل .NET. يتم تطويرهما وإدارتهما ودعمهما من قبل نفس فريق تطوير اللغة في Microsoft. [13] يتم تجميعهما إلى نفس لغة الوسيطة (IL)، والتي تعمل على نفس مكتبات وقت تشغيل إطار عمل .NET. [14] وعلى الرغم من وجود بعض الاختلافات في بنيات البرمجة، فإن الاختلافات بينهما هي في الأساس تركيبية، وعلى افتراض تجنب مكتبات "التوافق" الخاصة بـ Visual Basic التي تقدمها Microsoft للمساعدة في التحويل من Visual Basic 6، فإن كل ميزة تقريبًا في VB لها ميزة مكافئة في C# والعكس صحيح. أخيرًا، تشير كلتا اللغتين إلى نفس الفئات الأساسية لإطار عمل .NET لتوسيع وظائفهما. ونتيجة لذلك، وباستثناءات قليلة، يمكن تشغيل برنامج مكتوب بأي من اللغتين من خلال محول تركيب نحوي بسيط للترجمة إلى اللغة الأخرى. هناك العديد من المنتجات مفتوحة المصدر والمتاحة تجاريا لهذه المهمة.
أمثلة
مرحبا بالعالم!
تطبيق نماذج الويندوز
يتطلب زرًا يسمى Button1.
نموذج الصف العام 1
خاص Sub Button1_Click ( المرسل ككائن ، وكـ EventArgs ) يتعامل مع Button1.Click MsgBox ( " Hello world!" ، MsgBoxStyle.Information ، " Hello world!" ) 'إظهار رسالة تقول "Hello world ! " . نهاية فرعية نهاية الفئة

تطبيق وحدة التحكم
الوحدة الوحدة 1
Sub Main () Console.WriteLine ( "Hello world!" ) ' اكتب في وحدة التحكم "Hello world!" وابدأ سطرًا جديدًا. Console.ReadKey () ' يجب على المستخدم الضغط على أي مفتاح قبل انتهاء التطبيق. End Sub End Module
تكلم
تطبيق نماذج الويندوز
يتطلب مربع نص بعنوان "TextBox1" وزرًا يسمى Button1.
الفئة العامة Form1 Sub الخاصة Button1_Click ( المرسل ككائن ، وكـ EventArgs ) تتعامل مع Button1.Click CreateObject ( " Sapi.Spvoice " ) . Speak ( TextBox1.Text ) End Sub End Class
تطبيق وحدة التحكم
الوحدة الوحدة 1
صوت خاص = CreateObject ( "Sapi.Spvoice"" )
نص خاص كسلسلة
فرعي رئيسي ()
لوحة التحكم . اكتب ( "أدخل النص للتحدث: " ) ' قل "أدخل النص للتحدث: "
النص = وحدة التحكم . ReadLine () 'يجب على المستخدم إدخال النص للتحدث.
الصوت . تحدث ( نص ) ' تحدث بالنص الذي أدخله المستخدم.
نهاية الترجمة
الوحدة النهائية
تاريخ الإصدار
يحتاج هذا القسم إلى التحديث . والسبب المذكور هو: تقديم تحديث حول إصدار Visual Studio 2022. ( يونيو 2022 ) |
بعد إصدار Visual Basic .NET الكلاسيكي 6.0، ظهر الإصدار الأول من Visual Basic .NET لأول مرة في عام 2002. اعتبارًا من عام 2020 [تحديث]، تم إصدار عشرة إصدارات من Visual Basic .NET.
2002 (في بي 7.0)
يعتمد الإصدار الأول، Visual Basic .NET، على .NET Framework 1.0 . الميزة الأكثر أهمية هي الكود المُدار ، والذي يتناقض مع Visual Basic الكلاسيكي.
2003 (الإصدار 7.1)
تم إصدار Visual Basic .NET 2003 مع .NET Framework 1.1 . وتضمنت الميزات الجديدة دعمًا لـ .NET Compact Framework ومعالج ترقية VB أفضل . كما تم إجراء تحسينات على أداء وموثوقية .NET IDE (خاصة المترجم الخلفي) ووقت التشغيل. بالإضافة إلى ذلك، أصبح Visual Basic .NET 2003 متاحًا في Visual Studio.NET Academic Edition، وتم توزيعه على عدد معين من العلماء [ كلمات مراوغة ] من كل دولة دون تكلفة.
2005 (في بي 8.0)
بعد Visual Basic .NET 2003، قامت Microsoft بإسقاط ".NET" من اسم المنتج، وأطلقت على الإصدار التالي اسم Visual Basic 2005.
بالنسبة لهذا الإصدار، أضافت Microsoft العديد من الميزات التي تهدف إلى تعزيز تركيز Visual Basic .NET كمنصة لتطوير التطبيقات السريعة وتمييزها بشكل أكبر عن C# .، بما في ذلك:
- ميزة التحرير والاستمرار [ بحاجة لشرح إضافي ]
- تقييم التعبير في وقت التصميم [ يحتاج إلى مزيد من التوضيح ]
- مساحة اسم وهمية تسمى "My"، والتي توفر: [15] [16]
- سهولة الوصول إلى مناطق معينة من إطار عمل .NET والتي تتطلب عادةً كودًا كبيرًا للوصول إليها مثل الاستخدام بدلاً من
My.Form2.Text = " MainForm "System.WindowsApplication1.Forms.Form2.text = " MainForm " - الفئات المولدة ديناميكيًا (على سبيل المثال My.Forms )
- سهولة الوصول إلى مناطق معينة من إطار عمل .NET والتي تتطلب عادةً كودًا كبيرًا للوصول إليها مثل الاستخدام بدلاً من
- محول محسّن من VB إلى VB.NET [17]
- كلمة رئيسية "استخدام"، لتبسيط استخدام الكائنات التي تتطلب نمط التخلص لتحرير الموارد
- ميزة Just My Code ، التي تخفي (تتخطى) التعليمات البرمجية النمطية المكتوبة بواسطة Visual Studio .NET IDE وتعليمات مكتبة النظام أثناء التصحيح
- ربط مصدر البيانات، مما يسهل تطوير قاعدة البيانات الخاصة بالعميل/الخادم
لسد الفجوات بينها وبين لغات .NET الأخرى، أضافت هذه النسخة:
- الأنواع العامة [18]
- الفئات الجزئية ، طريقة لتحديد بعض أجزاء الفئة في ملف واحد ثم إضافة المزيد من التعريفات لاحقًا؛ مفيدة بشكل خاص لدمج كود المستخدم مع الكود الذي تم إنشاؤه تلقائيًا
- التحميل الزائد للمشغل والأنواع القابلة للعدم [19]
- دعم أنواع البيانات الصحيحة غير الموقعة المستخدمة بشكل شائع في اللغات الأخرى
قدم برنامج Visual Basic 2005 IsNotالمشغل الذي يجعل 'If X IsNot Y'المكافئ لـ 'If Not X Is Y'. وقد اكتسب شهرة [20] عندما تبين أنه موضوع طلب براءة اختراع لشركة Microsoft. [21] [22]
2008 (في بي 9.0)
تم إصدار Visual Basic 9.0 مع .NET Framework 3.5 في 19 نوفمبر 2007.
بالنسبة لهذا الإصدار، أضافت Microsoft العديد من الميزات، بما في ذلك:
- عامل شرطي صحيح ، "If(شرط كقيمة منطقية، جزء صحيح، جزء خاطئ)"، ليحل محل الدالة "IIf".
- أنواع مجهولة
- دعم لـ LINQ
- تعبيرات لامدا
- حرفيات XML
- استدلال النوع
- طرق التمديد
2010 (VB 10.0)
في أبريل 2010، أصدرت مايكروسوفت برنامج Visual Basic 2010. كانت مايكروسوفت تخطط لاستخدام Dynamic Language Runtime (DLR) لهذا الإصدار [23] ولكنها تحولت إلى استراتيجية التطور المشترك بين Visual Basic ولغة C# الشقيقة لتقريب اللغتين من بعضهما البعض. تم تحسين القدرة الفطرية لـ Visual Basic على التفاعل ديناميكيًا مع كائنات CLR وCOM للعمل مع اللغات الديناميكية المبنية على DLR مثل IronPython و IronRuby . [24] تم تحسين مُجمِّع Visual Basic لاستنتاج استمرار السطر في مجموعة من السياقات الشائعة، وفي كثير من الحالات إزالة الحاجة إلى أحرف استمرار السطر " _ ". أيضًا، تم استكمال الدعم الحالي للوظائف المضمنة بدعم Subs المضمنة بالإضافة إلى إصدارات متعددة الأسطر من كل من Sub وFunction lambdas. [25]
2012 (VB 11.0)
تم إصدار Visual Basic 2012 جنبًا إلى جنب مع .NET Framework 4.5 . تتضمن الميزات الرئيسية المقدمة في هذا الإصدار ما يلي: [ يحتاج إلى مزيد من التوضيح ]
- البرمجة غير المتزامنة باستخدام عبارات "async" و"await"
- المُكررات
- تسلسل المكالمات
- معلومات المتصل
- الكلمة الأساسية "Global" في عبارات "namespace"
2013 (VB 12.0)
تم إصدار Visual Basic 2013 جنبًا إلى جنب مع .NET Framework 4.5.1 مع Visual Studio 2013. يمكن أيضًا إنشاء تطبيقات .NET Framework 4.5.2 عن طريق تثبيت Developer Pack. [26]
2015 (الإصدار 14.0)
تم إصدار Visual Basic 2015 (الاسم الرمزي VB "14.0") مع Visual Studio 2015. تتضمن ميزات اللغة عامل "؟" جديد لإجراء عمليات فحص null مضمنة، كما تم تضمين ميزة استيفاء سلسلة جديدة لتنسيق السلاسل المضمنة. [27]
2017 (VB 15.x)
تم إصدار Visual Basic 2017 (الاسم الرمزي VB "15.0") مع Visual Studio 2017. ويوسع الدعم لميزات لغة Visual Basic 15 الجديدة مع الإصدارات 2017، 15.3، 15.5، 15.8. ويقدم إعادة هيكلة جديدة تسمح بتنظيم كود المصدر بإجراء واحد. [28] [29]
2019 (الإصدار 16.0)
تم إصدار Visual Basic 2019 (الاسم الرمزي VB "16.0") مع Visual Studio 2019. [30] وهو الإصدار الأول من Visual Basic الذي يركز على .NET Core. [31]
التطوير عبر الأنظمة الأساسية والمفتوح المصدر
تمت كتابة مُجمِّع Visual Basic الرسمي بلغة Visual Basic وهو متاح على GitHub كجزء من منصة مُجمِّع .NET . [32] كان إنشاء أدوات مفتوحة المصدر لتطوير Visual Basic بطيئًا مقارنةً بـ C# ، على الرغم من أن منصة تطوير Mono توفر تنفيذًا لمكتبات خاصة بـ Visual Basic ومُجمِّع متوافق مع Visual Basic 2005 مكتوب بلغة Visual Basic، [33] بالإضافة إلى مكتبات الإطار القياسية مثل مكتبة واجهة المستخدم الرسومية لـ Windows Forms .
MonoDevelop عبارة عن بيئة تطوير متكاملة مفتوحة المصدر . كما أن بيئة Gambas مشابهة لبيئة Visual Basic ولكنها مختلفة عنها، كما هو الحال مع محرر Visual FB الخاص بـ FreeBasic .
انظر أيضا
- مايكروسوفت فيجوال ستوديو اكسبريس
- قائمة مكتبات وأطر عمل .NET
- مقارنة بين C# و Visual Basic .NET
- فيجوال بيسك للتطبيقات
- مايكروسوفت سمول بيسك
- مقارنة بين لغات البرمجة
مراجع
- ^ "ملاحظات إصدار Visual Studio 2022 الإصدار 17.9.2". 27 فبراير 2024. تم الاسترجاع في 27 فبراير 2024 .
- ^ "Option Explicit and Option Strict in Visual Basic .NET and in Visual Basic". دعم . مايكروسوفت . 19 مارس 2008. مؤرشف من الأصل في 4 أبريل 2015. تم الاسترجاع في 22 أغسطس 2013 .
- ^ Dollard, Kathleen (13 نوفمبر 2018). "Visual Basic in .NET Core 3.0". blogs.msdn.microsoft.com . مؤرشف من الأصل في 19 نوفمبر 2018 . تم الاسترجاع في 21 نوفمبر 2018 .
- ^ "تم التخطيط لدعم Visual Basic لـ .NET 5.0 | مدونة Visual Basic". Blogs.msdn.microsoft.com. 11 مارس 2020. مؤرشف من الأصل في 5 يناير 2022. تم الاسترجاع في 26 أغسطس 2020 .
- ^ "Dotnet/Roslyn". GitHub . 2 نوفمبر 2022. مؤرشف من الأصل في 2 مايو 2019. تم الاسترجاع 14 أبريل 2019 .
- ^ KathleenDollard (6 فبراير 2023). "استراتيجية لغة Visual Basic - Visual Basic". learn.microsoft.com . مؤرشف من الأصل في 31 مارس 2023 . تم الاسترجاع في 31 مارس 2023 .
- ^ "الميزات الجديدة في Visual Basic 10". 3 يونيو 2010. مؤرشف من الأصل في 4 مارس 2016. تم الاسترجاع 5 سبتمبر 2015 .
- ^ "Module Statement". MSDN – Developer Center. مؤرشف من الأصل في 9 يناير 2010. تم الاسترجاع في 20 يناير 2010 .
- ^ "الإجراء الرئيسي في Visual Basic". MSDN – Developer Center. مؤرشف من الأصل في 28 يناير 2010. تم الاسترجاع في 20 يناير 2010 .
- ^ "Visual Basic Version of Hello, World". MSDN – Developer Center. مؤرشف من الأصل في 11 يناير 2010. تم الاسترجاع في 20 يناير 2010 .
- ^ "مركز موارد ترحيل Microsoft Visual Basic 6.0". MSDN . Microsoft . مؤرشف من الأصل في 9 نوفمبر 2014 . تم الاسترجاع في 9 نوفمبر 2014 .
- ^ "Visual Studio 2003 Retired Technical documentation". مركز التنزيل لـ Microsoft . مؤرشف من الأصل في 30 ديسمبر 2014. تم الاسترجاع في 24 يوليو 2018 .
- ^ كريل، بول (27 فبراير 2009). "لغات البرمجة المتقاربة من مايكروسوفت | عالم المطورين". إنفوورلد. مؤرشف من الأصل في 26 يناير 2013. تم الاسترجاع في 18 أغسطس 2013 .
- ^ "Microsoft Intermediate Language". Dotnet-guide.com. مؤرشف من الأصل في 2 يونيو 2013. تم الاسترجاع في 18 أغسطس 2013 .
- ^ ماكنزي، دنكان (2006). "التنقل في إطار عمل .NET ومشاريعك باستخدام My Namespace". مجلة MSDN جولة إرشادية حول Visual Studio 2005 2006. مايكروسوفت . مؤرشف من الأصل في 15 فبراير 2014. تم الاسترجاع في 6 فبراير 2014 .
- ^ ويتني، تايلر (نوفمبر 2005). "My.Internals: فحص ميزة Visual Basic My". MSDN . Microsoft . مؤرشف من الأصل في 14 يونيو 2012 . تم الاسترجاع في 6 فبراير 2014 .
- ^ "ما الجديد في معالج ترقية Visual Basic في Visual Basic 2005". msdn2.microsoft.com . مؤرشف من الأصل في 6 أبريل 2008 . تم الاسترجاع في 29 يناير 2008 .
- ^ "تعريف واستخدام Generics في Visual Basic 2005". msdn2.microsoft.com . مؤرشف من الأصل في 23 أبريل 2008 . تم الاسترجاع في 29 يناير 2008 .
- ^ "Operator Overloading in Visual Basic 2005". msdn2.microsoft.com . مؤرشف من الأصل في 23 أبريل 2008 . تم الاسترجاع في 29 يناير 2008 .
- ^ Sherriff, Lucy (22 فبراير 2005). "Real Software تنتقد طلب براءة اختراع MS IsNot". The Register. مؤرشف من الأصل في 3 أغسطس 2009. تم الاسترجاع في 6 أبريل 2009 .
- ^ تافت، داريل ك. (21 فبراير 2005). "Real Software Slams Microsofts Patent Effort". eWeek. مؤرشف من الأصل في 31 يوليو 2012. تم الاسترجاع في 6 أبريل 2009 .
- ^ فيك، بول أ. جونيور؛ بارسان، كوستيكا كورنيليو؛ سيلفر، أماندا ك. (14 مايو 2003). "طلب براءة اختراع الولايات المتحدة: 20040230959". قاعدة بيانات النص الكامل والصور لطلبات براءة الاختراع . مكتب براءات الاختراع والعلامات التجارية الأمريكي. مؤرشف من الأصل في 11 فبراير 2006. تم الاسترجاع في 6 أبريل 2009 .
- ^ "ما هو "VBx"؟". 1 مايو 2007. مؤرشف من الأصل في 25 مايو 2009. تم الاسترجاع في 12 أغسطس 2009.
مع DLR الجديد، لدينا دعم لـ IronPython وIronRuby وJavascript وتجميع VBx الديناميكي الجديد
- ^ "ما الجديد في Visual Basic 2010". Microsoft . 2009. مؤرشف من الأصل في 4 أغسطس 2009. تم الاسترجاع في 12 أغسطس 2009.
يرتبط Visual Basic بالكائنات من اللغات الديناميكية مثل IronPython وIronRuby
- ^ "ما الجديد في Visual Basic 2010". Microsoft. 2010. مؤرشف من الأصل في 26 يوليو 2010. تم الاسترجاع في 1 أغسطس 2010 .
- ^ "قم بتنزيل Microsoft .NET Framework 4.5.2 Developer Pack لأنظمة Windows Vista SP2 وWindows 7 SP1 وWindows 8 وWindows 8.1 وWindows Server 2008 SP2 وWindows Server 2008 R2 SP1 وWindows Server 2012 وWindows Server 2012 R2 من مركز التنزيل الرسمي لـ Microsoft". أرشيف من الأصل في 9 يناير 2020. تم الاسترجاع في 11 يناير 2020 .
- ^ "ميزات لغة جديدة في Visual Basic 14". msdn.com . مؤرشف من الأصل في 25 ديسمبر 2014 . تم الاسترجاع في 5 فبراير 2015 .
- ^ reshmim. "Visual Studio 2017 Release Notes". www.visualstudio.com . مؤرشف من الأصل في 22 يناير 2018 . تم الاسترجاع 5 أبريل 2017 .
- ^ reshmim. "ما الجديد في Visual Basic 2017، 15.3، 15.5، 15.8". www.visualstudio.com . مؤرشف من الأصل في 1 سبتمبر 2019 . تم الاسترجاع في 11 يناير 2020 .
- ^ reshmim. "Visual Studio 2019 Release Notes". www.visualstudio.com . مؤرشف من الأصل في 29 نوفمبر 2021 . تم الاسترجاع 2 أغسطس 2019 .
- ^ reshmim. "ما الجديد في Visual Basic 16.0". www.visualstudio.com . مؤرشف من الأصل في 1 سبتمبر 2019 . تم الاسترجاع في 11 يناير 2020 .
- ^ Roslyn, .NET Foundation, 13 أبريل 2019، تم أرشفة النسخة الأصلية في 22 فبراير 2021 ، تم استرجاعها في 14 أبريل 2019
- ^ "إعادة التوجيه...". www.mono-project.com . مؤرشف من الأصل في 30 يناير 2021 . تم الاسترجاع في 30 يونيو 2008 .
قراءة إضافية
- "مواصفات لغة Visual Basic 8.0". شركة Microsoft Corporation. 15 نوفمبر 2005. مؤرشف من الأصل في 21 يناير 2011. تم الاسترجاع في 10 ديسمبر 2010 .
- "مواصفات لغة Visual Basic 9.0". شركة Microsoft Corporation. 19 ديسمبر 2007. تم الاسترجاع في 28 سبتمبر 2011 .
- "مواصفات لغة Visual Basic 11.0". شركة Microsoft Corporation. 7 يونيو 2013. مؤرشف من الأصل في 5 مارس 2012. تم الاسترجاع في 22 سبتمبر 2013 .
روابط خارجية
- الموقع الرسمي
- مدونة فريق Visual Basic
