الجديد

فصول جزئية في VB.NET

فصول جزئية في VB.NET



We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

فئات Partial Classes هي إحدى ميزات VB.NET المستخدمة في كل مكان تقريبًا ، ولكن لا يوجد الكثير مكتوب عنها. قد يكون هذا بسبب عدم وجود الكثير من تطبيقات "المطور" الواضحة لذلك حتى الآن. الاستخدام الأساسي هو الطريقة التي يتم بها إنشاء حلول ASP.NET و VB.NET في Visual Studio حيث يكون أحد هذه الميزات "المخفية" عادةً.

الفئة الجزئية هي ببساطة تعريف فئة مقسم إلى أكثر من ملف فعلي واحد. لا تحدث الفصول الجزئية فرقًا في المحول البرمجي لأن كل الملفات التي تتكون منها فئة يتم دمجها ببساطة في كيان واحد للمترجم. بما أن الفصول يتم دمجها معًا وتجميعها ، لا يمكنك مزج اللغات. بمعنى ، لا يمكن أن يكون لديك فصل جزئي في C # وآخر في VB. لا يمكنك تمتد التجميعات مع فئات جزئية سواء. كلهم يجب أن يكونوا في نفس التجمع.

يستخدم Visual Studio نفسه هذا كثيرًا ، خاصة في صفحات الويب حيث يعد مفهومًا رئيسيًا في ملفات "الكود خلف". سنرى كيف يعمل هذا في Visual Studio ، ولكن فهم ما الذي تغير في Visual Studio 2005 عند تقديمه يعد نقطة انطلاق جيدة.

في Visual Studio 2003 ، كان الكود "المخفي" لتطبيق Windows كله في قسم يسمى "علامة المنطقة التي تم إنشاؤها بواسطة Windows Form Designer". ولكن كان لا يزال هناك كل شيء في نفس الملف وكان من السهل عرض وتغيير الرمز في المنطقة. الكل من رمز متاح للتطبيق الخاص بك في .NET. ولكن نظرًا لأن بعضها عبارة عن رمز لا يجب عليك العبث به ، فقد تم حفظه في تلك المنطقة المخفية. (لا يزال من الممكن استخدام المناطق للرمز الخاص بك ، ولكن Visual Studio لم يعد يستخدمها بعد الآن.)

في Visual Studio 2005 (Framework 2.0) ، فعلت Microsoft نفس الشيء تقريبًا ، لكنهم أخفوا الكود في مكان مختلف: فئة جزئية في ملف منفصل. يمكنك رؤية ذلك في أسفل الرسم التوضيحي أدناه:

--------
انقر هنا لعرض الرسم التوضيحي
انقر فوق الزر السابق في المستعرض الخاص بك للعودة
--------

أحد اختلافات بناء الجملة بين Visual Basic و C # الآن هو أن C # يتطلب ذلك الكل فصول جزئية تكون مؤهلة مع الكلمة جزئي لكن VB لا. لا يحتوي النموذج الرئيسي في VB.NET على أي تصفيات خاصة. لكن بيان الفئة الافتراضية لتطبيق Windows فارغ يشبه هذا باستخدام C #:

فئة جزئية عامة Form1: نموذج

خيارات تصميم Microsoft في أشياء مثل هذه مثيرة للاهتمام. عندما كتب Paul Vick ، ​​مصمم Microsoft VB ، عن اختيار التصميم هذا في مدونته Panopticon الوسطى، استمر النقاش حوله في التعليقات على الصفحات والصفحات.

لنرى كيف يعمل كل هذا مع الكود الحقيقي في الصفحة التالية.

في الصفحة السابقة ، تم شرح مفهوم الطبقات الجزئية. نقوم بتحويل فصل واحد إلى فصلين جزئيين في هذه الصفحة.

فيما يلي فئة سبيل المثال مع طريقة واحدة وخاصية واحدة في مشروع VB.NET

Public_ CombinedClass Private m_Property1 كـ String Public Sub جديد (ByVal Value As String) m_Property1 = Value End Sub Public Sub Method1 () MessageBox.Show (m_Property1) End Property Property Sub (1) باسم String Get Return (إنهاء) String) m_Property1 = value End Set End End End Class

يمكن تسمية هذه الفئة (على سبيل المثال ، في رمز الحدث Click لكائن Button) مع الرمز:

Dim ClassInstance باسم جديد _ CombinedClass ("حول فئات Visual Basic الجزئية") ClassInstance.Method1 ()

يمكننا فصل خصائص وأساليب الفصل في ملفات فعلية مختلفة عن طريق إضافة ملفين جديدين إلى المشروع. اسم الملف الفعلي الأول Partial.methods.vb واسم الثاني Partial.properties.vb. يجب أن تكون أسماء الملفات الفعلية مختلفة لكن أسماء الفئات الجزئية ستكون هي نفسها حتى يتمكن Visual Basic من دمجها عند ترجمة الشفرة.

إنه ليس متطلبات بناء جملة ، لكن معظم المبرمجين يتبعون المثال في Visual Studio لاستخدام أسماء "منقطة" لهذه الفئات. على سبيل المثال ، يستخدم Visual Studio الاسم الافتراضي Form1.Designer.vb للفئة جزئية لنموذج ويندوز. تذكر إضافة الكلمة الأساسية الجزئية لكل فصل وتغيير اسم الفئة الداخلية (وليس اسم الملف) إلى نفس الاسم. لقد استخدمت اسم الفئة الداخلية: PartialClass.

