У меня есть пара базовых сообщений Перечисления, которые я вставляю в интерфейс для их управления. Однако, как я это делаю, мне нужно поддерживать сообщения Legacy, добавляя новые. Каков наилучший способ сделать это?Интерфейс с несколькими определениями C#
Это общая идея интерфейса Msg
:
public interface Msg
{
/// <summary>
/// Gets the ID of the message
/// </summary>
Legacy_Msgs MessageId { get; }
//New_Msgs MessageId { get; } // How implement use this?
/// <summary>
/// Converts the message to a byte array representation
/// </summary>
byte[] MsgBytes { get; }
}
Однако то, что я спрашиваю это он делает больше смысла иметь новый интерфейс для New_Msgs
, который наследуется Msg
и подменяет MessageId
, или делает с точки зрения эффективности имеет смысл иметь совершенно новый интерфейс NewMsg
для перечисления New_Msg
.
Я понимаю, что оба решения могут работать, но мне интересно, как еще один разработчик смотрит на такое решение, что имеет больше смысла?
Другие будут использовать его, однако, к сожалению, Legacy не устарело, они хотят его перетащить и полностью поддерживать, пока не последует уведомление ... :-( – Prediluted