У мене є функція, яка повертає об'єкти одного типу (результати запитів), але не має спільних властивостей або методів. Для того, щоб мати загальний тип, я вдався до використання порожнього інтерфейсу як типу повернення і "реалізував" це на обох.
Звичайно, це не звучить правильно. Я можу лише втішити себе, тримаючись за надію, що колись у цих класів буде щось спільне, і я перенесу цю загальну логіку на мій порожній інтерфейс. Проте я не задоволений і думаю про те, чи варто мені використовувати два різні методи і умовно зателефонувати далі. Це був би кращий підхід?
Мені також сказали, що .NET Framework використовує порожні інтерфейси для позначення.
Моє запитання: чи порожній інтерфейс є сильним знаком проблеми дизайну чи він широко використовується?
EDIT : Для зацікавлених пізніше я дізнався, що дискриміновані спілки функціональними мовами є ідеальним рішенням для того, чого я намагався досягти. C # ще не здається доброзичливим до цієї концепції.
EDIT : Я написав довшу статтю про цю проблему, детально пояснивши проблему та рішення.