يوضح الرسم التوضيحي أدناه كل رمز المثال والرمز قيد التنفيذ.

--------
انقر هنا لعرض الرسم التوضيحي
انقر فوق الزر السابق في المستعرض الخاص بك للعودة
--------

Visual Studio "يخفي" فئات جزئية مثل Form1.Designer.vb. في الصفحة التالية ، نتعلم كيفية القيام بذلك باستخدام الفصول الجزئية التي أنشأناها للتو.

تشرح الصفحات السابقة مفهوم الفئات الجزئية وتظهر كيفية ترميزها. لكن Microsoft تستخدم خدعة أخرى مع الفئات الجزئية التي تم إنشاؤها بواسطة Visual Studio. أحد أسباب استخدامها هو فصل منطق التطبيق عن كود واجهة المستخدم (واجهة المستخدم). في مشروع كبير ، قد يتم إنشاء هذين النوعين من الشفرات بواسطة فرق مختلفة. إذا كانت في ملفات مختلفة ، فيمكن إنشاؤها وتحديثها بمزيد من المرونة. لكن Microsoft تخطو خطوة أخرى وتخفي الكود الجزئي في Solution Explorer أيضًا. لنفترض أننا أردنا إخفاء الأساليب والخصائص الفصول الجزئية في هذا المشروع؟ هناك طريقة ، ولكنها ليست واضحة ولا تخبرك Microsoft عن ذلك.

أحد الأسباب التي تجعلك لا ترى استخدام الفئات الجزئية التي أوصت بها Microsoft هو أنها غير مدعومة جيدًا في Visual Studio حتى الآن. لإخفاء فئات Partial.methods.vb و Partial.properties.vb التي أنشأناها للتو ، على سبيل المثال ، يتطلب تغيير في vbproj ملف. هذا هو ملف XML ذلك لا يتم عرض حتى في مستكشف الحلول. يمكنك العثور عليه باستخدام مستكشف Windows مع الملفات الأخرى. يتم عرض ملف vbproj في الرسم التوضيحي أدناه.

--------
انقر هنا لعرض الرسم التوضيحي
انقر فوق الزر السابق في المستعرض الخاص بك للعودة
--------

الطريقة التي سنقوم بها هي إضافة فئة "جذر" فارغة تمامًا (يتم ترك فقط رأس الفصل وبيان فئة النهاية) وجعل كلا الفصلين الجزئيين يعتمدان عليه. لذا أضف فصلاً آخر اسمه PartialClassRoot.vb ثم قم بتغيير الاسم الداخلي إلى PartialClass لمطابقة الأولين. هذه المرة ، لدي ليس استخدم الكلمة الأساسية الجزئية لمطابقة الطريقة التي يعمل بها Visual Studio.

إليكم معرفة قليلة عن XML ستكون مفيدة جدًا. نظرًا لأنه سيتعين تحديث هذا الملف يدويًا ، يتعين عليك بناء جملة XML بشكل صحيح. يمكنك تحرير الملف في أي محرر نصوص ASCII - يعمل برنامج Notepad بشكل جيد - أو في محرر XML. اتضح أن لديك واحدة رائعة في Visual Studio وهذا هو ما يظهر في الرسم التوضيحي أدناه. لكن لا يمكنك تحرير ملف vbproj في نفس الوقت الذي تقوم فيه بتحرير المشروع الموجود فيه. لذا أغلق المشروع وافتح ملف vbproj فقط. يجب أن تشاهد الملف المعروض في نافذة التعديل كما هو موضح في الرسم التوضيحي أدناه.

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

--------
انقر هنا لعرض الرسم التوضيحي
انقر فوق الزر السابق في المستعرض الخاص بك للعودة
--------

بالنسبة للكثيرين منا ، ربما يكفي أن نعرف أن هناك فصولاً جزئية موجودة ، فقط حتى نعرف ما هي عليه عندما نحاول تعقب الأخطاء في المستقبل. لتطوير الأنظمة الكبيرة والمعقدة ، يمكن أن تكون معجزة صغيرة لأنها يمكن أن تساعد في تنظيم التعليمات البرمجية بطرق كانت مستحيلة من قبل. (يمكن أن يكون لديك أيضًا هياكل جزئية وواجهات جزئية!) لكن بعض الأشخاص توصلوا إلى أن Microsoft اخترعتها فقط لأسباب داخلية - لجعل إنشاء التعليمات البرمجية الخاصة بهم يعمل بشكل أفضل. حتى أن المؤلف Paul Kimmel قد ذهب إلى أبعد من ذلك يوحي بأن Microsoft قد أنشأت بالفعل فصولاً جزئية لخفض تكاليفها عن طريق تسهيل الاستعانة بمصادر خارجية في أعمال التطوير في جميع أنحاء العالم.

يمكن. إنه نوع الشيء الذي يمكنهم فعله.


شاهد الفيديو: شرح تقطيع وتجزئة ملفات PDF (أغسطس 2022).