หลักการ SOLID
หลักการเขียนโปรแกรมเชิงวัตถุ SOLID มีความจำเป็น ในการสร้างซอฟต์แวร์ที่ทำงานได้ และสามารถบำรุงรักษาได้ในระยะยาวบนพื้นฐานของ การเขียนโปรแกรมเชิงวัตถุ (OOP)
หลักการพื้นฐานของ SOLID:
- ความรับผิดชอบเดียว - วัตถุแต่ละชิ้นมีเพียง ความรับผิดชอบ (เป้าหมาย) เดียว ซึ่ง ควรถูกแทนด้วยคลาสแยกต่างหาก ตัวอย่างเช่น การดึงข้อมูลจากฐานข้อมูลและ การตรวจสอบความถูกต้องในภายหลังควรมีคลาสที่ต่างกัน เพื่อไม่ให้กระบวนการทั้งสองนี้ปะปนกัน
- เปิดสำหรับขยาย/ปิดสำหรับแก้ไข - คลาสควรเป็น เปิดสำหรับการขยายและการเพิ่มเติม งานใหม่ ๆ และในขณะเดียวกัน ปิดสำหรับการแก้ไขโค้ดหลัก ดังนั้น สามารถเพิ่มโมดูลและฟังก์ชันอื่น ๆ เข้าไปในคลาสได้ แต่โค้ดต้นฉบับควรคงเดิม
- การแทนที่ของลิสคอฟ - ลูกคลาสทั้งหมดที่สร้างขึ้น ต้องรักษาและแสดงพฤติกรรม (งานที่ทำ) ของคลาสแม่ของพวกมัน
- การแบ่งแยกอินเทอร์เฟซ - อินเทอร์เฟซขนาดใหญ่จำเป็นต้อง ถูกแบ่งออกให้เล็กลงและมีความเฉพาะทางมากขึ้น เพื่อไม่ให้ผู้ใช้ได้รับข้อมูลที่ไม่จำเป็น
- การกลับด้านการอ้างอิง - วัตถุในระดับบน เช่น คลาส ต้องไม่ขึ้นอยู่กับโมดูล ในระดับล่าง อย่างไรก็ตาม ทั้งหมดต้อง ขึ้นอยู่กับเอนทิตีที่เป็นนามธรรม
ดูเพิ่มเติม
-
หลักการ
DRY,
ซึ่งแบ่งซอฟต์แวร์ออกเป็นส่วนประกอบย่อยๆ -
หลักการ
KISS,
ซึ่งปฏิเสธการทำให้ซอฟต์แวร์ซับซ้อน -
หลักการ
YAGNI,
ซึ่งปฏิเสธการทำงานที่เกินความจำเป็นของซอฟต์แวร์ -
หลักการ
CQS,
ซึ่งกำหนดให้แต่ละฟังก์ชันมีเพียงคำสั่งเดียว -
หลักการ
LoD,
ซึ่งถูกนำไปใช้ในการพัฒนาซอฟต์แวร์ -
หลักการ การแบ่งแยกความรับผิดชอบ,
ซึ่งถูกนำไปใช้ในการพัฒนาซอฟต์แวร์