Window.pipedriveLeadboosterConfig = { القاعدة: 'leadbooster-chat.pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', الإصدار: 2, } ؛(الدالة () { var w = نافذة إذا كان (w.LeadBooster) { console.warn('LeadBooster موجود بالفعل') } وإلا { { w.LeadBooster = { q: [], على: دالة (ن، ح) { { هذا.q.push({ t: 'o'، n: n، n: n، h: h }) }, الزناد: الدالة (n) { هذا.q.push({ t: 't'، n: n: n }) }, } } })() الحفاظ على مشروع في PHP: 5 أخطاء يجب تجنبها - The Codest
The Codest
  • نبذة عنا
  • الخدمات
    • تطوير البرمجيات
      • تطوير الواجهة الأمامية
      • تطوير الواجهة الخلفية
    • Staff Augmentation
      • مطورو الواجهة الأمامية
      • مطورو الواجهة الخلفية
      • مهندسو البيانات
      • مهندسو السحابة
      • مهندسو ضمان الجودة
      • أخرى
    • استشاري
      • التدقيق والاستشارات
  • الصناعات
    • التكنولوجيا المالية والمصرفية
    • E-commerce
    • أدتك
    • التكنولوجيا الصحية
    • التصنيع
    • الخدمات اللوجستية
    • السيارات
    • إنترنت الأشياء
  • القيمة مقابل
    • CEO
    • CTO
    • مدير التوصيل
  • فريقنا
  • دراسات الحالة
  • اعرف كيف
    • المدونة
    • اللقاءات
    • ندوات عبر الإنترنت
    • الموارد
الوظائف تواصل معنا
  • نبذة عنا
  • الخدمات
    • تطوير البرمجيات
      • تطوير الواجهة الأمامية
      • تطوير الواجهة الخلفية
    • Staff Augmentation
      • مطورو الواجهة الأمامية
      • مطورو الواجهة الخلفية
      • مهندسو البيانات
      • مهندسو السحابة
      • مهندسو ضمان الجودة
      • أخرى
    • استشاري
      • التدقيق والاستشارات
  • القيمة مقابل
    • CEO
    • CTO
    • مدير التوصيل
  • فريقنا
  • دراسات الحالة
  • اعرف كيف
    • المدونة
    • اللقاءات
    • ندوات عبر الإنترنت
    • الموارد
الوظائف تواصل معنا
السهم الخلفي العودة إلى الوراء
2022-06-10
تطوير البرمجيات

الحفاظ على مشروع في PHP: 5 أخطاء يجب تجنبها

The Codest

سيباستيان لوكزاك

PHP قائد وحدة PHP

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

PHPكغيرها من اللغات، لها بعض العيوب التي لا تساوي شيئًا عندما يتعلق الأمر بإدارة تكنولوجيا المعلومات المشروع حيث PHP هي اللغة الرائدة.

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

1. عدم اتباع توصيات معايير PHP

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

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

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

كيف يمكنني تجنب ذلك؟

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

2. عدم تأمين إصدارات تبعيات composer.json الخاصة بك

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

كيف يمكنني تجنب ذلك؟

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

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

3. ضعف جمع المتطلبات

> إنه مجرد CRUD، لماذا العناء؟

> هناك مكتبة تقوم بذلك بالضبط!

في PHP المجال، من السهل الوقوع في دوامة النسيان عند تنفيذ منطق أعمال المنتج. على مر السنين كانت هناك المئات من المشاريع التي [تنشئ لوحات إدارية لإدارة نماذج البيانات] (https://backpackforlaravel.com/)، أو [إنشاء طرق عرض شبيهة بتحليلات جوجل] (https://github.com/Kunstmaan/KunstmaanDashboardBundle) أو [حل مشاكل المزامنة في PHP] (https://laravel.com/docs/9.x/octane) بلمسة عصا سحرية (حسناً، باستعلام سطر أوامر واحد).
عالم PHP مليء بالتطبيقات الجاهزة التي تعمل 99.9% من الوقت.
هذا 0.1% هو المكان الذي يصطدم فيه منطق العمل بالقيود الوظيفية للمكتبات المستخدمة.
إن ما يسمى بـ "الرمي" هو الأكثر صعوبة في التنفيذ في نهاية المشروع.

كيف يمكنني تجنب ذلك؟

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

4. خفض التكاليف عن طريق تجنب كتابة الاختبارات

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

كيف يمكنني تجنب ذلك؟

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

5. عدم مراعاة أنماط العمارة الحديثة

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

كيف يمكنني تجنب ذلك؟

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

مقالات ذات صلة

تطوير البرمجيات

تطوير PHP. مكون وحدة تحكم سيمفوني - نصائح وحيل

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

The Codest
سيباستيان لوكزاك PHP قائد وحدة PHP
E-commerce

معضلات الأمن السيبراني: تسريبات البيانات

الذروة التي تسبق عيد الميلاد على قدم وساق. بحثًا عن هدايا لأحبائهم، يتزايد إقبال الناس على "اقتحام" المتاجر الإلكترونية

The Codest
ياكوب جاكوب جاكوبوفيتش CTO وشريك مؤسس CTO
تطوير البرمجيات

توظيف مطورين داخليين مقابل مطورين خارجيين

التوظيف داخلياً أم خارجياً؟ إنها معضلة كبيرة! اكتشف مزايا outsourcing أو بناء فريق داخلي في المقالة التالية.

The Codest
غريغورز روزموس قائد وحدة جافا
الحلول المؤسسية وحلول التوسعة

الطريقة الصحيحة للعثور على أفضل مطوري جافا

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

The Codest
غريغورز روزموس قائد وحدة جافا

اشترك في قاعدة معارفنا وابقَ على اطلاع على آخر المستجدات في قطاع تكنولوجيا المعلومات.

    نبذة عنا

    The Codest - شركة دولية لتطوير البرمجيات لها مراكز تقنية في بولندا.

    المملكة المتحدة - المقر الرئيسي

    • المكتب 303 ب، 182-184 شارع هاي ستريت نورث E6 2JA
      لندن، إنجلترا

    بولندا - مراكز التكنولوجيا المحلية

    • مجمع مكاتب فابريتشنا المكتبي، أليجا
      بوكوجو 18، 31-564 كراكوف
    • سفارة الأدمغة، كونستروكتورسكا
      11, 02-673 02-673 وارسو، بولندا

      The Codest

    • الصفحة الرئيسية
    • نبذة عنا
    • الخدمات
    • دراسات الحالة
    • اعرف كيف
    • الوظائف
    • القاموس

      الخدمات

    • استشاري
    • تطوير البرمجيات
    • تطوير الواجهة الخلفية
    • تطوير الواجهة الأمامية
    • Staff Augmentation
    • مطورو الواجهة الخلفية
    • مهندسو السحابة
    • مهندسو البيانات
    • أخرى
    • مهندسو ضمان الجودة

      الموارد

    • حقائق وأساطير حول التعاون مع شريك خارجي لتطوير البرمجيات
    • من الولايات المتحدة الأمريكية إلى أوروبا: لماذا تقرر الشركات الأمريكية الناشئة الانتقال إلى أوروبا؟
    • مقارنة مراكز تطوير التكنولوجيا في الخارج: تك أوفشور أوروبا (بولندا)، آسيان (الفلبين)، أوراسيا (تركيا)
    • ما هي أهم التحديات التي تواجه CTOs ومديري تكنولوجيا المعلومات؟
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • شروط استخدام الموقع الإلكتروني

    جميع الحقوق محفوظة © 2025 بواسطة The Codest. جميع الحقوق محفوظة.

    arArabic
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish it_ITItalian jaJapanese ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek arArabic