سلسلة تحسين أداء iOS 06|الطريقة الصحيحة لاستخدام الأدوات
الأداة نفسها ليست صعبة. الأمر الصعب هو طرح سؤال واضح، بدلاً من النظر إلى مجموعة من الصور والتوصل إلى أي نتيجة.
عندما تواصلت مع شركة Instruments لأول مرة، كانت التجربة مشابهة جدًا:
- أداة مفتوحة
- تسجيل مقطع
- رأيت الكثير من المنحنيات والجداول الزمنية
- أعتقد أن هناك الكثير من المعلومات
- لكن في النهاية مازلت لا أستطيع معرفة ما هي المشكلة.
ظاهريًا، يبدو أن الأدوات صعبة للغاية، ولكنها في الواقع أقرب إلى الموقف الشائع عندما تدخلها بسؤال غامض للغاية.
لقد كان الاستخدام الفعال حقًا للأدوات دائمًا هو:
ابدأ بطرح سؤال محدد بدرجة كافية ودع الأدوات تساعد في تضييق نطاقه.
1. الأدوات هي الأكثر خوفًا من اعتبارها “ماسحًا ضوئيًا عالميًا”
عندما تواجه العديد من الفرق مشاكل في الأداء، سيقولون:
- افتح الأدوات وألق نظرة
هذه الجملة نفسها صحيحة، ولكن دون النصف الثاني:
- ماذا تريد أن ترى بالضبط؟
- ما الفرضية التي تريد اختبارها؟
- هل المشكلة حاليًا تتعلق بوحدة المعالجة المركزية أو الذاكرة أو الموضوع الرئيسي؟
يمكن لهذه الآلات أن تصبح بسهولة “مضخمًا للمعلومات”:
- الكثير من المعلومات
- الكثير من الصور
- الكثير من الخطوط
- ولكن ليس هناك نتيجة واضحة
لذلك أفضل أن أفكر في الأمر على أنه “أداة للتحقق والتضييق” بدلاً من “الماسح الضوئي الذي يقدم الإجابات تلقائيًا”.
2. إذا كانت هناك مشكلة أولاً، فاختر صفحة الأداة، وليس العكس.
عادة ما يكون التسلسل الأكثر كفاءة هو:
- حدد أولاً نوع المشكلة التي تشبه المشكلة.
- قرر أي نوع من الأدوات تريد فتحه
على سبيل المثال:
- بدء التشغيل البطيء: أكثر اهتمامًا بالتوزيع الزمني لمرحلة بدء التشغيل
- بطاقة القائمة: أكثر اهتمامًا بالموضوع الرئيسي والمشكلات المتعلقة بالإطار
- ذاكرة عالية: أكثر اهتمامًا بالأشياء واتجاهات تغيير الذاكرة
- التدفئة واستهلاك الطاقة: أكثر اهتمامًا بنشاط وحدة المعالجة المركزية على المدى الطويل ومهام الخلفية
إذا لم يتم تصنيف المشكلة بعد، فقط قم بفتح الأداة مباشرة. من السهل رؤية كل شيء على أنه مشكلة، وفي النهاية لا يمكن قول أي شيء بدقة.
3. ليس للأدوات أي فوائد أثناء الاستخدام. ظاهريًا، يبدو أنه لا يمكن النقر، لكنه في الواقع أقرب إلى مسار «الظاهرة ← الفرضية ← التحقق».
ما أستخدمه في كثير من الأحيان هو:
1. سجل الظاهرة أولا
على سبيل المثال:
- تأخر واضح عند تمرير القائمة بسرعة
- يستغرق النقر على الشاشة الأولى للصفحة الرئيسية وقتًا طويلاً
- الذاكرة تزداد قوة بعد إعادة إدخال صفحة معينة عدة مرات.
2. قم بوضع فرضية مؤقتة أخرى
على سبيل المثال:
- ربما يكون الخيط الرئيسي مشغولاً بإعادة الحساب
- ربما تم إنجاز الكثير من العمل على المسار الحرج للشاشة الأولى
- ربما لم يتم تحرير الكائن أو لم تتم إعادة استخدام ذاكرة التخزين المؤقت
3. استخدم الأدوات للتحقق من هذه الفرضية
وبهذه الطريقة، عندما تنظر إلى الصورة، فأنت لا “تشاهد المتعة” فحسب، بل تجيب على سؤال محدد.
4. أعظم قيمة للأدوات هي تحديد “الطبقة التي تكمن المشكلة أساسًا فيها”
هذا مهم جدا.
إن ما نحتاج إليه في المرحلة المبكرة للعديد من مشكلات الأداء هو معرفة ما يلي أولاً:
- مشكلة في وحدة المعالجة المركزية بشكل رئيسي
- أم أنها مشكلة الموضوع الرئيسي؟
- أم أنها مسألة اتجاه الذاكرة؟
- هل ما زالت هناك مشكلة في رابط بدء التشغيل؟
بمجرد أن يكون الحكم على المستوى صحيحًا، سيكون الحفر اللاحق أسهل بكثير. لذلك لا أتوقع أن تعطيني الآلات “الإجابة النهائية” مباشرة في المرة الأولى. أتوقع أن يساعدني ذلك في تضييق النطاق بشكل كبير.
5. سوء فهم شائع: ركز فقط على القيمة، وليس على مسار العملية
بعد التسجيل، سيولي بعض الأشخاص اهتمامًا خاصًا لما يلي:
- هل عدد معين مرتفع؟
- هل قمة معينة جميلة؟
من المؤكد أنها تستحق النظر إليها، لكن الأرقام نفسها يمكن أن تفقد سياقها بسهولة عندما يتم إخراجها من السياق.
على سبيل المثال، يجب أن تعرف أيضًا:
- ما هي العملية التي حدثت بعدها هذه الذروة؟
- هل هي بداية باردة، أو تمرير، أو قص الصفحة، أو العودة إلى المقدمة؟
- ما الذي فعله المستخدم بالضبط عند حدوث المشكلة؟
نظرًا لأن مشكلات الأداء ليست مشكلات ثابتة، فهي دائمًا مرتبطة بمسار معين.
6. أسلوب عقلي أقرب إلى القتال الفعلي
ولو أختصرت الأمر في كلمات بسيطة لقلت:
- لا تأتي فقط وترى كل شيء.
- قرر أولاً ما الذي يجب التحقق منه
- ابحث أولاً عن “أين تكمن المشكلة الرئيسية”
- ثم حفر أعمق على هذا المستوى
أي أن الأدوات أشبه بما يلي:
- عدسة مكبرة
- محدد المواقع
بدلاً من المساعد الذكي الذي “سيخبرك تلقائيًا بالسبب الجذري عند فتحه”.
7. الخلاصة: إذا كنت تعرف كيفية استخدام الأدوات، فسوف تطرح عليك الأسئلة.
ولكي أختصر الأمر أقول:
إن الفرضية القائلة بأن الأدوات مفيدة حقًا هي الدخول في مشكلة محددة بدرجة كافية والسماح للأدوات بالمساعدة في التحقق من المشكلة أو تضييق نطاقها.
بمجرد حصولك على هذا التسلسل بشكل صحيح، يمكن أن يكون ذا قيمة لا تصدق؛ إذا كان الترتيب خاطئا، فيمكن أن يصبح بسهولة “النظر إلى مجموعة من الصور، ولكن في النهاية لم ينزل أي شيء”.
What to read next
Want more posts about iOS Performance Optimization?
Posts in the same category are usually the best next step for reading more on this topic.
View same categoryWant to keep following #iOS?
Tags are useful for related tools, specific problems, and similar troubleshooting notes.
View same tagWant to explore another direction?
If you are not sure what to read next, return to the homepage and start from categories, topics, or latest updates.
Back home