English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
تذكر، لا تفعل 10 أشياء في PHP 7
1. لا تستخدم دوال mysql_
اليوم قد حان، حيث لم يعد يجب عليك استخدام mysql_ فقط. قام PHP بإزالة جميع هذه الدوال من النواة، مما يعني أنك بحاجة إلى الانتقال إلى mysqli_ الدوال التي هي أفضل بكثير، أو PDO المرونة.
2. لا تكتب كودًا ضارًا
قد يبدو هذا البند سهلاً، ولكن سيصبح أكثر أهمية لأن تحسين سرعة PHP 7 قد يخفي بعض مشاكلك. لا تكون راضيًا فقط عن سرعة موقعك، لأن الانتقال إلى PHP 7 هو ما يجعله أسرع.
لفهم أهمية السرعة وكيفية تحسين الأشياء، انظر إلى دليلنا البسيط لتحسين السرعة.
كمدرب، يجب عليك دائمًا التأكد من تحميل السكربت عند الحاجة، والربط بهم بقدر الإمكان، كتابة استعلامات قاعدة البيانات كفاءة، والاستفادة من المخزن المؤقت، وما إلى ذلك.
3. لا تستخدم علامة إغلاق PHP في نهاية الملف
يمكنك النظر في ذلك، عندما ينتهي ملف بملف PHP، فإن معظم الكودات الأساسية في WordPress تزيل العلامة PHP في النهاية. في الواقع، يمنع Zend Framework ذلك بشكل خاص. PHP لا يحتاج إلى علامة إغلاق في نهاية الملف، ونحن يمكن أن نضمن عدم إضافة أي مسافات خالية في النهاية.
4. لا تقم ببث استدلال غير ضروري
أنا لا أحب الاستدلال الشخصي. أعلم أنني في بعض الأحيان يكون مفيدًا، ولكن في أحيان أخرى يجعل الكود أكثر صعوبة في الفهم، ويصبح من الصعب التنبؤ بالنتائج.
يقال إن بعض الناس يعتقدون أن هذا يجعل الكود يعمل بشكل أسرع، ولكن وفقًا لبعض البرمجيين المتقدمين في PHP، هذا ليس صحيحًا.
مثال سيء على لماذا الاستدلال ليس جيدًا هو أن PHP يحتوي على shuffle() و sort(). إنهم يعدلون اللوحة الأصلية بدلاً من إرجاع اللوحة المعالجة بعد معالجتها، وهو أمر غير منطقي.
5. لا تنفذ الاستعلامات في الدورة
إجراء الاستعلامات في الدورة غير مجدية. يضيف هذا ضغطًا غير ضروري على نظامك، وقد يمكن الحصول على نفس النتيجة أسرع من الخارج. عندما ألتقي بأمور تحتاج إلى مثل هذه الحالة، أستخدم عادةً استدعاءين منفصلين لحل المشكلة، وأستخدمهما لبناء مصفوفة بيانات. بعد ذلك، أتجول في المصفوفة دون الحاجة إلى تنفيذ استعلامات خلال هذه العملية.
بما أن ووردبريس مستخدم هنا، قد يكون هناك استثناءات. على الرغم من أن get_post_meta() يمكن أن يحصل على الكثير من البيانات من قاعدة البيانات، إذا كنت تمرر على بيانات ميتا الخاصة بمنشور معين، يمكنك استخدامها في الدورة. هذا لأن ووردبريس، عند أول استدعاء، يحصل على جميع البيانات الميتا ويحفظها. الاستدعاءات اللاحقة تستخدم هذه البيانات المخزنة دون استدعاء قاعدة البيانات.
أفضل طريقة لفهم هذه هي قراءة وثائق الدوال، واستخدام أدوات مثل Query Monitor.
6. لا تستخدم * في استعلامات SQL
بالطبع، هذا أكثر مشكلة لـ MySQL، ولكننا عادة ما نكتب كود SQL في PHP، لذا فهي مشابهة. على أي حال، إذا كان يمكن تجنب استخدام العلامة التبادلية في استعلامات SQL، خاصة عندما تكون قاعدة البيانات تحتوي على الكثير من الأعمدة، فلا تستخدمها.
يجب أن تُحدد بوضوح الأعمدة التي تحتاج إليها، وتحصل عليها فقط. هذا يساعد في تقليل الموارد المستخدمة، حماية البيانات، وجعل الأمور واضحة قدر الإمكان.
للـ SQL، يجب أن تعرف جميع الدوال المتاحة، وتجربي السرعة قدر الإمكان. عند حساب المتوسط أو الجمع أو حساب أي شيء آخر من النوع النقدي، استخدم دوال SQL وليس دوال PHP. إذا لم تكن متأكدًا من سرعة الاستعلام، جربها واختبر بعض الأنواع الأخرى من التجميع — استخدم الأفضل لاحقًا.
7. لا تثق في مدخلات المستخدم
ثقة المستخدم في المدخلات غير مجدية. تأكد دائمًا من التحقق، والتصفية، والتحويل، والتحقق، والاحتفاظ بالطريق للخلف. هناك ثلاثة مشاكل في بيانات المستخدم: لم يكن لدينا كندين في التطوير لمراعاة كل الاحتمالات، عادة ما تكون غير صحيحة، وقد تكون مدمرة متعمدة.
النظام الذي تم التفكير فيه بعناية يمكن أن يحمي من هذه التهديدات. تأكد من استخدام الدوال المدمجة مثل filter_var() لتحقق من القيم المناسبة، وتحويلها (أو التجميع المسبق) عند التعامل مع قاعدة البيانات.
يحتوي ووردبريس على بعض الدوال لحل المشاكل. راجع المقالة التحقق، التحويل، والتصفية من بيانات المستخدم.
8. لا تكن ذكيًا بشكل غير معقول
هدفك يجب أن يكون كتابة كود رائع، لتوضيح نواياك بشكل أوضح. قد تستطيع من خلال تقليص أي شيء إلى كلمة واحدة للاسم المتغير، استخدام منطق الثلاثي الطبقي متعدد الطبقات، وغيرها من الوسائل، تحسين 0.01 ثانية من كل صفحة. ولكن هذا سيؤدي فقط إلى مشاكل كبيرة لك ولمن حولك.
التعيين المنطقي للأسماء المتغيرة، كتابة وثائق البرمجة، يفضل دائمًا الوضوح على البساطة. حتى يمكن أن يكون أفضل، باستخدام الكود الموجه للأحداث القياسية، الذي يعتبر إلى حد ما وثيقة، دون الحاجة إلى كثير من القيم المدمجة.
9. لا تعيد اختراع العجلة
بايثون كان هناك لفترة طويلة، ووقت بناء المواقع كان أطول. من المحتمل أن أي شيء تحتاج إلى بنائه قد تم بناؤه من قبل أشخاص آخرين من قبل. لا تقلقوا في طلب المساعدة من الآخرين، Github صديقك الجيد، وكذلك Composer وPackagist.
من أدوات سجلات إلى أدوات التلوين، من محليل الأداء إلى إطارات اختبار وحدات، من واجهة برمجة التطبيقات Mailchimp إلى Twitter Bootstrap، كل شيء يمكن الحصول عليه عن طريق الضغط على زر (أو إدخال أمر)، استخدموها!
10. لا تتجاهل اللغات الأخرى
إذا كنت مبرمجًا بايثون، هناك فرصة رائعة الآن لفهم على الأقل إي إتش إي، سي إس إس، جي إس إي، وMySQL. عندما تكون قادرًا على التعامل مع هذه اللغات بشكل أفضل، سيكون وقتك لاستعادة تعلم جي إس إي. جي إس إي ليس جي كي يو، يجب أن تتعلم جي إس إي بشكل معقول لاستخدامه بشكل أكثر فعالية.
أيضًا، أنا أعتزم التوصية بتعلم بايثون الموجهة للأ象ص، لأنها يمكن أن توفر الوقت وتصبح أفضل عندما تكون نطاق الكود أكبر. بعد فهم OOP، ستكون لغات مثل سي شارب وجافا أكثر سهولة في الفهم.
من خلال معرفة مدير الحزم، سكربت البناء، كوفي سكريبت، ليز، ساس، يامل، محركات الأداء، وأدوات قوية أخرى، يمكنك توسيع معرفتك. أوصي بشدة بمراجعة الفرقام الأخرى، خاصة لارافيل.
عندما تستخدمونها لتحقيق مهام رائعة، كيف تبدأون في تعلم تطوير تطبيقات روبي، رو آر، أندرويد، أي فون، وويندوز فون؟ قد تعتقدون أن هذا ليس له معنى، لأنه خارج منطقة راحتك وأفق عملك، ولكن هذا هو معناه. كل لغة تحتوي على بعض الأشياء المفيدة لدراستها، بالإضافة إلى معرفة جديدة لم تكن قد واجهتموها من قبل. جميع مطوري البايثون الرفيعين يعرفون العديد من لغات البرمجة الأخرى، وهذا ليس من قبيل المصادفة.
هذا هو كل محتوى المقالة، نأمل أن يكون قد ساعد في التعلم، ونأمل أيضًا أن تدعموا دليل التعليمات الشفوية.