Laravel संग एक आवेदन निर्माण Dependency Injection

यस लेखमा, हामी निर्भरताहरू प्रबन्ध गर्न र थप व्यवस्थित स्रोत कोड संरचना सिर्जना गर्न Laravel प्रयोग गरेर एउटा अनुप्रयोग निर्माण गर्ने माध्यमबाट हिंड्नेछौं । Dependency Injection हामी स्टोरमा उत्पादन सूची प्रबन्ध गर्ने सरल उदाहरण सिर्जना गर्नेछौं।

चरण 1: तयारी

सर्वप्रथम, तपाईंले Laravel आफ्नो कम्प्युटरमा स्थापना गर्नुभएको छ भनी सुनिश्चित गर्नुहोस्। तपाईं Composer नयाँ Laravel परियोजना सिर्जना गर्न प्रयोग गर्न सक्नुहुन्छ:

composer create-project --prefer-dist laravel/laravel DependencyInjectionApp

परियोजना सिर्जना गरेपछि, परियोजना निर्देशिकामा नेभिगेट गर्नुहोस्:

cd DependencyInjectionApp

चरण 2: सिर्जना Service र Interface

service उत्पादन सूची व्यवस्थापन गर्न एउटा सिर्जना गरेर सुरु गरौं । यसलाई लागू गर्ने एउटा interface र कक्षा सिर्जना गर्नुहोस् interface:

फाइल सिर्जना गर्नुहोस् app/Contracts/ProductServiceInterface.php:

<?php  
  
namespace App\Contracts;  
  
interface ProductServiceInterface  
{  
    public function getAllProducts();  
    public function getProductById($id);  
}  

फाइल सिर्जना गर्नुहोस् app/Services/ProductService.php:

<?php  
  
namespace App\Services;  
  
use App\Contracts\ProductServiceInterface;  
  
class ProductService implements ProductServiceInterface  
{  
    public function getAllProducts()  
    {  
        // Logic to get all products  
    }  
  
    public function getProductById($id)  
    {  
        // Logic to get product by ID  
    }  
}  

चरण 3: कन्टेनरमा दर्ता Service गर्नुहोस्

फाइल खोल्नुहोस् app/Providers/AppServiceProvider.php र प्रकार्यमा थप्नुहोस् register:

use App\Contracts\ProductServiceInterface;  
use App\Services\ProductService;  
  
public function register()  
{  
    $this->app->bind(ProductServiceInterface::class, ProductService::class);  
}  

चरण 4: प्रयोग गर्दै Dependency Injection

नियन्त्रकमा, तपाइँ Dependency Injection इन्जेक्सन गर्न प्रयोग गर्न सक्नुहुन्छ ProductService:

use App\Contracts\ProductServiceInterface;  
  
public function index(ProductServiceInterface $productService)  
{  
    $products = $productService->getAllProducts();  
    return view('products.index', compact('products'));  
}  

निष्कर्ष

प्रयोग गरेर Dependency Injection र Service कन्टेनर मा Laravel, हामीले उत्पादन सूची व्यवस्थापन गर्न एउटा अनुप्रयोग निर्माण गरेका छौं। यो दृष्टिकोणले स्रोत कोडलाई थप व्यवस्थित बनाउँछ र एप्लिकेसनका विभिन्न कम्पोनेन्टहरू बीचको निर्भरता कम गर्छ।

Dependency Injection मा प्रयोग गर्ने बारे गहिरो बुझाइ प्राप्त गर्नको लागि तपाइँको आवश्यकता अनुसार परियोजनालाई अभ्यास र अनुकूलन गर्नुहोस् Laravel ।