• 0
hanysaad

اجعل تنفيذ برنامجك اسرع!

سؤال

ارجو من كل الاعضاء المشاركة فى هذا الموضوع للمقارنة بين الاكواد الاسرع والابطأ فى التنفيذ

وانا سأبدأ بهذه الامثلة

 ' هذه الشفرة بطيئة
   If Test1 And Test2 Then
       Debug.Print "صحيح"
   End If

    ' Test1 إذا لم ينجح اختبار Test2 هذه الشفرة أسرع لأنه لن يتم اختبار
   If Test1 Then
       If Test2 Then
           Debug.Print "صحيح"
       End If
   End If

'============================================
   ' هذه الشفرة بطيئة
   If MyFunction = True Then
       MyCmd.Enabled = True
   Else
       MyCmd.Enabled = False
   End If
   ' هذه الشفرة أسرع
       MyCmd.Enabled = (MyFunction = True)
   ' وهذه الأفضل
       MyCmd.Enabled = MyFunction
'============================================

   ' هذه الشفرة بطيئة
   For I = 1 To 10
       MyCmd(I).Enabled = MyFunction
   Next
   'MyFunction وهذه أسرع لأنه في الشيفرة السابقة سيتم تنفيذ الوظيفة
   'عشر مرات أما في الثانية فسيتم تنفيذها مرة واحدة
    MyResult = MyFunction
   For I = 1 to 10
       MyCmd(I).Enabled = MyResult
   Next

ارجو من الاعضاء اضافة مشاركات بنفس الطريقة للمقارنة بين الاكواد الاسرع والابطأ فى التنفيذ

تم تعديل بواسطه hanysaad
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

3 إجابة على هذا السؤال .

  • 0

اخ هاني وجدت هذا المثال في احد منتديات البرمجة ويظهر كود سريع لتحميل flex grid ويقارن مع كود اخر ابطىء منه اخي سامحني لان الكود ليس لي

Fast_Fill_1370549272002.zip

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الاخ hussein2005

المثال السابق يستخدم flex grid كيف يمكن استخدام DataGrid بنفس السرعة السابقة

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

الاخ hussein2005 والاخ aymanmoftah

شكرا جزيلا على مشاركتم

كود اخر

    
    I = 1
   Do While I <= MyFunction()
       MyNum = MyNum + I
       ......
   Loop
   ' هذه أسرع
    MyResult = MyFunction()
    I = 1
   Do While I <= MyResult
       MyNum = MyNum + I
       ......
   Loop

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .