Weitere ähnliche Inhalte Ähnlich wie Web performance - الجزء الثاني (20) Mehr von anees abu-hmaid (20) Web performance - الجزء الثاني1. الرحيم الرحمن الله بسم
منه كان من ُدويزي ،
ً ّاجين ناداه من ُجيبيو ،
ً خفيا دعاه من ُحبي ،العالمين ّ
رب لله حمدلا
.العالمين ّ
رب لله حمدلا ،
ً ّارضي الوعد صادق كان من ويهدي ،
ً ّاوفي له كان من يكرمو ،
ً ّايِحي
Web performance - 2
في
جزءلا
الأول
من
هذه
السلسلة
حدثنات
عن
مجموعة
من
المفاهيم
العامة
حول
ال
Web
performance
ولماذا
جبي
أن
نهتم
بهذا
،الموضوع
والآن
سندخل
في
بعض
التفاصيل
بشكل
…عمقا أكثر
عندما
حدثتن
عن
ال
Web performance
فإننا
حدثتن
عن
وسيلة
قياس
موضوعية
للأداء
بالإضافة
إلى
جربةت
المستخدم
المتوقعة
في
الموقع
خاصلا
بنا
بناء
على
ال
Business model
،
،خيليت أو حقيقي بشكل أسرع الإلكتروني الموقع جعلن أن وهو ،سابقا كرناه
ذ ما يعني وهذا
جعلت التي الأساليب بعض استخدام خلال من خيليتو ،الفعلية السرعة يادةبز حقيقيلا بشكله
:التالية الأسئلة إجابة يشمل كله للمستخدم…وهذا أسرع وكأنها تظهر البطيئة العمليات بعض
1
.
بسرعة؟ تحميله تم الموقع هل
2
.
بسرعة؟ المستخدم قبل من معه بالتفاعل يسمح الموقع هل
3
.
حتاجت ما عملية هناك بأن المستخدم لإعلام الوسائل بعض استخدام أو توفير يتم هل
إلى
وقت؟
مثلا
إظهار
loading spinner
؟
2. 4
.
وهل وسلس؟ سهل بشكل الصفحة في المعروضة البيانات بين التنقل عملية تتم هل
عملية
ال
scroll
تتم
بشكل
سلس
أيضا؟
ندركها أن جبي التي العناوين من مهمة مجموعة هناك أن القول يمكن ،أعلاه كر
ذ ما على بناء
أو
أن
ندرسها
أو
أن
حدثتن
عنها
ضمن
سياق
حديثلا
عن
ال
Web performance
،
وهي
:يلي بما سردها ويمكن ،الأداء مشاكل جةلمعا أو لقياس الرئيسية الأبواب
●
Reducing overall load time
:
تقليل
الوقت
الإجمالي
لتحميل
الموقع
الإلكتروني
،مهمة نقاط بعدة التفكير عليك بهذا وللقيام ،به التفكير يمكنك ما أول بك خاصلا
:وهي
○
ما
هو
الوقت
الإجمالي
اللازم
لتحميل
جميع
ال
files
يةالضرور
على
جهاز
المستخدم؟
○
ما
هي
جامحالأ
خاصةلا
بهذه
ال
files
؟
○
ما
هو
عدد
هذه
ال
files
؟
تمثل والتي المشكلة هذه حلل اتباعها يمكنك التي جياتيالإسترات من العديد هناك ،تقنيا
:هي جياتيالاسترات هذه ومن ،السابقة الأسئلة على إجابة ما بشكل
○
يمكن ما أصغر إلى الملفات جمح تقليل
○
تقليل
عدد
ال
HTTP request
قدر
الإمكان
○
مثل ،ممكن وقت أقرب في الملفات تحميل في تساهم تقنيات استخدام
استخدام
ال
Preload
.
3. ●
Making the site usable as soon as possible
:
من
البديهي
أن
الموقع
كلما
هذا جعللو ،المستخدم وبين بينه الثقة زادت كلما ،للاستخدام قابليته في أسرع كان
ممكنا
جبي
أن
نهتم
بكيفية
تحميل
ال
assets
خاصةلا
بالموقع
،الإلكتروني
وهذا
يعني
ترتيب
ال
assets
المراد
تحميلها
بشكل
،منطقي
حيثب
يتمكن
المستخدم
من
إجراء
أول
action
حتاجهي
،بسرعة
وهذه
فكرة
،بسيطة
فالملفات
التي
لن
حتاجهاي
المستخدم
،فورا
بال هذا وسيتم ،المطلوبة الملفات تحميل من ننتهي حتى تحميلها تأجيل يمكننا
background
دون
أن
يشعر
المستخدم
،!بذلك
ماك
يمكن
فصل
الملفات
التي
لا
حتاجهان
جلبهانو
عند
الضرورة
فقط
(
lazy loading
،)
وهذا
الوقت
حتى
يصبح
كل
شيء
جاهزا
للتفاعل
يطلق
عليه
time to interactive
.
●
Smoothness and interactivity
:
تعد
هذه
النقطة
من
النقاط
البديهية
،والبسيطة
يقصدو ،مشاكل فيها وجد إن المستخدم يزعج قد ما أكثر من الوقت نفس في لكنها
خاصةلا المكونات مع التفاعل على والقدرة والسلاسة السهولة مقدار هو النقطة بهذه
بالموقع
،الإلكتروني
وهذا
يشمل
الكثير
من
الأشياء
منها
،مثلا
هل
ال
scroll
يعمل
بشكل
سلس؟
هل
ال
buttons
يمكن
الضغط
عليها؟
هل
ال
popup
تظهر
للمستخدم
بسرعة؟
هل
هناك
مشاكل
بال
animation
،؟
هذه
المشاكل
كلها
إن
وجدت
يمكن
ال استخدام منها ،سلس التطبيق من جعلت والتي الطرق من والعديد بالكثير حلها
css animation
بدلا
من
js Animation
،
وتقليل
عمليات
ال
repaints
لل
UI
من
خلال
ال
DOM
قدر
.الإمكان
4. ●
Perceived performance
:
إن
مقدار
الإحساس
بسرعة
الموقع
للمستخدمين
وطبيعة
تبني قد لأنك ،!للموقع حقيقيةلا السرعة من أهم الإحساس هذا على بناء إنفعالاتهم
تعد لذلك ،!جربتهت على بناء سيء يراه المستخدم لكن ،القياس خلال من يعسر موقع
الأمر هذا ،لكن ،الأهم تكن لم إن مهمة عملية المستخدمين قبل من الأداء يةرؤ
خلال من الأداء قياس على تعتمد العملية هذه لأن وذلك ،قياسه السهل من ليس
حفاظلا كيفية على هنا حرصلا يتم ،لذلك ،للموقع المستخدمون منها ينظر التي يةالزاو
إظهار لذلك الوسائل ومن ،الانتظار وقت في الموقع مع متفاعلا وإبقائه المستخدم على
ال
spinner
أو
مجموعة
من
ال
hints
المتعلقة
خدمات…إلىلبا
،آخره
ومع
أنك
في
مع بالتفاعل قمت أنك إلا ،القياسية الناحية من الموقع سرعة يادةبز هنا تقم لم الواقع
شعورا يعطيهو ،عطل أي هناك يوجد ولا ،يعمل زال ما الموقع بأن ليشعر المستخدم
…العمليات استمرار أو حدوثب متغيرا
●
Performance measurements
:
في
هذه
جزئيةلا
سنقوم
بقياس
الأداء
بشكل
في ستساعدنا التي الوسائل أو العمليات أو حساباتلا من مجموعة خلال من حقيقي
هل ،فاشلة أم حةجنا هي هل ،الأداء ناحية من يقدمها التي خدماتلوا التطبيق تقييم
مع ثباتها أو حسنهات نضمن وهل ،الوقت مع جودةلا مستوى على حافظةمال استطعنا
…!سوء تزداد الوقت مع أنها أم ،الوقت؟
خصائصلا من والعديد الكثير هناك بأن القول يمكننا ،نقاط من سبق ما على بناء
والإضافات
والوسائل
التي
يمكنها
أن
تؤثر
على
ال
Performance
بشكل
حقيقي
ومباشر
أو
5. كز
تر أعلاه وردت التي النقاط جميع فإن ،لذلك ،المستخدم قبل من وشعوري خيليت بشكل
لبناء بالإضافة ،التفاعل لبدء اللازم والوقت حتوىمال لتحميل اللازم الوقت تقليل على وتهتم
…المستخدمين مع جيدة جربةت
:مهمة ومفردات مصطلحات
●
latency
:
يقصد
بذلك
الوقت
المستغرق
لإرسال
حزمة
من
البيانات
من
نقطة
إلى
نقطة
أخرى
(من
ال
source
إلى
destination
)
مع
الوقت
المستغرق
لاستقبال
النتيجة
من
قبل
ال
source
،جددام
،باختصار
هو
الوقت
المستغرق
من
حظةل
إرسال
request
من
قبل
المستخدم
ولغاية
عودة
ال
response
،إليه
وكلما
قلت
قيمة
ال
latency
كلما
كان
الأداء
،!أفضل
وكلما
زادت
قيمة
ال
latency
كلما
كان
الأداء
…أسوأ
●
preload
:
هي
قيمة
يتم
استخدامها
أو
وضعها
داخل
ال
rel attribute
في
ال
link
tag
،
هذه
القيمة
ببساطة
تقوم
على
إعطاء
يةأولو
جلبل
ال
resources
المهمة
خصوصا وعديدة كثيرة مزايا القيمة هذه وتقدم ،وقت أسرع في للصفحة يةوالضرور
جمحال ذو الفيديو أو سكربت جافالا ملفات أو خطوطلا ملفات أو الصور جلب عند
الكبير…إلى
،آخره
من
المزايا
التي
تقدمها
أنك
ستضمن
تحميل
ال
resource
المطلوبة
من تحميله تم ما خزينت وسيتم ،بدونها كانت لو مما أفضل وبشكل المتوقعة يةبالأولو
resource
في
ال
cache
خاصلا
بالمتصفح
ليقوم
باستخدامها
في
صفحة
أخرى
عند
،…حاجةلا
وهذا
كله
يؤثر
جابايإ
على
ال
performance
حسنهيو
بشكل
…ملحوظ