Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. PHP
Code

10 مبادئ لأساتذة PHP

by
Difficulty:IntermediateLength:LongLanguages:

Arabic (العربية/عربي) translation by Maryam Abbas (you can also view the original English article)

مع تبني PHP على نطاق واسع، من السهل جدًا العثور على نص أو مقتطف للقيام بما تحتاج إليه بالضبط. لسوء الحظ، ليس هناك مرشح لما هو "ممارسة جيدة" وما هو جيد، ... ليس جيدًا عند كتابة سيناريو PHP. نحن بحاجة لمصادر جديرة بالثقة، الذين أثبتوا أن لديهم فهمًا قويًا لأفضل الممارسات في PHP.

نحن بحاجة إلى أساتذة PHP لإطلاعنا على أفضل المبادئ التي يجب اتباعها من أجل برمجة PHP عالية الجودة.


1. استخدم PHP فقط عندما تحتاجه - Rasmus Lerdorf

ليس هناك مورد أفضل من منشئ PHP لمعرفة ما تقدر عليه PHP. أنشأ Rasmus Lerdorf PHP في عام 1995، ومنذ ذلك الحين انتشرت اللغة كالنار في الهشيم من خلال مجتمع المطورين، مما أدى إلى تغيير وجه الإنترنت. ومع ذلك، لم ينشئ راسموس PHP بهذا القصد. تم إنشاء PHP من الحاجة إلى حل مشاكل تطوير الويب.

وكما هو الحال مع العديد من المشاريع المفتوحة المصدر التي أصبحت شائعة، لم يكن الدافع أبدا فلسفيا أو حتى نرجسيًا. كان مجرد حالة من الحاجة إلى أداة لحل المشاكل المتعلقة بالويب في العالم الحقيقي. في عام 1994 كانت الخيارات محدودة إلى حد ما عندما يتعلق الأمر بأدوات تطوير الويب.

ومع ذلك، لا يمكنك استخدام PHP لكل شيء. Lerdorf هو أول من يعترف بأن PHP هو في الحقيقة مجرد أداة في صندوق الأدوات الخاص بك، وأنه حتى PHP لديه قيود.

استخدم الأداة المناسبة من أجل المهمة. لقد مررت على الشركات التي جهزت بالكامل بـ PHP، ونشرتها في كل مكان على الإطلاق، ولكن لم يكن من المفترض أن تكون لغة عامة الغرض مناسبة لكل مشكلة. إنها على الأكثر للمنزل كلغة برمجة نصية أمامية للويب.

إن محاولة استخدام PHP في كل شيء ليس ذو كفاءة ، وبالتأكيد ليست الاستخدام الأمثل لوقتك كمطور ويب. لا تخف من استخدام لغات أخرى إذا لم تعمل PHP في مشروعك.


2. استخدام العديد من الجداول مع PHP و MYSQL لقابلية التوسع – مات مولينويغ

لا يحتاج أحد إلى السؤال عن الثقة بـ Matt Mullenweg مع PHP. طور (إلى جانب المجتمع المتطرف)، نظام المدونات الأكثر شعبية على الكوكب: ووردبرس. بعد إنشاء Wordpress، أطلقت شركة مات وورد موقع Wordpress.com الممتاز، وهو موقع تدوين مجاني قائم على برنامج مدونات قواعد شيفرة Wordpress MU من أجل  المدونات المتعددة. في وقت كتابة هذه السطور، يستضيف موقع Wordpress.com أكثر من 4 ملايين مدونة، وقد كتب مستخدموه أكثر من 140،000 مشاركة اليوم. (يمكنك الاطلاع على إحصاءات أكثر إثارة للاهتمام حول استخدام Wordpress.com هنا.)

إذا كان أي شخص يعرف كيفية توسيع موقع على شبكة الإنترنت، فهو مات مولينويغ. في عام 2006 أعطى مات بعض التبصر في بنية قاعدة بيانات Wordpress وفسر لماذا يستخدم Wordpress MU جدول MySQL مستقل لكل مدونة ، بدلاً من استخدام جدول "واحد مترابط" عملاق لجميع المدونات.

