ฉันพบว่าหลักการของ SOLIDค่อนข้างมีประโยชน์เมื่อคิดถึงการออกแบบเชิงวัตถุ
มีหลักการเกี่ยวกับภาษาที่ไม่เชื่อเรื่องพระเจ้า / ชุดที่คล้ายกันเหมาะสำหรับการเขียนโปรแกรมการทำงานหรือไม่?
ฉันพบว่าหลักการของ SOLIDค่อนข้างมีประโยชน์เมื่อคิดถึงการออกแบบเชิงวัตถุ
มีหลักการเกี่ยวกับภาษาที่ไม่เชื่อเรื่องพระเจ้า / ชุดที่คล้ายกันเหมาะสำหรับการเขียนโปรแกรมการทำงานหรือไม่?
คำตอบ:
มันยากที่จะหาสิ่งที่เทียบเท่า แต่ฉันสามารถลอง:
SOLID กลายเป็นความคิดที่ดีสำหรับขอบเขตการทำงาน / ความจำเป็นเช่นกัน
SRP - 'ทำสิ่งเดียวเท่านั้น' ถูกนำมาจากการเขียนโปรแกรมที่จำเป็นในตอนแรก การมีฟังก์ชั่นเล็ก ๆ ที่เน้นโฟกัสนั้นดี
OCP - ช่วยให้คุณสามารถเปลี่ยนพฤติกรรมโดยไม่ต้องแก้ไขโค้ดได้ดี ฟังก์ชั่นการเขียนโปรแกรมใช้ฟังก์ชั่นการสั่งซื้อสูงกว่ามรดก แต่หลักการถือ
LSP - การปฏิบัติตามสัญญาส่วนต่อประสานนั้นดีพอ ๆ กับการเขียนโปรแกรมเชิงฟังก์ชันเช่นเดียวกับการวางวัตถุ หากฟังก์ชันการเรียงลำดับใช้ตัวเปรียบเทียบคุณจะคาดหวังว่า '0 จะเท่ากับน้อยกว่าที่ให้ผลลัพธ์เชิงลบมากกว่าพฤติกรรมที่เป็นบวกมากกว่า'
ISP - ภาษาที่ใช้งานได้ส่วนใหญ่ยังคงมีโครงสร้าง การระบุชุดข้อมูลที่เล็กที่สุดที่จำเป็นสำหรับฟังก์ชั่นยังคงเป็นแนวปฏิบัติที่ดี ต้องการอินเทอร์เฟซที่เจาะจงน้อยที่สุดกับข้อมูล (เหตุใดจึงใช้รายการของ ints เมื่อ Enumerations of T ทำงานด้วย?) ยังคงเป็นแนวปฏิบัติที่ดี
กรมทรัพย์สินทางปัญญา - การระบุพารามิเตอร์ให้กับฟังก์ชั่น (หรือฟังก์ชั่นการสั่งซื้อที่สูงขึ้นเพื่อดึงพวกเขา) มากกว่าการเขียนโค้ดอย่างหนักฟังก์ชั่นที่จะได้รับค่าบางอย่างก็ดีในการเขียนโปรแกรมเชิงฟังก์ชัน
และแม้กระทั่งเมื่อทำการเขียนโปรแกรมเชิงวัตถุหลักการเหล่านี้ยังนำไปใช้กับการออกแบบวิธีการในวัตถุด้วย