Использование структуры или класса для хранения объекта - PullRequest
0 голосов
/ 23 июня 2011

У меня проблема с проектированием. Я должен использовать класс или структуру в этом случае. Пример:

struct DataTicker { символ sring; десятичная цена; десятичный том; }

класс DataTicker { символ строки; десятичная цена; десятичный том; }

Предположим, у меня есть 3 проекта: клиент, сервер и библиотека. Библиотека определит объект DataTicker. Клиент и сервер будут ссылаться на эту библиотеку, чтобы использовать этот объект. Клиент и сервер будут отправлять и передавать данные, данные могут быть объектом DataTicker или списком объекта DataTicker.

Я должен определить DataTicker как класс или структуру. И в будущем, если я добавлю новые поля в DataTicker и обновлю библиотеку только на сервере (сервер будет использовать новый DataTicker с более чем 3 полями), клиент все равно будет использовать старую библиотеку (DataTicker с 3 полями) и сможет анализировать новый объект DataTicker.

Спасибо.

Ответы [ 3 ]

0 голосов
/ 23 июня 2011

Если у вас нет конкретной причины для использования структуры, вам, вероятно, следует просто использовать класс.

Что касается второй части вашего вопроса, то, конечно, это зависит от того, как выделает вашу сериализацию и передачу данных.Если вы делаете это любым из стандартных способов, встроенных в .net, я подозреваю, что ответ печально нет .

0 голосов
/ 23 июня 2011

Альтернативой является определение интерфейса и программы для этого; затем вы можете реализовать структуры / классы по мере необходимости.

0 голосов
/ 23 июня 2011

Вы определенно выбрали бы класс, потому что у вас есть ссылочный тип (строка) в качестве датаблока.

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