لقد اختبرنا هذا النهج لـ MU، لكننا وجدنا أنه مكلف جدًا تجاوز نطاق معين. مع البنى المتآلفة فإنك ترتطم بالحائط بالاعتماد على جهازك. في MU يتم تقسيم المستخدمين ويمكن التجزئة بسهولة، على سبيل المثال في WordPress.com لدينا المستخدمين مقسمين بين  4096 من قواعد البيانات، والذي يسمح لك بتوسيع نطاق رخيص للغاية وبكفاءة لمئات الآلاف وحتى الملايين من المستخدمين ومستويات عالية للغاية من حركة المرور .

كونك قادر على ترحيل الجداول فهذا يسمح للشفيرة وفي نهاية المطاف للمدونات أن تعمل بسرعة أكبر وسهولة أكبر. إلى جانب بعض التخزين المؤقت الوافر واستخدام قاعدة البيانات الذكية ، أظهر مات أن المواقع المشهورة للغاية مثل Facebook و Wordpress.com يمكن تشغيلها من PHP والتعامل مع الحمل المروري المذهل.


3. لا تثق أبداً بمستخدميك - ديف تشايلد

مثيرة للإعجاب لا يعني أنك ستفجر الألعاب النارية أو ترتب لأن تجري الانفجارات على غرار هوليوود أثناء العرض التقديمي الخاص بك. ولكن هذا يعني أن العرض التقديمي يحتاج إلى تضمين محتوى مثيرة للإعجاب لا يعني أنك ستفجر الألعاب النارية أو ترتب لأن تجري الانفجارات على غرار هوليوود أثناء العرض التقديمي الخاص بك. ولكن هذا يعني أن العرض التقديمي يحتاج إلى تضمين محتوى 

يقدم ديف بعض النصائح المألوفة عندما يتعلق الأمر بكتابة شيفرة آمنة في PHP: لا تثق في المستخدمين لديك. هم فقط قد يؤذوك.

لذا فإن القاعدة الأساسية لكل تطوير للويب، والتي لا أستطيع أن أؤكد عليها بما فيه الكفاية، هي: لا تثق بمستخدميك أبدًا. افترض أن كل جزء من البيانات التي يجمعها موقعك من مستخدم يحتوي على شفرة ضارة. دائما. يتضمن ذلك البيانات التي تعتقد أنك قمت بفحصها من خلال التحقق من جانب العميل، على سبيل المثال باستخدام JavaScript. إذا تمكنت من إدارة ذلك، فستبدأ ببداية جيدة. إذا كان أمان PHP مهم بالنسبة لك، فهذه النقطة المفردة هي الأهم للتعلم.

يواصل ديف تقديم أمثلة محددة للممارسات الآمنة في الأجزاء الأول، والثاني والثالث من سلسلة "الكتابة الآمنة PHP". لكن خلاصته النهائية هي:

في النهاية، عليك أن تكون مصاباً بجنون العظمة تمامًا بكل ما للكلمة من معنى.
إذا كنت تفترض أن موقعك لن يتعرض أبدًا للهجوم، أو لن يواجه أية مشكلات من أي نوع، فعندئذ عندما يحدث خطأ ما، فسوف تتعرض لكم هائل من المشاكل. من ناحية أخرى، إذا كنت تفترض أن كل زائر لموقعك سيخرج ليجعلك أنت وهو في حالة حرب دائمًا، فسوف تساعد نفسك في الحفاظ على أمان الموقع الخاص بك، وتكون مستعدًا في حالة حدوث أخطاء.


4. استثمر في التخزين المؤقت لـ PHP - بن بالبو

كتب Ben Balbo لموقع النقطة، وهو موقع تعليمي يحظى باحترام كبير للمطورين والمصممين. وهوعضو في لجنة كل من مجموعة مستخدمي PHP في ملبورن ونادي مطوري البرامج المفتوحة، لذا فهو يعرف شيئًا أو اثنين عن اللغة. ليس من المستغرب أن تكون خلفية بن كمطور ومدرب PHP حيث أنه يوصي بوضع أكثر قليلاً من التفكير والتحضير في التخزين المؤقت لـ PHP.

إذا كان لديك موقع ويب مشغول وغالبًا ما يكون ثابتًا - مثل مدونة - تتم إدارته من خلال نظام إدارة المحتوى، فمن المحتمل أن يتطلب ذلك القليل من التغيير، ومع ذلك قد يستفيد من تحسينات هائلة في الأداء ناتجة عن استثمار صغير في وقتك. سيثبت إعداد التخزين المؤقت من أجل موقع أكثر تعقيدًا أنه يولد محتوى على أساس كل مستخدم، مثل البوابة الإلكترونية أو نظام سلة التسوق، أنه أكثر تعقيدًا واستهلاكًا للوقت، ولكن الفوائد لا تزال واضحة.

هناك العديد من التقنيات المختلفة للتخزين المؤقت في PHP، و Ben يتطرق إلى بعض منها في المقالة، مثل:

  • استدعاء الوظيفة المخبأة
  • إعداد ترويسات انتهاء الصلاحية
  • تنزيلات ملف التخزين المؤقت في IE
  • قالب التخزين المؤقت
  • أداة التخزين المؤقت الخفيف

وغيرها الكثير. نظرًا لطبيعة اللغات الديناميكية مثل PHP، يعتبر التخزين المؤقت أمرًا ضروريًا لتخزين أجزاء الصفحة التي يتم الوصول إليها بشكل متكرر ولا تتغير كثيرًا.


5. تسريع تطوير PHP مع IDE والقوالب والمقتطفات - تشاد كايفر

عندما لا يكون تشاد كيفر مشغولاً في تأرجح واجهات المستخدم وإدارة قواعد البيانات، فهو يقدم نصائح الخبرة من مدونته ملعقتي طعام. وبفضل مجال خبرة تشاد الواسع، فإنه غالباً ما يكون قادراً على رؤية الصورة الكبيرة التي قد لا يستخدمها المبرمجون الآخرون، خاصة عندما يتعلق الأمر بالنهج الشامل الذي يتبعه تشاد لتطوير موقع على شبكة الإنترنت. وهو متخصص في جميع جوانب عملية التطوير، لذا فإن أي أفكار يمكن أن يقدمها مع تجميع مشروع بأكمله ستكون مفيدة.

يعتقد تشاد أن استخدام IDE مثل Eclipse PDT (حزمة تطوير PHP في Eclipse) مع مزيج من القوالب والمقتطفات يمكن أن يؤدي إلى تسريع وقت الاستجابة في المشروع.

إن الجداول الزمنية المشغولة وقوائم المهام الطويلة والمواعيد النهائية تجعل من الصعب على المطورين التعرف على بعض الميزات المتقدمة التي توفرها أدواتهم. هذا مخجل، لأن بعض الميزات، مثل قوالب Eclipse، يمكنها تقليل زمن وأخطاء التشفير.

الفطرة السليمة تقول أنه في أي وقت تستطيع فيه أتمتة مهمة ما، ستتمكن من إنجاز المشروع بشكل أسرع. وينطبق الشيء نفسه على نظرية دان. من خلال الاستفادة من الوقت لإنشاء النماذج التي ستستخدمها مرارا وتكرارا، ستوفر الكثير من الوقت في أتمتة الأجزاء المتكررة من التشفير.

باستخدام IDE مثل حزمة Eclipse و PDT، ستجد أن وقت التطوير لديك سيتم تسريعه بشكل متزايد. سيقوم IDE بإغلاق الأقواس التلقائية، وإضافة تلك الفواصل المنقوطة ويسمح لك بالتصحيح داخل المحرر، دون الحاجة إلى التحميل إلى الخادم.
(لدى تشاد برنامج تعليمي أنيق حول بدء استخدام Eclipse PDT ومزايا IDE بشكل عام، إذا كنت مهتمًا بذلك.)


6. صنع الاستخدام الأفضل لوظائف مرشح PHP - جوي سوكاشي

في حين أن جوي سوشاكي قد لا يكون كبيرا مثل اسم مات ماتينفيج في مجتمع PHP، فهو مطور ويب محنك ويشارك النصائح التي حصل عليها خلال مسيرته في مدونته Devolio.

وجد جوي أنه على الرغم من وجود الكثير من الترشيح الذي يجب أن يحدث عند كتابة كود PHP، لا يستفيد الكثير من المبرمجين من وظائف مرشح PHP.

