ઉપયોગ કરવા માટેની માર્ગદર્શિકા Service Container અને Dependency Injection અંદર Laravel

Service Container અને Dependency Injection બે નિર્ણાયક વિભાવનાઓ છે Laravel જે તમને નિર્ભરતા અને તમારા સ્રોત કોડની રચનાને અસરકારક રીતે સંચાલિત કરવામાં મદદ કરે છે. વિવિધ પરિસ્થિતિઓમાં તેનો ઉપયોગ કેવી રીતે કરવો તે નીચે છે:

સુસિંગ Service Container

ઑબ્જેક્ટ્સને લવચીક રીતે સંચાલિત કરવામાં અને પ્રદાન કરવામાં Service Container મદદ Laravel કરે છે. આનો ઉપયોગ કેવી રીતે કરવો તે અહીં છે Service Container:

ઑબ્જેક્ટની નોંધણી કરવી: bind ઑબ્જેક્ટને માં રજીસ્ટર કરવા માટે પદ્ધતિનો ઉપયોગ કરો Service Container.

app()->bind('userService', function() {  
    return new UserService();  
});  

ઑબ્જેક્ટને ઍક્સેસ કરવું: જ્યારે તમારે ઑબ્જેક્ટનો ઉપયોગ કરવાની જરૂર હોય, ત્યારે તમે Service Container રજીસ્ટર્ડ નામનો ઉપયોગ કરીને તેને પુનઃપ્રાપ્ત કરી શકો છો.

$userService = app('userService');

ઉપયોગ કરીને Dependency Injection

Dependency Injection નિર્ભરતા ઘટાડે છે અને તમારા કોડને વધુ વાંચવા યોગ્ય બનાવે છે. ઉપયોગ કેવી રીતે કરવો તે અહીં છે Dependency Injection:

દ્વારા નિર્ભરતા જાહેર કરવી Constructor: વર્ગમાં જ્યાં તમારે અવલંબનનો ઉપયોગ કરવાની જરૂર છે, તેમને દ્વારા જાહેર કરો constructor. Laravel ઑબ્જેક્ટ શરૂ કરતી વખતે ઑટોમૅટિક રીતે નિર્ભરતાને ઇન્જેક્ટ કરશે.

class UserController extends Controller  
{  
    protected $userService;  
  
    public function __construct(UserService $userService)  
    {  
        $this->userService = $userService;  
    }  
}  

પદ્ધતિ દ્વારા નિર્ભરતાને ઇન્જેક્ટ કરવી Setter: તમે પદ્ધતિઓ દ્વારા પણ નિર્ભરતાને ઇન્જેક્ટ કરી શકો છો setter. Laravel નિર્ભરતાને ઇન્જેક્ટ કરવા માટે આ પદ્ધતિઓને આપમેળે કૉલ કરશે.

class UserController extends Controller  
{  
    protected $userService;  
  
    public function setUserService(UserService $userService)  
    {  
        $this->userService = $userService;  
    }  
}  

નિષ્કર્ષ

ઉપયોગ Service Container અને Dependency Injection માં Laravel તમને નિર્ભરતા અને સ્રોત કોડ માળખું અસરકારક રીતે સંચાલિત કરવામાં મદદ કરે છે. Laravel આ સિદ્ધાંતોને લાગુ કરીને, તમે તમારી એપ્લિકેશનના વિકાસ દરમિયાન લવચીક, જાળવી શકાય તેવા અને સરળતાથી એક્સ્ટેન્સિબલ કોડ બનાવી શકો છો .