استخدام مساحات الأسماء في VB.NET

click fraud protection

الطريقة الأكثر شيوعًا لاستخدام مساحات أسماء VB.NET من قبل معظم المبرمجين هو إخبار المترجم عن مكتبات .NET Framework المطلوبة لبرنامج معين. عندما تختار "قالب" لمشروعك (مثل "تطبيق نماذج Windows") أحد الأشياء التي تختارها هي مجموعة محددة من مساحات الأسماء التي سيتم الرجوع إليها تلقائيًا في مشروع. هذا يجعل التعليمات البرمجية في مساحات الأسماء هذه متوفرة لبرنامجك.

على سبيل المثال ، بعض مساحات الأسماء والملفات الفعلية الموجودة بها لتطبيق Windows Forms هي:

النظام> في System.dll
النظام. البيانات> في النظام. Data.dll
النظام. النشر> النظام. Deployment.dll
النظام. رسم> النظام. Drawing.dll
النظام. شبابيك. النماذج> النظام. شبابيك. Forms.dll

يمكنك رؤية (وتغيير) مساحات الأسماء والمراجع لمشروعك في خصائص المشروع ضمن المراجع التبويب.

هذه الطريقة في التفكير في مساحات الأسماء تجعلها تبدو كما لو كانت "مكتبة التعليمات البرمجية" ولكن هذا ليس سوى جزء من الفكرة. الفائدة الحقيقية لمساحات الاسم هي التنظيم.

لن يحصل معظمنا على فرصة إنشاء تسلسل هرمي جديد لمساحة الاسم لأنه يتم إجراؤه مرة واحدة فقط "في البداية" لمكتبة أكواد كبيرة ومعقدة. ولكن ، هنا ، ستتعلم كيفية تفسير مساحات الأسماء التي سيُطلب منك استخدامها في العديد من المؤسسات.

instagram viewer

ماذا تفعل مساحات الأسماء

تجعل مساحات الأسماء من الممكن تنظيم عشرات الآلاف من كائنات .NET Framework وجميع الكائنات التي ينشئها مبرمجو VB في المشاريع أيضًا ، حتى لا تصطدم بها.

على سبيل المثال ، إذا بحثت عن .NET اللون الكائن ، تجد اثنين. هناك اللون الكائن في كليهما:

النظام. رسم
النظام. شبابيك. وسائل الإعلام

إذا قمت بإضافة الواردات بيان لكلا مسامي الاسم (قد يكون من الضروري أيضًا الحصول على مرجع لخصائص المشروع) ...

نظام الواردات. رسم
نظام الواردات. شبابيك. وسائل الإعلام

... ثم بيان مثل ...

تعتيم اللون

... سيتم وضع علامة على أنه خطأ في الملاحظة ، "اللون غامض" وسيشير .NET إلى أن كلا مساحات الاسم تحتوي على كائن بهذا الاسم. يسمى هذا النوع من الأخطاء "تضارب الأسماء".

هذا هو السبب الحقيقي لـ "مساحات الأسماء" وهو أيضًا الطريقة التي يتم بها استخدام مساحات الأسماء في تقنيات أخرى (مثل XML). تتيح مساحات الأسماء إمكانية استخدام نفس اسم الكائن ، مثل اللون، عندما يتناسب الاسم مع الاحتفاظ بالأشياء منظمة. يمكنك تحديد أ اللون الاعتراض في التعليمات البرمجية الخاصة بك وإبقائها مميزة عن تلك الموجودة في .NET (أو رمز المبرمجين الآخرين).

مساحة الاسم MyColor
لون الطبقة العامة
اللون الفرعي ()
' قم بعمل ما
نهاية فرعية
نهاية الفصل الدراسي
نهاية مساحة الاسم

يمكنك أيضا استخدام اللون الاعتراض في مكان آخر في برنامجك مثل هذا:

Dim c As New MyColor. اللون
ج. اللون()

قبل الدخول في بعض الميزات الأخرى ، انتبه إلى أن كل مشروع موجود في مساحة الاسم. يستخدم VB.NET اسم مشروعك (تطبيق Windows 1 لتطبيق النماذج القياسي إذا لم تقم بتغييره) كمساحة الاسم الافتراضية. لرؤية هذا ، قم بإنشاء مشروع جديد (استخدمنا الاسم NSProj وتحقق من أداة متصفح الكائنات):

  1. انقر هنا لعرض الرسم التوضيحي
  2. انقر على عودة زر في متصفحك للعودة

