Repository Pattern உள்ளதை ஆராய்தல் Laravel: தரவைப் பிரித்தல் மற்றும் Business Logic

Repository Pattern தரவு அணுகல் தர்க்கத்தை இலிருந்து பிரிப்பதை நோக்கமாகக் கொண்ட மென்பொருள் உருவாக்கத்தில் பரவலாகப் பயன்படுத்தப்படும் வடிவமைப்பு வடிவமாகும் business logic. இன் சூழலில் Laravel, Repository Pattern தரவுத்தளத்திலிருந்து தரவை சுத்தமாகவும் பராமரிக்கக்கூடியதாகவும் நிர்வகிக்கவும் தொடர்பு கொள்ளவும் உதவுகிறது.

நன்மைகள் Repository Pattern

வினவல்களை பிரித்தல் மற்றும் Business Logic: தரவு வினவலை தனித்தனி கூறுகளாக Repository Pattern பிரிக்கிறது. business logic இது மூலக் குறியீட்டை மேலும் படிக்கக்கூடியதாகவும், புரிந்துகொள்ளக்கூடியதாகவும், பராமரிக்கக்கூடியதாகவும் ஆக்குகிறது.

தரவுத்தள ஒருங்கிணைப்பு: Repository Pattern வகுப்புகளுக்குள் அனைத்து தரவுத்தள தொடர்புகளையும் மையப்படுத்த உங்களை அனுமதிக்கிறது repository. பயன்பாடு முழுவதும் பல வகுப்புகளை மாற்றாமல், தரவு வினவல்களை ஒருமுகப்படுத்தப்பட்ட முறையில் பராமரிக்கவும் புதுப்பிக்கவும் இது உதவுகிறது.

சோதனை ஒருங்கிணைப்பு: ஐப் பயன்படுத்துவதன் மூலம் Repository Pattern, யூனிட் சோதனையின் போது களஞ்சியங்களின் போலி செயலாக்கங்களை எளிதாக உருவாக்கலாம். இது உண்மையான தரவுகளிலிருந்து சோதனையை திறம்பட தனிமைப்படுத்துகிறது.

பயன்படுத்துகிறது Repository Pattern _ Laravel

உருவாக்கு Repository Interface: முதலில், Repository Interface அனைத்து களஞ்சியங்களும் செயல்படுத்தும் பொதுவான முறைகளை வரையறுக்க ஒரு உருவாக்கவும்.

namespace App\Repositories;  
  
interface UserRepositoryInterface  
{  
    public function getById($id);  
    public function create(array $data);  
    public function update($id, array $data);  
    // ...  
}  

குறிப்பிட்ட களஞ்சியங்களை உருவாக்கவும்: Repository அடுத்து, இதிலிருந்து முறைகளைச் செயல்படுத்த குறிப்பிட்ட வகுப்புகளை உருவாக்கவும் interface:

namespace App\Repositories;  
  
use App\Models\User;  
  
class UserRepository implements UserRepositoryInterface  
{  
    public function getById($id)  
    {  
        return User::find($id);  
    }  
  
    public function create(array $data)  
    {  
        return User::create($data);  
    }  
  
    public function update($id, array $data)  
    {  
        $user = User::find($id);  
        if($user) {  
            $user->update($data);  
            return $user;  
        }  
        return null;  
    }  
    // ...  
}  

பதிவு களஞ்சியங்கள்: Laravel இறுதியாக, சேவை வழங்குநரில் களஞ்சியங்களை பதிவு செய்யவும்:

use App\Repositories\UserRepository;  
use App\Repositories\UserRepositoryInterface;  
  
public function register()  
{  
    $this->app->bind(UserRepositoryInterface::class, UserRepository::class);  
}  

இதைப் பயன்படுத்தி Repository: repository இப்போது நீங்கள் கட்டுப்படுத்திகள் அல்லது பிற வகுப்புகளில் பயன்படுத்தலாம்:

use App\Repositories\UserRepositoryInterface;  
  
public function show(UserRepositoryInterface $userRepository, $id)  
{  
    $user = $userRepository->getById($id);  
    // ...  
}  

முடிவுரை

தரவு அணுகல் தர்க்கத்தை இலிருந்து பிரிக்க இது Repository Pattern ஒரு சக்திவாய்ந்த கருவியாகும். இது மூலக் குறியீட்டை மேலும் படிக்கக்கூடியதாகவும், பராமரிக்கக்கூடியதாகவும், சோதிக்கக்கூடியதாகவும் ஆக்குகிறது. ஐப் பயன்படுத்துவதன் மூலம், உங்கள் பயன்பாட்டில் உள்ள தரவை நீங்கள் திறமையாக நிர்வகிக்கலாம். Laravel business logic Repository Pattern Laravel