חוצמזה שירושה כפולה זה גורם לבעיות, זה גם די מיותר. אתה מיישם את הפתרון שלי (#2), אבל בצורה עקיפה. זה נכון לעשות אם ורק אם לIDA יש חיים משלו שלא קשורים לIA, אבל לפי ההסבר שלך הבנתי שיש בינהם יחס הורשה, לכן זה לא במקום.
אם אתה מקפיד לעשות את זה מממשקים בלבד (מה גם שC# מאפשרת ירושה מרובה אך ורק מממשקים עד כמה שאני יודע). לא אמרתי שIDA חייב לרשת מIA - רק ציינתי שהוא מרחיב את היכולות של המחלקה. למרות שעלול להיות מצב בעתיד שנרצה ליצור מחלקה שכן צריכה את היכולות של IA. שורה תחתונה, אתה די צודק... לא הבנתי איך זה דומה לפתרון שלך? (זה עם הממשק שיורש מA נכון?)
כי אני כנראה אהיה צריך את המימוש בנמצא גם בA אלא אם אני אצליח להגיע לOOD בהתגלמותו כך שהמחלקה היורשת תוכל להשאיר למחלקת האב לטפל בכל מה שהיא יודעת לטפל ורק להוסיף פונקציונליות. אבל נעזוב את זה... אני גם לא בטוח מה בדיוק #C מאפשרת אבל זה לא רלוונטי לדיון. הבעיה שלי היא עיצובית גרידא. בכל מקרה, עדיין לא הבנתי איך הפתרון שאני הצעתי דומה לפתרון שלך בצורה עקיפה. אשמח לקבל הסבר.