SOLID singkatan dari seperangkat prinsip dasar dalam desain perangkat lunak yang digunakan untuk membuat sistem yang dapat dipelihara, diperluas, dan fleksibel. SOLID adalah akronim yang dibentuk oleh huruf awal dari lima prinsip ini:
S- Single Responsibility Principle
Kelas atau modul seharusnya hanya memiliki satu tanggung jawab tunggal. Ini membantu dalam pemeliharaan dan modifikasi kode yang lebih mudah tanpa memengaruhi fungsi lainnya.
O- Open/Closed Principle
Kode harus terbuka untuk ekstensi(menambahkan fitur baru) tetapi tertutup untuk modifikasi(tidak mengubah kode yang sudah ada). Ini mendorong penggunaan pewarisan, antarmuka, atau mekanisme ekstensi lainnya untuk menambahkan fitur baru tanpa mengubah kode yang sudah ada.
L- Liskov Substitution Principle
Objek dari subkelas harus dapat diganti dengan objek dari kelas induk tanpa mempengaruhi kebenaran program. Ini memastikan bahwa pewarisan diterapkan dengan aman dan benar.
SAYA- Interface Segregation Principle
Lebih baik memiliki antarmuka kecil dan spesifik daripada antarmuka besar dengan banyak metode. Ini membantu menghindari kelas yang dipaksa untuk mengimplementasikan metode yang tidak perlu.
D- Dependency Inversion Principle
Modul tingkat tinggi tidak boleh bergantung pada modul tingkat rendah. Keduanya harus bergantung pada abstraksi. Prinsip ini mendorong penggunaan injeksi ketergantungan untuk mengurangi kopling ketat antar modul dan membuat sistem lebih mudah untuk diuji dan diperluas.
SOLID prinsip meningkatkan struktur kode, mempromosikan modularitas, dan mengurangi risiko yang terkait dengan perubahan. Prinsip-prinsip ini dapat diterapkan di berbagai bahasa pemrograman dan lingkungan pengembangan.