IDE جديدة مع دعم PHP: نظرة أولى
شهد سوق بيئات التطوير لـ PHP وافداً جديداً. قدم فريق من المتحمسين، المعروف بأدواتهم مفتوحة المصدر لـ Laravel و Symfony، النسخة التجريبية من IDE تحت الاسم الرمزي PhpStorm Nova (اسم العمل). لا تخلط بينه وبين محرر JetBrains - إنه مشروع مستقل تماماً مبني على محرك تحليل كود خاص به من الصفر.
اختبرنا الإصدار ونشارك انطباعاتنا الأولى. الميزة الرئيسية للجديد هي مساعد الذكاء الاصطناعي المدمج، الذي لا يكتفي بإكمال الكود فحسب، بل يفهم سياق المشروع بأكمله.
الإمكانيات الرئيسية
- إكمال تلقائي ذكي يعتمد على AST - يحلل IDE ليس فقط الملف الحالي، بل أيضاً الـ traits المتصلة، والـ migrations، وحتى تعليقات docblock. يقترح الأنواع الصحيحة للوسائط والقيم المُعادة.
- مصحح أخطاء مدمج مع تصور المكدس - لا حاجة لتكوين Xdebug بشكل منفصل. يكفي الضغط على F9، ويقوم IDE تلقائياً بتشغيل خادم PHP مع التصحيح. يتم عرض مكدس الاستدعاءات كرسم بياني.
- تكامل مع Docker و Laravel Sail - بنقرة واحدة يتم تشغيل حاوية تحتوي على PHP 8.3 و Composer و Node.js. يتم تخزين جميع الإعدادات في المشروع.
- مساعد الذكاء الاصطناعي "Cody" - يكتب اختبارات لـ PHPUnit، ويعيد هيكلة الكود القديم، ويشرح الأخطاء بلغة بسيطة. يعمل محلياً دون إرسال الكود إلى الخادم.
- إعادة هيكلة لـ Laravel - استخراج تلقائي لاستعلامات Eloquent إلى نطاقات، واستخراج التحقق من الصحة إلى Form Request، وإعادة تسمية المسارات مع تحديث جميع الروابط.
الانطباعات الأولى
تبين أن البيئة خفيفة بشكل مدهش: يتم تشغيلها في 3 ثوانٍ على كمبيوتر محمول بذاكرة وصول عشوائي 8 جيجابايت. الواجهة بسيطة، على غرار VS Code، ولكن مع ميزات PHP قوية. أثار العمل مع composer.json الدهشة - حيث يقترح IDE تلقائياً إصدارات الحزم ويظهر تعارضات التبعيات.
من السلبيات: لا يوجد حتى الآن دعم لـ Symfony Forms وقوالب Twig (يعدون بها عند الإصدار). كما لم يتم تنفيذ إضافة لـ PhpStan - فقط مدقق مدمج. لكن للعمل اليومي مع PHP الخالص أو Laravel، الأداة قابلة للاستخدام بالفعل.
النسخة التجريبية متاحة مجاناً على الموقع الرسمي للمشروع. يعد المطورون بأن الإصدار النهائي سيظل مجانياً للمشاريع غير التجارية. تابع التحديثات على PythonLib - سنقوم بإعداد مقارنة كاملة مع PhpStorm و VS Code.
المقالة كتبت لبوابة PythonLib التعليمية. جميع أسماء المنتجات المذكورة هي علامات تجارية لأصحابها.