0Pricing
PHP Academy · درس

مساحات الأسماء المتداخلة والأسماء المستعارة

أنشئوا مساحات أسماء فرعية واستخدموا أسماء مستعارة لتجنّب الإطالة

مساحات الأسماء المتداخلة والأسماء المستعارة درس مجاني في PHP Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في PHP Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة PHP Academy 4 دروس في المجموع.

مثال على مساحة أسماء متداخلة

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

<?php
namespace Vendor\Package\Http\Middleware;

class AuthMiddleware {
    public function handle(): void {}
}

لماذا نستخدم الأسماء المستعارة؟

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

إنشاء اسم مستعار لصنف

استخدم use … as Alias لإعادة تسمية الاستيراد في الملف الحالي.

<?php
namespace App\Controllers;

use App\Infrastructure\Database\MySQLConnection as DB;

class UserController {
    public function __construct(private DB $db) {}
}

إنشاء اسم مستعار لبادئة مساحة أسماء

يمكنك إنشاء اسم مستعار لبادئة مساحة أسماء لتقصير المراجع المتداخلة بعمق.

<?php
use App\Domain\Orders\Repositories as OrderRepo;

$repo = new OrderRepo\EloquentOrderRepository();

حل تعارضات أسماء الأصناف

عندما تعرّف حزمتان صنفًا بالاسم المختصر نفسه، أنشئ اسمًا مستعارًا لأحدهما.

<?php
use League\Flysystem\Filesystem;
use Illuminate\Filesystem\Filesystem as LaravelFS;

$fs1 = new Filesystem(/* adapter */);
$fs2 = new LaravelFS();

استخدام use المجمّعة مع الأسماء المستعارة

تدعم كتل use المجمّعة أيضًا أسماءً مستعارة لكل رمز.

<?php
use App\Models\{User, Post as Article};

البنى المتداخلة بعمق

غالبًا ما تحتوي مشاريع DDD الواقعية على مساحات أسماء تتكون من 4 مقاطع أو أكثر، مثل App\Domain\Billing\Services\InvoiceGenerator.

نطاق الاسم المستعار

تقتصر الأسماء المستعارة على نطاق الملف. فالاسم المستعار المعرّف في ملف لا يؤثر في ملف آخر.

مكتبتا تسجيل

مثال: استخدام Monolog ومسجّل مخصص معًا.

<?php
use Monolog\Logger;
use App\Logging\Logger as AppLogger;

$monolog = new Logger("channel");
$app     = new AppLogger();

الأسماء المستعارة للدوال والثوابت

يمكنك أيضًا إنشاء أسماء مستعارة للدوال والثوابت المستوردة.

<?php
use function App\Helpers\formatMoney as money;

echo money(1999); // "€19.99"

أفضل الممارسات

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

الملخص

تمثّل مساحات الأسماء المتداخلة بنية مجلداتك. وتحل الأسماء المستعارة تعارضات الأسماء وتقلل الإسهاب — ويُستخدم كلاهما عبر use … as في أعلى الملف.

اختبار سريع

كيف تنشئ اسمًا مستعارًا لاستيراد صنف؟

الأسئلة الشائعة

هل درس «مساحات الأسماء المتداخلة والأسماء المستعارة» مجاني؟

نعم — نص درس «مساحات الأسماء المتداخلة والأسماء المستعارة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة PHP Academy، انتقل إلى CoddyKit PRO. تتضمن دورة PHP Academy 4 دروس في المجموع.

ماذا ستتعلم في «مساحات الأسماء المتداخلة والأسماء المستعارة»؟

أنشئوا مساحات أسماء فرعية واستخدموا أسماء مستعارة لتجنّب الإطالة تتمرن على PHP Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ PHP Academy؟

لا تُشترط خبرة سابقة. PHP Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «مساحات الأسماء المتداخلة والأسماء المستعارة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس PHP Academy هذا؟

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

جميع الدروس في هذه الدورة

  1. تعريف مساحات الأسماء واستخدامها
  2. مساحات الأسماء المتداخلة والأسماء المستعارة
  3. معيار التحميل التلقائي PSR-4
  4. تسجيل محمّلات الملفات تلقائيًا
← العودة إلى PHP Academy