العنوان الأصلي: http://nettuts.com/tutorials/php/10-principles-of-the-php-masters/
الترجمة والتحرير: أندرو، يرجى الإشارة إلى المصدر إذا كنت تريد إعادة الطبع.
1. استخدم لغة PHP عندما يكون الأمر مناسبًا - راسموس ليردورف
لا أحد يفهم أين يجب استخدام PHP بشكل أكثر عقلانية من راسموس ليردورف، مبتكر PHP، الذي أطلق لغة PHP في عام 1995. ومنذ ذلك الحين، أصبحت لغة PHP مثل نار البراري، مشتعلة في معسكر التطوير بأكمله إنترنت. ومع ذلك، لم يقم Rasmus بإنشاء PHP لهذا السبب. تم إنشاء PHP لحل المشكلات العملية لمطوري الويب.
مثل العديد من المشاريع مفتوحة المصدر، أصبحت لغة PHP مشهورة ولا يمكن تفسير الدافع وراء شعبيتها بالفلسفة العادية، بل إنها تحظى بشعبية كبيرة لدرجة أنها تثير الإعجاب إلى حد ما. يمكن استخدامها كحالة، وهي حالة ناجمة عن الحاجة إلى أدوات لحل مشاكل الويب المختلفة، لذلك، عندما ظهرت PHP لأول مرة، كانت جميع احتياجات هذه الأدوات تركز على PHP.
ومع ذلك، لا يمكنك أن تتوقع أن تقوم PHP بحل جميع المشكلات. ليردورف هو أول من اعترف بأن PHP هي مجرد أداة، وهناك العديد من المواقف التي تكون فيها PHP خارج نطاق قدراتها.
اختر الأداة المناسبة لهذا المنصب. لقد ذهبت إلى العديد من الشركات لإقناعهم بنشر واستخدام PHP، ولكن هذا لا يعني أن PHP مناسب لكل مشكلة. إنها مجرد لغة برمجة نصية أمامية يمكنها حل معظم المشكلات.
باعتبارك مطور ويب، فإن محاولة حل كل مشكلة باستخدام PHP أمر غير علمي ومضيعة لوقتك. عندما لا يعمل PHP، لا تتردد في تجربة لغات أخرى.
2. استخدم التخزين متعدد الجداول لتحسين قابلية التوسع - Matt Mullenweg
لا أحد يريد التشكيك في سلطة Matt Mullenweg في PHP، فقد قام بتطوير نظام المدونات الأكثر شعبية على هذا الكوكب (بدعم من مجتمع قوي): WordPress بعد إنشاء WordPress وMatt و أطلق فريقه منصة WordPress.com، وهو موقع مدونة مجاني يعتمد على WordPress MU. اليوم، لدى WordPress.com ما يقرب من 4 ملايين مستخدم، يساهمون بأكثر من 140.000 مشاركة يوميًا. (لرؤية المزيد من إحصائيات WordPress.com، انقر هنا.)
إذا كان أي شخص يعرف كيفية توسيع نطاق موقع الويب بسهولة، فهو مات مولنويج. في عام 2006، أجرى مات تحسينات تطلعية على بنية بيانات WordPress وأوضح سبب استخدام WordPress MU لجداول MYSQL مستقلة لكل مدونة بدلاً من حشو جميع بيانات المدونة في جدول واحد ضخم.
لقد اختبرنا هذا النهج، ولكننا وجدنا أن توسيع نطاقه مكلف للغاية. إذا كنت تستخدم بنية بيانات شاملة، فسوف تواجه مشاكل في أجهزة الخادم في مواجهة حركة المرور الكبيرة. داخل مو. يتم توزيع المستخدمين على جداول منفصلة ويمكن تنظيمها بسهولة. على سبيل المثال، يقوم WordPress.com بتخزين بيانات المستخدم في 4096 قاعدة بيانات، ويمكن لقواعد البيانات هذه توزيع الوصول إلى البيانات على نطاق واسع وتحويل حركة المرور والضغط.
تسمح إمكانية نقل جداول البيانات بتشغيل الكود (المدونة) بشكل أسرع وتجعل النظام أكثر قابلية للتطوير. بالاعتماد على إستراتيجيات التخزين المؤقت القوية واستراتيجيات استخدام قواعد البيانات المرنة، أوضح مات للناس أن موقعي Facebook وWordPress.com الأكثر شهرة يمكن تشغيلهما بشكل مستقر ضمن لغة PHP والتعامل مع قدر مذهل من حركة المرور.
3. لا تثق بالمستخدمين أبدًا - Dave Child
Dave Child هو قلب موقع Added Bytes (سابقًا ilovejackdaniels.com)، وهو موقع مشهور بأوراق الغش الممتازة التي يقدمها للعديد من لغات البرمجة. يعمل ديف في عدد من الشركات في المملكة المتحدة وقد أثبت نفسه كسلطة في عالم البرمجة.
يقدم ديف الكثير من النصائح المدروسة لمطوري PHP، والتي تم تلخيصها في "كتابة تعليمات برمجية آمنة في PHP": لا تثق أبدًا بالمستخدمين، فقد يؤذونك.
هناك مبدأ أساسي لتطوير الويب لا يمكنني تكراره بما فيه الكفاية: لا تثق أبدًا في مستخدميك وتفترض أن كل وحدة من البيانات الموجودة على موقع الويب الخاص بك هي عبارة عن تعليمات برمجية ضارة تم جمعها من المستخدمين. في كثير من الأحيان، يتعين عليك استخدام JavaScript للتحقق من المحتوى المقدم بواسطة النموذج الموجود على العميل. إذا كنت معتادًا على ذلك، فهذه عادة جيدة. إذا كان الأمن مهمًا بالنسبة لك، فهذا هو المبدأ الأكثر أهمية الذي يجب تعلمه.
يعمل ديف حاليًا على تجميع أمثلة لسلسلة كتبه "Writing Secure PHP"، وقال في نهاية الكتاب:
أخيرًا، أصبحت مصابًا بجنون العظمة قليلاً. ما لم تكن تعتقد أن موقعك لن يتعرض للهجوم أبدًا، واجه المشكلة وجهًا لوجه، لأنه عندما يحدث ذلك، ستكون في وضع سيئ. يتعين عليك اعتبار كل مستخدم بمثابة متسلل يقوم بالهجوم والدفاع على الموقع، وبذل كل ما في وسعه لحماية أمان الموقع، وفي الوقت نفسه التفكير في حلول للمشكلات ذات الصلة.
4. استخدم المزيد من التخزين المؤقت لـ PHP - Ben Balbo
قام Ben Balbo بتطوير Site Point، وهو موقع ويب يقدم إرشادات للمطورين والمصممين. وهو عضو في نادي Melbourne PHP Development and Open Source Club، لذا فهو يتمتع بفهم معين لـ PHP ولديه أفكار وخبرة معينة في التخزين المؤقت لـ PHP.
إذا كان لديك موقع به عدد كبير من الزيارات ولكن لا يتم تحديثه بشكل متكرر (مثل مدونة تعتمد على نوع ما من أنظمة إدارة المحتوى)، فربما يحتاج إلى بعض التعديلات، ولن تستغرق هذه التعديلات الكثير من الوقت، ولكنها ستحدث تأثيرًا كبيرًا المساهمة في الأداء. إذا كنت ترغب في إنشاء آلية تخزين مؤقت لموقع معقد/سريع التحديث، فقد تكون العملية معقدة، ولكن الفوائد واضحة.
هناك العديد من تقنيات التخزين المؤقت لـ PHP أوصى لنا بالتقنيات التالية:
وظيفة التخزين المؤقت، تشغيل النتائج، إعداد وقت انتهاء الصلاحية، ملف التخزين المؤقت، تقنية التخزين المؤقت التي تم تنزيلها بواسطة IE.
Cache_Lite
نظرًا لخصائص PHP كلغة ديناميكية، فإن آلية التخزين المؤقت مهمة جدًا للمواقع التي لا يتم تحديثها بشكل متكرر.
5. تسريع تطوير PHP باستخدام IDE والقوالب والمقتطفات - Chad Kieffer
عندما يكون Chad Kieffer بعيدًا عن تصميم واجهة المستخدم وعمل تحسين قاعدة البيانات، سيشارك الكثير من الخبرة التقنية على مدونته 2 ملاعق كبيرة. ونظرًا للتطور الشامل الذي حققته تشاد في العديد من الجوانب، فإنه غالبًا ما يجد مشاكل لا يستطيع المبرمجون الآخرون العثور عليها وتكوين الخبرة ذات الصلة، وخاصة طريقته في تطوير مواقع الويب. إنه يشارك في كل جانب من جوانب تطوير موقع الويب، لذا فإن نصيحته مفيدة جدًا في تحسين الصورة الكبيرة لتطوير موقع الويب.
تفكر تشاد في استخدام Eclipse PDT
(حزمة تطوير PHP الخاصة بـ Eclipse) يمكن لـ IDE، أثناء استخدام بعض تقنيات القوالب والمشاريع مفتوحة المصدر، أن يزيد بشكل فعال من سرعة تطوير PHP.
الخطط الضيقة وقوائم المهام الطويلة والمواعيد النهائية تجعل المطورين محبطين للغاية. ومع ذلك، يمكن لبعض الميزات، مثل قوالب Eclipse، أن تقلل بشكل فعال وقت البرمجة وفرص حدوث الأخطاء.
بشكل عام، يمكن أتمتة أي مشروع، وكلما زادت درجة الأتمتة، قل الوقت الذي ستستغرقه لإكمال المشروع. إن أخذ الوقت الكافي لتطوير الأطر والقوالب التي سيتم استخدامها بشكل متكرر سيوفر لك المزيد من الوقت لاحقًا. في الوقت نفسه، باستخدام IDE مثل Eclipse وحزمة PDT، ستجد أن كفاءتك قد تحسنت بشكل ملحوظ. يمكن لـ IDE إغلاق الفواصل المنقوطة وإكمالها تلقائيًا وتصحيح الأخطاء محليًا.
منشورات ذات صلة:
تمت ترقية WordPress بنجاح إلى 2.3.2، على الرغم من أن العلامات ليست ذات فائدة بالنسبة لي، إلا أنني ما زلت بحاجة إلى الترقية لأسباب أمنية. الشجاعة والإصرار، ولحسن الحظ لم تكن هناك مشاكل عند تشغيل الترقية محليًا، لكن الوظائف الموجودة في القالب كانت تحتاج إلى بعض التعديلات البسيطة. تمت الترقية عبر الإنترنت بسلاسة، وسيتساءل الكثير من الأشخاص، ألم تنشر للتو منشورًا تطلب فيه المساعدة في طريقة الترقية؟ حسنًا، لقد وجدت أفضل أداة، البرنامج الإضافي للترقية التلقائية في WordPress. هذا البرنامج الإضافي للترقية التلقائية في WordPress يجعل الترقية خالية من القلق، لأنه سيعمل على نسخ جميع الملفات والبيانات احتياطيًا لك قبل الترقية، كما أنه "على طول الطريق إلى التالي". ". "، أعتقد أنه مناسب جدًا للمدونين الذين لا يريدون القلق بشأن الترقية. ومع ذلك، هناك مشكلة في وظيفة التصدير بعد الترقية لا يمكن العثور عليها، لا أعرف ما إذا كانت هذه المشكلة شائعة أم أنها مشكلة في مدونتي، فالأصدقاء الذين يواجهون نفس المشكلة يرجى ترك رسالة لي وسأبحث عن حل. (بعد البحث، تبين أن هناك مشكلة في مسار الوصول في المكون الإضافي Coolcode. وطالما تم إلغاء تنشيط هذا المكون الإضافي، يمكن استخدام وظيفة التصدير بشكل طبيعي)...
هل لدى أي شخص خبرة في الترقية من WordPress 2.0؟ لقد قمت بتنزيل Wordpress-2.3.2 اليوم وكنت أرغب في الترقية، لكنني وجدت أن قفزة الإصدار كبيرة جدًا وأن التغييرات في بنية البيانات تبدو كبيرة جدًا المخاطرة كبيرة جدًا، لذا استسلمت في الوقت الحالي. من؟ أحد الأصدقاء لديه خبرة في ترقية WordPress من 2.0 إلى 2.3. شكرًا جزيلاً لك. ...
الترجمة: "14 أداة رائعة لمشرفي المواقع" (الجزء الثاني) النص الأصلي: http://www.conversion-rate-experts.com/articles/understanding-your - Visitors/ كتب هذا المقال أندرو ( http://www . achome.cn ) تتم ترجمته بشكل مستقل إذا كنت بحاجة إلى إعادة الطباعة، يرجى الإشارة إلى المصدر. المستخدمون هم أفضل موظفي الدعاية والمبيعات، تعال واستمع إلى الطريقة التي يروجون بها، أخبر صديقك - جربه الآن! هل لديك نظام توصية للمستخدم؟ نظام يتيح للمستخدمين إرسال رسائل لدعوة الأصدقاء. يمكننا أن نرى أن الرسائل التي أرسلها هؤلاء المستخدمون تحتوي على إجابة السؤال "لماذا ينفق المستخدمون الأموال على موقع الويب الخاص بك؟" يقضي الكثير من الأشخاص الكثير من الوقت في تحديد موقعهم وتطوير كلمات إعلانية جذابة، ولكن من خلال شهادات المستخدمين، يمكنك معرفة سبب تفضيل المستخدمين لك. اجمع تعليقات المستخدمين بسهولة، Kampyle - جربه الآن! يتيح Kampyle للمستخدمين إرسال تعليقات المستخدمين على موقع الويب الخاص بك (من خلال زر صغير في أسفل الصفحة، بعد النقر، ستظهر نافذة للمستخدمين لملء آرائهم وتعليقاتهم). اقتراحات. يمكن لمشرفي المواقع تسجيل الدخول إلى موقع الويب الرسمي لـ Kampyle لعرض تعليقات المستخدمين المجمعة وإدارتها. إذا ترك المستخدمون عناوين بريدهم الإلكتروني، فيمكن لمشرفي المواقع بسهولة إخطار المستخدمين بأنهم تلقوا تعليقات وسيقومون بإجراء تحسينات مقابلة. ...
6. استفد من وظائف مرشح PHP - جوي سوتشاكي
ربما لا يكون جوي سوتشاكي مشهورًا مثل مات مولنويج، لكنه أيضًا مطور ذو خبرة ويشارك الكثير من الخبرة التقنية من خلال مدونته Devolio،
وقد وجد جوي أن كتابة كود PHP موجودة هناك العديد من الأماكن التي تحتاج إلى التصفية في هذه العملية، ولكن لا يهتم الكثير من المبرمجين بوظيفة التصفية المضمنة في PHP.
تعد تصفية البيانات أمرًا يتعين علينا القيام به غالبًا، ولكن العديد من وظائف التصفية المضمنة في PHP الغنية بالميزات غير معروفة. باستخدام وظائف PHP المضمنة مثل filter_*، يمكننا التعامل مع جميع مهام التصفية تقريبًا، بما في ذلك التحقق من صحة نوع البيانات/عنوان URL/البريد الإلكتروني والتحقق من صحة عنوان IP/معالجة الأحرف الخاصة، وما إلى ذلك.
التصفية أمر معقد، ولكن أعتقد أن اكتشاف جوي سيمنحك الكثير من الإلهام ويتيح لك إدراك وظيفة التصفية القوية لـ PHP.
7. استخدم إطار عمل PHP - جوش شارب
كان هناك الكثير من الجدل حول ما إذا كان يجب عليك استخدام Zend أو CakePHP أو Code Igniter أو أطر عمل PHP الأخرى، ولكن في أذهان مطوري الويب، لديهم معايير القياس الخاصة بهم.
أنشأ جوش شارب موقع الويب الخاص به، لذا فهو يتمتع ببعض الخبرة في استخدام أطر عمل PHP لتطوير مواقع الويب. وهو يعتقد أن استخدام إطار عمل PHP لتطوير المشاريع يمكن أن يوفر الوقت بشكل فعال ويقلل من فرص حدوث الأخطاء. لماذا؟ لأنه يشعر أن PHP من السهل جدًا البدء بها.
في بعض الأحيان، يكون لسهولة استخدام PHP بعض العيوب، لأن تركيبها الفضفاض غالبًا ما يؤدي إلى إنشاء العديد من الرموز الخاطئة. ولكن إذا كنت تستخدم إطار عمل PHP، فسيتم تقليل فرصة الأخطاء بشكل كبير.
يمكن لإطار عمل PHP أن يجعل بنية التعليمات البرمجية الخاصة بك أكثر توحيدًا ويوفر الكثير من الوقت. يمكنك قراءة "فوائد استخدام إطار عمل PHP" للحصول على المزيد من المعلومات ذات الصلة.
8. لا تستخدم أطر عمل PHP - راسموس ليردورف
هو عكس وجهة نظر جوش تمامًا، ويعتقد منشئ PHP أنه من الأفضل عدم استخدام أطر عمل PHP. لأن PHP الذي لا يعتمد على إطار عمل يعمل بشكل أفضل.
في كلمته في Drupalcon 2008، استخدم Rasmus مثال "Hello World" لمقارنة الأداء بين بعض إطارات PHP و PHP البسيطة. وأظهرت النتائج أن أداء إطار عمل PHP كان متخلفًا كثيرًا.
9. استخدم المعالجة المجمعة - جاك دي هيرنجتون
جاك هيرنجتون ليس غريبًا على عالم PHP، وقد ساهم بأكثر من 30 مقالًا في IBM DeveloperWorks الشهير، كما نشر كتاب "PHP Hacks"، لذا فهو خبير حقيقي.
يوصي Herrington باستخدام المعالجة المجمعة وCron لاستبدال البرامج النصية التي يمكن تشغيلها في الخلفية. لا يرغب مستخدمو الويب في انتظار المعالجة عبر الإنترنت، لذلك تكون بعض الأشياء أكثر ملاءمة للمعالجة في الخلفية.
من المؤكد أن هذا يعد مبالغة في بعض الحالات، ولكن يمكنك أن ترى بوضوح أن إنشاء أداة معالجة دفعية باستخدام أساليب Cron وMySQL وPHP الموجهة للكائنات وPear::DB ليست مهمة بسيطة.
يعتقد جاك أن استخدام cron وPHP وMySQL لمعالجة بعض المهام في الخلفية يعد أكثر فعالية من حيث التكلفة من منطق الأعمال متعدد العمليات.
لقد جربت كلا الطريقتين، وأعتقد أن Cron متوافق جدًا مع مبدأ "ابق الأمر بسيطًا، غبيًا" (KISS)، والذي يجعل معالجة الخلفية بسيطة. بالمقارنة مع منطق الأعمال متعدد العمليات، فإنه لا يوجد لديه خطر تجاوز الذاكرة. يمكنك إنشاء برنامج نصي دفعي بسيط وتشغيله في cron. سيتحقق هذا البرنامج النصي بانتظام مما إذا كانت هناك مهام تحتاج إلى المعالجة، وسيخرج تلقائيًا بعد المعالجة، لذلك لا داعي للقلق بشأن ما إذا كانت العملية متوقفة أم لا. عالقة في حلقة لا نهاية لها.
10. تمكين الإبلاغ عن الأخطاء في الوقت المناسب - David Cummings
يمتلك David Cummings شركة متخصصة في تقديم خدمات برمجيات CMS وقد فاز بالعديد من الجوائز. ويتمتع بخبرة غنية جدًا في تطوير PHP.
كتب ديفيد ذات مرة "نصيحتين PHP تمنى لو تعلمهما في البداية"، إحداهما: تمكين الإبلاغ عن الأخطاء في الوقت المناسب، مما سيوفر الكثير من الوقت.
أهم شيء أقوله للناس هو تعظيم الإبلاغ عن الأخطاء في PHP. لماذا؟ نظرًا لأن PHP يمكنها إخفاء الكثير من المشكلات الصغيرة:
لا يتم تعريف المتغيرات مسبقًا، ويتم الإشارة إلى المتغيرات غير المتوفرة في مقتطفات التعليمات البرمجية، ويتم استخدام ثوابت غير محددة، وقد لا تبدو هذه العوامل ذات أهمية كبيرة إلا إذا كنت تكتب بعض مكتبات الفئات باستخدام كائن النهج الموجه. في كثير من الأحيان، من المحتمل أن يكلفك إيقاف تشغيل الإبلاغ عن الأخطاء المزيد من المال للحفاظ على التعليمات البرمجية الخاصة بك.
يمكن أن تساعدك تقارير الأخطاء في العثور بسهولة على المشكلات المتعلقة بالتعليمات البرمجية الخاصة بك. إذا كان مستوى تقرير الأخطاء مرتفعًا بدرجة كافية، فيمكن اكتشاف الأخطاء الدقيقة على الفور، مما يساعدك على توفير الوقت الإجمالي لتصحيح الأخطاء.