ฉันชอบความคิดเกี่ยวกับการออกแบบที่ขับเคลื่อนด้วยโดเมน แต่ในขณะที่ฉันกำลังเรียนรู้ Go ฉันสงสัยว่ามี DDD ที่เทียบเท่ากับภาษาที่มีประสิทธิภาพมากกว่าหรือไม่
ฉันชอบความคิดเกี่ยวกับการออกแบบที่ขับเคลื่อนด้วยโดเมน แต่ในขณะที่ฉันกำลังเรียนรู้ Go ฉันสงสัยว่ามี DDD ที่เทียบเท่ากับภาษาที่มีประสิทธิภาพมากกว่าหรือไม่
คำตอบ:
ไม่มีอะไรเทียบเท่า DDD ต้องการกระบวนทัศน์เพื่อสนับสนุนการเขียนซ้ำบ่อยครั้งในสถานการณ์การพัฒนาซอฟต์แวร์เชิงวิวัฒนาการ OOP ดูเหมือนกลยุทธ์ที่ทำงานได้เพียงอย่างเดียวในเวลานั้น แต่ภาษาที่ใช้งานได้สามารถรองรับสถานการณ์ดังกล่าวได้เช่นกัน
คุณอาจต้องการดู วิดีโอของ Greg Youngเกี่ยวกับ DDD และ Functional Programming และวิดีโอของ Patrik Fredrikssonเกี่ยวกับการใช้ DDD ด้วยภาษาที่ใช้งานได้เช่น Clojure
ฉันเชื่อว่า DDD ไม่ได้เกี่ยวกับการออกแบบ OOP แต่เกี่ยวกับวิธีที่คุณเข้าใกล้กระบวนการพัฒนาทั้งหมด การพัฒนาซ้ำภาษาที่ใช้กันแพร่หลายความร่วมมืออย่างใกล้ชิดของผู้เชี่ยวชาญทางธุรกิจและนักพัฒนาล้วนเป็นภาษาและกระบวนทัศน์ที่ไม่เชื่อเรื่องพระเจ้า
การออกแบบวัตถุใน DDD ไม่ใช่สิ่งใหม่ รูปแบบที่อธิบายไว้ใน DDD นั้นมีมานานก่อนที่ DDD จะเห็นแสงสว่างของโลก รวบรวมรากรูปแบบกลยุทธ์วัตถุที่มีคุณค่าเหมาะสมกับการอธิบายตรรกะทางธุรกิจเท่านั้น ดังนั้นคำถามของคุณควรเป็นเช่น "วิธีแสดงตรรกะทางธุรกิจและยังคงเป็นสถานะในภาษาที่ใช้งานได้" คุณอาจมองหารูปแบบการออกแบบสำหรับภาษาโปรแกรมที่ใช้งานได้