Вариант использования абстракции или наследования? - PullRequest
0 голосов
/ 24 августа 2010

Я моделирую коммуникационный сервер UDP в VisualBasic.NET. В моей системе есть 3 типа сообщений: базовые, расширенные и полные сообщения.

Базовое сообщение состоит из: ID, версии и серийного номера. Расширенное сообщение состоит из: основного сообщения + NSeq, IDMsg, размера и CRC. Полное сообщение состоит из: расширенное сообщение + метка времени.

Каждое сообщение имеет собственный набор методов, но есть некоторые методы, которые являются общими для всех видов сообщений.

В этом случае я должен использовать наследование, так как расширенные и полные сообщения имеют одинаковые свойства базового сообщения, или я должен пойти на абстракцию? Я думаю, что эти понятия тоже не очень понятны.

Спасибо за помощь !!!

1 Ответ

2 голосов
/ 24 августа 2010

Если реализация общей функциональности одинакова, используйте наследование.

Если у вас есть общие операции среди объектов, но у каждого своя реализация, вы можете использовать интерфейсы для полиморфной обработки экземпляров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...