Laravel

Repository Pattern

Repository pattern (trade-off, use case), contracts, service layer, prinsip SOLID, dependency inversion, testability, kapan TIDAK menggunakannya

20 pertanyaan wawancaraยท
Senior
1

Apa itu Repository Pattern di Laravel?

Jawaban

Repository Pattern adalah design pattern yang menambahkan lapisan abstraksi antara logika bisnis dan lapisan data. Pattern ini mengenkapsulasi logika akses data dalam kelas khusus (repositories), memungkinkan pemisahan tanggung jawab dan membuat kode lebih mudah diuji. Tidak seperti menggunakan Eloquent langsung di controllers, repository memusatkan query kompleks dan memudahkan perubahan sumber data tanpa memengaruhi bagian lain aplikasi.

2

Dalam skenario apa Repository Pattern memberikan nilai paling besar?

Jawaban

Repository Pattern sangat berguna dalam aplikasi kompleks dengan query yang canggih dan berbagai sumber data. Pattern ini bersinar dalam proyek enterprise di mana logika akses data kompleks, digunakan kembali di banyak tempat, atau kemungkinan besar akan berubah (misalnya, migrasi dari MySQL ke MongoDB). Untuk CRUD sederhana atau aplikasi kecil, hal ini bisa menjadi over-engineering yang tidak perlu.

3

Apa trade-off utama dari Repository Pattern?

Jawaban

Trade-off utama adalah meningkatnya kompleksitas kode dan jumlah file yang harus dipelihara. Setiap repository menambahkan setidaknya 2 file (interface + implementasi), yang dapat dengan cepat menjadi bertele-tele dalam aplikasi sederhana. Laravel Eloquent sudah merupakan abstraksi yang kuat yang menyelesaikan 80% kasus penggunaan, dan menambahkan lapisan ekstra dapat memperlambat pengembangan tanpa manfaat nyata jika query tetap sederhana.

4

Bagaimana Repository Pattern menerapkan prinsip SOLID Dependency Inversion?

5

Apa keuntungan utama Repository Pattern untuk pengujian?

+17 pertanyaan wawancara

Kuasai Laravel untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis