الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

طريقة جامدة للتحكم في طريقة عمل أي Method

مغلق
بدأه OOP Emperor في 24 مايو 2007 · 4 رد · 595 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

طريقة جامدة جدا جدا تخليك تتحكم في إن الـ Method دي ما تشتغلش غير في أثناء مرحلة الـ Debug وما تشتغلش أثناء مرحلة الـ Release.

الخطوات:

1. في المشروع بتاعنا هنكتب الـ Method اللي احنا عاوزينها ما تشتغلش غير أثناء عملية الـ Debug فقط. هتكون دي في مثالنا ده:

	Public Sub ShowMessageBox()
		MessageBox.Show("Hello, World.")
	End Sub

2. قبل بداية الـ Method هنضيف السطر ده علشان يبقى الكود كده:

<System.Diagnostics.Conditional("DEBUG")> _
	Public Sub ShowMessageBox()
		MessageBox.Show("Hello, World.")
	End Sub

ملاحظة: لازم نحوط الخاصية Attribute والـ Argument بتاعها بـ < و > ولازم تكون الـ Attribute على نفس السطر مع كود الـ Method بس أنا فصلتهم في سطرين علشان كده استخدمت العلامة _.

3. هنضيف أمر نداء الـ Method بتاعنا في حدث التحميل Load الخاص بالفورم على سبيل المثال علشان يبقى كود الفورم كامل:

Public Class ExampleForm
	<System.Diagnostics.Conditional("DEBUG")> _
	Public Sub ShowMessageBox()
		MessageBox.Show("Hello, World.")
	End Sub

	Private Sub ExampleForm_Load(...) Handles Me.Load
		ShowMessageBox()
	End Sub
End Class

4. هنشغل البرنامج بتاعنا مع مراعات اختيار مرحلة المشروع Debug.

1177246137_8363.gif

هنلاحظ ظهور الرسالة.

5. هنشغل البرنامج مرة تانية بس هنختار المرحلة Release.

1177246138_8598.gif

هنلاحظ عدم ظهور الرسالة.

طب وازاي نستفيد من الخاصية دي؟

طبعا لإن أي برنامج بنعمله مش بنعمل Setup للبرنامج غير في المرحلة Release فاحنا ممكن مثلا نراقب التغييرات اللي بتحصل في المشروع أو إننا نسجل الأخطاء اللي حصلت في ملف على سطح المكتب مثلا بحيث إن الملف ده ما بيتسجلش فيه غير أثناء عمل Debug للبرنامج وما يتسجلش فيه عند اليوزر اللي هيستخدم البرنامج.

#2

بجد فكرة جميلة جدا, وفرت كثرة وضع اكواد في ال Debug وإزالتها عند التنفيذ

جزاك الله خيرا

#3

فعلا هي بتوفر عليك الجهد من إنك تضيف Methods أثناء تصميم البرنامج وتشيلها بعد كده وممكن تنسى تشيل بعض منها وتضطر ترجع للشغل مرة تانية بعد ما تكون قفلته.

#4

او يمكن استخدامها هكذا

Public Sub ShowMessageBox()
#If DEBUG Then
	MessageBox.Show("Hello, World.")
#End If

#If VBC_VER = 8 Then
	MessageBox.Show("Visual Basic Compiler version 8")
#End If
End Sub

مواضيع متنوعة

#5

فعلا طريقة تانية ضافهالنا الأخ moudy شكرا لك.

هذا الموضوع مغلق.

مواضيع مشابهة