রিপোজিটরি প্যাটার্ন একটি কালেকশন-সদৃশ ইন্টারফেসের পিছনে ডেটা অ্যাক্সেস কে বিমূর্ত করে — ব্যবসায়িক লজিককে ডেটা কীভাবে সংরক্ষণ এবং পুনরুদ্ধার করা হয় তা থেকে আলাদা করে। এটি অ্যাপ্লিকেশনকে ডেটা সোর্স (ডেটাবেস, API) থেকে বিচ্ছিন্ন করে, পরীক্ষাযোগ্যতা এবং রক্ষণাবেক্ষণযোগ্যতা উন্নত করে।
রিপোজিটরি প্যাটার্ন কী করে
REPOSITORY → an abstraction layer between business logic and DATA ACCESS:
→ provides a clean interface (like a collection: findById, save, delete, findAll)
→ HIDES how/where data is actually stored (database, API, cache, files)
→ business logic uses the repository, NOT the database directly
→ separate WHAT data operations from HOW they're implemented