ترشيح البيانات. علينا جميعا أن نفعل ذلك. معظمنا، إن لم يكن جميعنا، يحتقرون القيام بذلك. على كل حال، من غير المعروف لمعظمنا وظائف مرشح php's _ *، ​​التي تسمح لنا بالقيام بكل أنواع التصفية والتحقق من الصحة. باستخدام وظائف filter_ * من PHP، يمكننا التحقق من صحة أنواع البيانات وعناوين URL وعناوين البريد الإلكتروني وعناوين IP وتعرية الرموز غير الصحيحة والمزيد، كل ذلك بسهولة نسبية.

قد تكون التصفية أمرًا صعبًا، ولكن هذا الدليل يمكن أن يساعد بشكل كبير. مع مساعدة جوي ستتعلم كيفية تثبيت الفلاتر وتصفية أي شيء تقريبًا، مع الاستفادة من قوة تصفية PHP.


7. استخدم إطار عمل PHP - جوش شارب

كان هناك دائما نقاش حول استخدام إطار عمل PHP مثل Zend ،CakePHP، أو Code Igniter أو أي إطار عمل آخر. هناك حسنات وسلبيات لاستخدام أحدها، والعديد من المطورين لديهم آرائهم الخاصة حول ما إذا كان يجب الابتعاد عن هذا الطريق أم لا.

جوش شارب هو مطور على شبكة الإنترنت الذي يجعل مصدر معيشته هو إنشاء مواقع الويب للعملاء. لهذا السبب يجب أن تثق به عندما يقول إنه من الجيد استخدام إطار عمل PHP لتوفير الوقت والقضاء على الأخطاء عند البرمجة. لماذا ا؟ يعتقد جوش أنه بسبب سهولة تعلم PHP.

ولكن سهولة استخدام PHP هي أيضًا سبب سقوطها. نظرًا لأن هناك قيودًا أقل على بنية التعليمة البرمجية التي تكتبها، فمن الأسهل كتابة تعليمات برمجية سيئة. لكن هناك حل: استخدم إطارًا.

تساعد أطرعمل PHP على توحيد طريقة برنامجك، ويمكن توفير الكثير من الوقت في عملية التطوير. يمكنك قراءة المزيد عن فائدة استخدام إطار PHP في مدونة Josh.


8. لا تستخدم إطار عمل PHP  -راسموس ليردورف

على عكس اعتقاد جوش بأنه يجب على المرء استخدام إطار عمل PHP، فإن Rasmus Lerdorf، الأب الروحي لـ PHP نفسه، يعتقد أن الأطر ليست بهذه الروعة. لماذا ا؟ لأن أداؤها أبطأ بكثير من PHP فقط.

خلال عرض راسموس في دروبالكون 2008، قارن راسموس أوقات الاستجابة بصفحة PHP مع مثال "Hello World" بسيط، وقارنه ببعض من أطر PHP (الشرائح 24-32)، وأظهر أن أطرPHP أبطأ بكثير من PHP العادية.

عرض جيد يحتوي على جميع المعلومات اللازمة والمعلومات اللازمة فقط لصنع نقطة. إن إطلاع جمهورك على حقائق وأرقام غريبة، مهما كانت دقيقة أو صحيحة، لن يرسلهم إلا إلى أرض المنام.

[ملاحظة: إذا كنت مضطرًا لاستخدام إطار عمل PHP، فإن Rasmus يحب أن يكون Code Igniter الأفضل، لأنه "على الأقل مثل إطار العمل"]


9. استخدم المعالجة الدفعية - جاك هيرنغتون

جاك هيرنغتون ليس غريبا على PHP وعالم التطوير. بالإضافة إلى كتابة أكثر من 30 مقالة لمطوري IBM المرموقين، قام جاك أيضًا بنشر كتب البرمجة مثل PHP Hacks. جاك هو خبير أصلي.

ينصح هيرنغتون باستخدام المعالجة المجمعة و وجدولة لمعالجة المهام التي يمكن معالجتها في الخلفية. لا يريد مستخدمو الويب الانتظار طويلاً حتى يتم إكمال المهام على الويب. هناك بعض الوظائف التي تستغرق وقتًا أطول والتي تكون أكثر ملاءمة أن تعمل في الخلفية.

