Rumah >pembangunan bahagian belakang >tutorial php >Corak reka bentuk PHP: hubungan dengan prinsip reka bentuk
Corak Reka Bentuk PHP: Hubungan dengan Prinsip Reka Bentuk
Pengenalan
Corak reka bentuk ialah penyelesaian boleh guna semula dalam pembangunan perisian yang digunakan untuk menyelesaikan masalah biasa. Ia berdasarkan prinsip reka bentuk seperti SOLID (tanggungjawab tunggal, tertutup terbuka, penyongsangan kebergantungan, pengasingan antara muka, penggantian Liskov). Memahami prinsip reka bentuk adalah penting untuk menggunakan corak reka bentuk dalam PHP dengan berkesan.
Prinsip Reka Bentuk
Prinsip Tanggungjawab Tunggal (SRP): Setiap kelas atau modul harus bertanggungjawab untuk satu fungsi sahaja. Ini meningkatkan kebolehselenggaraan dan kebolehujian.
Open-Closed Principle (OCP): Perisian sepatutnya mudah untuk dikembangkan, tetapi sukar untuk diubah suai. Ini bermakna antara muka dan kelas abstrak harus digunakan dan bukannya kelas konkrit.
Prinsip Penyongsangan Kebergantungan (DIP): Modul peringkat tinggi tidak boleh bergantung pada modul peringkat rendah. Sebaliknya, mereka harus bergantung pada antara muka abstrak atau kelas asas.
Prinsip Pengasingan Antara Muka (ISP): Antara muka hendaklah sekecil mungkin, mengandungi kaedah yang diperlukan sahaja. Ini mengurangkan gandingan dan meningkatkan kebolehskalaan.
Prinsip Penggantian Liskov (LSP): Subkelas seharusnya dapat menggantikan kelas induknya dengan lancar. Ini bermakna subkelas mesti mematuhi kontrak kelas induk.
Corak Reka Bentuk
Corak Kaedah Kilang: Ia menyediakan antara muka untuk mencipta objek tanpa menyatakan kelas konkrit objek. Ini membolehkan kelas objek yang berbeza dicipta dalam situasi yang berbeza.
Kes praktikal
interface ShapeFactory { public function createShape(string $type); } class CircleFactory implements ShapeFactory { public function createShape(string $type): Shape { return new Circle(); } } class RectangleFactory implements ShapeFactory { public function createShape(string $type): Shape { return new Rectangle(); } } class Shape { public function draw() { echo "Drawing a shape.\n"; } } class Circle extends Shape { public function draw() { echo "Drawing a circle.\n"; } } class Rectangle extends Shape { public function draw() { echo "Drawing a rectangle.\n"; } } $factory = new CircleFactory(); $shape = $factory->createShape("circle"); $shape->draw();
Contoh ini menunjukkan corak kaedah kilang, yang mencipta objek bentuk tertentu berdasarkan jenis. Ia mengikuti OCP kerana kita boleh menambah jenis bentuk baharu tanpa mengubah suai kelas Shape. Ia juga mengikuti DIP kerana Factory bergantung pada antara muka ShapeFactory dan bukannya kelas Shape konkrit.
Atas ialah kandungan terperinci Corak reka bentuk PHP: hubungan dengan prinsip reka bentuk. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!