PDA

View Full Version : آموزش: Dependency Injection چیه؟



navid3d_69
شنبه 28 اردیبهشت 1392, 00:50 صبح
سلام این Dependency Injection چی هست ؟ :دی

Nima0711
شنبه 28 اردیبهشت 1392, 14:25 عصر
سلام این Dependency Injection چی هست ؟ :دی

سلام

به تامین وابستگی های یک پروژه Dependency Injection می گویند ، که اگر اشتباه نکنم قبلاً با PEAR انجام می شد ولی امروزه با ابزاری قدرتمند به نام Composer انجام می شود .

کامپوزر رو می توانید از این جا بگیرید.

getcomposer.org

در این سایت به پکیچ های موجود می توانید نگاه کنید.

packagist.org

سازوکار کامپوزر ، این هست که فایلی به نام Composer.json در روت پروژه وجود دارد و شما با وارد کردن دستور composer install در terminal یا command prompt وابستگی های پروژه رو به راحتی نصب می کنید.

بعد از اجرای دستور بالا پوشه ای به نام vendor در روت قرار می گیرد و دارای یک فایل به نام autoload.php است و پوشه دیگری به نام composer و متناسب با وابستگی های پروژه ، یک یا چند پوشه دیگر ساخته می شود.

با require کردن یک فایل ( autoload.php )به راحتی می توانید تمام وابستگی های پروژه را مدیریت کنید. به همین دلیل برای تغییر در وابستگی ها نیاز به ویرایش قسمت های زیادی از پروژه نیست کافیست composer.json رو ویرایش کنید و سپس از دستور composer update و سپس composet dump-autoload استفاده کنید و به صورت اتوماتیک فایل autoload شما اپدیت می شود.

نکته بسیار خوبی که در کاپوزر وجود دارد ، استفاده از استاندارد PSR-0 است . ( استاندارد دسته بندی و پوشه بندی و همچنین نام گذاری php )
با وجود کامیونیتی فوق العاده ی php توسعه repository های packagist با سرعتی فوق العاده چه از نظر کمیت و چه از نظر کیفیت در حال پیشرفت است.

موفق باشید.