🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ محمدرضا
Autoloader کامپوزر
لقمان آوند حل شده توسط لقمان آوند

سلام

چندتا سوال در مورد autoloading کامپوزر داشتم:

  1. چرا نام بعضی کلاس‌ها و توابع در فایل autoload_real.php همراه با هش هستش!؟ چه لزومی داره،  مثلا:
    class ComposerAutoloaderInit0a79a5077142de011fb1686162475ec2
    function composerRequire0a79a5077142de011fb1686162475ec2

     

  2. استاد جان من، چرا autoloader‌های کامپوزر انقد ترسناکه ? (ما خیلی ساده ننوشتیم!؟)
    نگفتید که چرا یک تابع autoloader رو unregister می‌کنیم؟
    یکسری شروط و توابع هم درون فایل autoload_real.php بود که ای کاش یه توضیح مختصر میدادید.

کامپوزر هر بار که پکیجی رو نصب می‌کنه یا آپدیت می‌کنه یا دستور dumpautoload رو اجرا می‌کنید کل کدهای autoloader رو از نو میسازه و موقع ساخت هش جدید و ثابت جلوش میذاره که یه جورایی تغیر مشخص باشه ...

ضمنا کامپوزر پکیجهای زیادی رو هندل می‌کنه که ساختارهای مختلفی دارن بعضا و به همین دلیل آوتولودرش هم پیچیده‌تر هست. با آوتولودر پروژه خودمون مقایسه نکنید که استاندارد و فولدربندیش دست خودمونه و خیلی ساده میشه تعریفش کرد

بهترین پاسخ
لقمان آوند ۱۰ تیر ۱۳۹۹، ۱۹:۳۳