InfrastructureIgnorance

InfrastructureIgnorance เล่าว่า Model จะต้องสนใจเฉพาะปัญหาใน Domain Logic เท่านั้น ซึ่งจะไม่เกี่ยวข้องกับส่วนของ Infrastructure เลยไม่ว่าจะกรณีใดก็ตามแต่

ภาพ Architecture ต่อไปนี้ เป็นตัวอย่างที่มีลักษณะ InfrastructureIgnorance

ตัวอย่าง Architecture อีกสักภาพ

ทั้ง 2 Architecture ตัวอย่างนั้น จะเห็นว่า Domain Logic จะไม่ยุ่งเกี่ยวกับ Infrastructure Components ใดๆเลย ซึ่งจะทำให้ เราสนใจวิเคราะห์ และออกแบบเฉพาะ Model ที่เกี่ยวข้องกับปัญหาใน Domain เฉพาะเท่านั้น จึงทำให้เราทำการจำลอง ทดสอบ ทดลองกับ Domain Model ที่มีความซับซ้อนที่สุดได้โดยง่ายขึ้นมาก และยังสามารถเปลี่ยนแปลง Infrastructure ได้โดยไม่กระทบต่อ Domain ของเราเลย

ในแนวคิดของผม การเปลี่ยนแปลง Infrastructure ที่ไม่กระทบต่อ Domain นั้นสำคัญกว่า การเปลี่ยนแปลง Domain แล้วไปกระทบต่อ Infrastructure อย่างมาก อันเนื่องจาก Domain ที่มีการเพิ่มเติม ต่อขยาย หรือเปลี่ยนแปลงเพื่อแก้ปัญหาเฉพาะด้าน อย่างเช่น ธุรกิจธนาคาร, ประกันภัย, บัญชี, เศรษฐศาสตร์, การขนส่ง, วิศวะกรรมศาตร์, วิทยาศาสตร์, อุตสาหกรรมการผลิตต่างๆนาๆ เป็นต้นนั้น มันเกิดมาจาก Customer ที่ต้องการ Software มาช่วยจัดการปัญหาของเขาเหล่านั้น ดังนั้นปัญหาใน Domain มันจึงสำคัญ และมีคุณค่ามากที่สุดสำหรับผมแล้ว

 ขอบคุณครับ

#:P

Advertisements