بالتأكيد، في بعض الحالات الصغيرة، يكون من الأسهل نوعًا ما إطلاق مؤشر ترابط لمعالجة مهام صغيرة. ولكن من السهل أن نرى أنه باستخدام الأدوات التقليدية - cron ،MySQL  PHP المعتمد على الكائنات المعيارية، و Pear :: DB - يسهل إنشاء وظائف الدفعات في تطبيقات PHP، ويسهل نشرها، وسهولة صيانتها.

عرض جيد يحتوي على جميع المعلومات اللازمة والمعلومات اللازمة فقط لصنع نقطة. إن إطلاع جمهورك على حقائق وأرقام غريبة، مهما كانت دقيقة أو صحيحة، لن يرسلهم إلا إلى أرض المنام.

عرض جيد يحتوي على جميع المعلومات اللازمة والمعلومات اللازمة فقط لصنع نقطة. إن إطلاع جمهورك على حقائق وأرقام غريبة، مهما كانت دقيقة أو صحيحة، لن يرسلهم إلا إلى أرض المنام. عرض جيد يحتوي على جميع المعلومات اللازمة والمعلومات اللازمة فقط لصنع نقطة. إن إطلاع جمهورك على حقائق وأرقام غريبة، مهما كانت دقيقة أو صحيحة، لن يرسلهم إلا إلى أرض المنام. عرض جيد يحتوي على جميع المعلومات اللازمة والمعلومات اللازمة فقط لصنع نقطة. إن إطلاع جمهورك على حقائق وأرقام غريبة، مهما كانت دقيقة أو صحيحة، لن يرسلهم إلا إلى أرض المنام.


10. تشغيل الإعلام عن الأخطاء على الفور - ديفيد كامينغز

يدير ديفيد كامينغز شركة برمجيات خاصة به متخصصة في أنظمة إدارة المحتوى، وقد فاز بالعديد من الجوائز. إذا كان أي شخص يعرف كيفية تطوير تطبيق PHP بكفاءة، فهو ديف.

كتب ديفيد في مقالة SitePoint نصيحتين حول PHP كان يتمنى لو أنه تعلمهما في البداية. إحدى النصائح: تشغيل الإبلاغ عن الأخطاء على الفور. سيوفر الكثير من الوقت على المدى الطويل.

الشيء الوحيد الاكثر أهمية أقوله للناس الذين يستخدمون PHP هو تشغيل تقارير الأخطاء إلى أقصى مستوى لها. لماذا اريد ان افعل هذا؟ بشكل عام، يتم إعداد تقرير عن الخطأ على مستوى يخفي العديد من الأشياء الصغيرة مثل:

  • الإعلان عن المتغير في وقت مبكر،
  • الإشارة إلى متغير غير متوفر في جزء الشيفرة هذا، أو
  • استخدام تعريف لم يتم تعيينه.
  • قد لا تبدو هذه العوامل كأنها صفقة كبيرة - حتى تقوم بتطوير برامج منظمة أو موجهة نحو الهدف مع وظائف وفئات. في كثير من الأحيان، يكلفك كتابة الكود دون الإبلاغ عن الأخطاء ارتفاع ساعات العمل أثناء البحث عن الوظائف الطويلة التي لم تنجح بسبب خطأ في كتابة المتغير أو عدم إمكانية الوصول إليه.

يمكن أن يؤدي الإبلاغ عن الأخطاء إلى العثور على سبب الخطأ بشكل أسهل. يمكن تحديد خطأ صغير في الشيفرة بسرعة إذا تم تشغيل إعداد تقارير الأخطاء في PHP. قم وفر لنفسك بعض الوقت ووتعب الملاحقة عن طريق السماح لـ PHP بالعثور على الأخطاء لديك.

اقرأ المقالة السابقة في هذه السلسلة: 10 مبادئ لأساتذة CSS.

  • اشترك في NETTUTS Feed RSS لمزيد من البرامج التعليمية اليومية لتطوير الويب والمقالات.

غلين ستانسبيري هو مطور ويب ومدون عانى لوقت أطول مما يريد أن يعترف به مع CSS. يمكنك قراءة المزيد من النصائح حول تطوير الويب في مدونته Web Jackalope.


Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.