يعرض مستعرض الكائنات مساحة اسم مشروعك الجديد (والكائنات المعرفة تلقائيًا فيه) مباشرةً مع مساحات أسماء .NET Framework. تعد قدرة VB.NET على جعل كائناتك متساوية مع كائنات .NET أحد مفاتيح القوة والمرونة. على سبيل المثال ، هذا هو السبب في أن Intellisense سيعرض الأشياء الخاصة بك بمجرد تعريفها.

من أجل تحقيق ذلك ، دعنا نحدد مشروعًا جديدًا (أطلقنا عليه اسم مشروعنا NewNSProj في نفس الحل (استخدم ملف > أضف > مشروع جديد ...) وتشفير مساحة اسم جديدة في هذا المشروع. ولمجرد جعلها أكثر متعة ، دعنا نضع مساحة الاسم الجديدة في وحدة نمطية جديدة (أطلقنا عليها اسمًا NewNSMod). وبما أنه يجب ترميز كائن كفئة ، فقد أضفنا أيضًا كتلة فئة (تسمى NewNSObj). إليك الشفرة ومستكشف الحل لإظهار كيفية ملاءمتهما معًا:

  1. انقر هنا لعرض الرسم التوضيحي
  2. انقر على عودة زر في متصفحك للعودة

نظرًا لأن الرمز الخاص بك هو "تمامًا مثل رمز Framework" ، فمن الضروري إضافة مرجع إليه NewNSMod في NSProj لاستخدام الكائن في مساحة الاسم ، على الرغم من أنهم في نفس الحل. بمجرد الانتهاء من ذلك ، يمكنك الإعلان عن كائن NSProj بناء على الطريقة في NewNSMod. تحتاج أيضًا إلى "بناء" المشروع بحيث يوجد كائن فعلي كمرجع.

Dim Dim As New NewNSProj. AVBNS.NewNSMod. NewNSObj
س. AVBNSMethod ()

هذا تماما قاتمة بيان بالرغم من ذلك. يمكننا تقصير ذلك باستخدام الواردات بيان باسم مستعار.

الواردات NS = NewNSProj. AVBNS.NewNSMod. NewNSObj
...
خافت كما نيو ان اس
س. AVBNSMethod ()

النقر فوق الزر تشغيل يعرض مسجبوكس من مساحة اسم AVBNS ، "مرحبًا! انها عملت!"

متى ولماذا لاستخدام مساحات الأسماء

كل شيء حتى الآن تم بالفعل بناء الجملة - ال الترميز القواعد التي يجب عليك اتباعها في استخدام مساحات الأسماء. ولكن للاستفادة حقًا ، تحتاج إلى شيئين:

  • مطلب لتنظيم مساحة الاسم في المقام الأول. أنت بحاجة إلى أكثر من مجرد مشروع "Hello World" قبل أن يبدأ تنظيم مساحات الأسماء في السداد.
  • خطة لاستخدامها.

بشكل عام، مايكروسوفت توصي بأن تنظم رمز مؤسستك باستخدام مزيج من اسم شركتك مع اسم المنتج.

لذا ، على سبيل المثال ، إذا كنت كبير مهندسي البرامج في Dr. No's Nose Knows Surgery Surgery ، فقد ترغب في تنظيم مساحات الأسماء الخاصة بك مثل ...

دكتور لا
مستشار
ReadTheirWatchNChargeEm
TellEmNuthin
الجراحة
الفيل، انسان
MyEyeLidsRGone

هذا يشبه منظمة .NET ...

موضوع
النظام
النواة
IO
لينق
البيانات
Odbc
Sql

يتم تحقيق مساحات الأسماء متعددة المستويات بمجرد تداخل كتل مساحة الاسم.

مساحة الاسم DRNo
جراحة مساحة الاسم
مساحة الاسم MyEyeLidsRGone
رمز VB
نهاية مساحة الاسم
نهاية مساحة الاسم
نهاية مساحة الاسم

أو

مساحة الاسم DRNo. الجراحة. MyEyeLidsRGone
رمز VB
نهاية مساحة الاسم
instagram story viewer