การแยกแอพพลิเคชั่นที่เป็นหินใหญ่ออกเป็นสองส่วนเล็ก ๆ ช่วยป้องกันข้อบกพร่อง
สิ่งต่าง ๆ ที่ไม่ค่อยเรียบง่ายในความเป็นจริง
การแยกไม่ได้ช่วยป้องกันข้อบกพร่องเหล่านั้นในตอนแรก บางครั้งมันสามารถช่วยในการค้นหาข้อบกพร่องได้เร็วขึ้น แอปพลิเคชันที่ประกอบด้วยส่วนประกอบขนาดเล็กที่แยกได้อาจอนุญาตให้มีการทดสอบส่วนบุคคล (ชนิด "หน่วย") มากขึ้นสำหรับส่วนประกอบเหล่านั้นซึ่งทำให้บางครั้งมันง่ายต่อการตรวจสอบสาเหตุของข้อผิดพลาดบางอย่างและอนุญาตให้แก้ไขได้เร็วขึ้น
อย่างไรก็ตาม
แม้แต่แอพพลิเคชั่นที่ดูเหมือนจะเป็นเสาหินจากด้านนอกอาจประกอบด้วยส่วนประกอบที่ทดสอบได้ภายในหน่วยจำนวนมากดังนั้นการทดสอบหน่วยจึงไม่ยากสำหรับแอพแบบเสาหิน
ดังที่ Ewan ได้กล่าวถึงไปแล้วการทำงานร่วมกันขององค์ประกอบหลายอย่างทำให้เกิดความเสี่ยงและข้อผิดพลาดเพิ่มเติม และการดีบั๊กระบบแอปพลิเคชั่นที่มีการสื่อสารระหว่างกระบวนการที่ซับซ้อนนั้นยากกว่าการดีบักแอปพลิเคชั่นแบบกระบวนการเดียว
สิ่งนี้ขึ้นอยู่กับว่าแอพขนาดใหญ่สามารถแยกส่วนประกอบเป็นอย่างไรและอินเทอร์เฟซแบบกว้างระหว่างส่วนประกอบนั้นเป็นอย่างไรและวิธีการใช้อินเตอร์เฟสเหล่านั้น
กล่าวโดยย่อนี่มักเป็นการแลกเปลี่ยนและไม่มีคำตอบที่ "ใช่" หรือ "ไม่" ถูกต้องโดยทั่วไป
เหตุใดโปรแกรมจึงมีแนวโน้มเป็นแบบเสาหิน
ทำพวกเขา มองไปรอบ ๆ ตัวคุณมีเว็บแอปในโลกที่มีลักษณะไม่ใหญ่โตมากสำหรับฉัน นอกจากนี้ยังมีโปรแกรมจำนวนมากที่มีรูปแบบปลั๊กอิน (AFAIK แม้แต่ซอฟต์แวร์ Maya ที่คุณกล่าวถึง)
พวกเขาจะไม่ง่ายกว่าที่จะรักษา
"การบำรุงรักษาที่ง่ายขึ้น" ที่นี่มักมาจากความจริงที่ว่าส่วนต่าง ๆ ของแอปพลิเคชันสามารถพัฒนาได้ง่ายขึ้นโดยทีมที่แตกต่างกันดังนั้นการกระจายภาระงานที่ดีขึ้นทีมงานเฉพาะทางที่มีจุดเน้นที่ชัดเจน
If the animation and modelling capabilities were split into their own separate application and developed separately, with files being passed between them, would they not be easier to maintain?
ไม่ผสมง่ายต่อการขยายด้วยง่ายต่อการรักษาโมดูลต่อหนึ่ง se- ไม่ได้เป็นอิสระจากภาวะแทรกซ้อนหรือการออกแบบที่น่าสงสัย มายาอาจเป็นนรกบนโลกที่ต้องดูแลในขณะที่ปลั๊กอินไม่มี หรือในทางกลับกัน