Как более правильно реализовать такой функционал в ООП (C#)? Здравствуйте, суть идеи есть алгоритм обработки справок, грубо говоря цикл. Мне необходимо реализовать хранение настроек обработки конкретных справок (всего три параметра - высота, ширина и ориентация). То есть во время работы цикла мне необходимо по имени справки получить эти три параметра. Приложение простое и поэтому требований к ресурсам никаких особо нет, но хочется сразу сделать правильно, дабы не учиться писать говнокод.
Как я это вижу:
1) Создать класс справкиprivate string _naim;
....
public string naim
{
get { return _naim; }
set { _naim = value; }
}
...
2) Создать класс, который бы организовывал коллекцию объектов этого класса, быстрый поиск по ним, чтение и запись этой коллекции в файл.
Правильно ли я вижу решение проблемы? И если правильно, какой тип коллекции лучше выбрать с учетом того, что ее размер заранее не известен, как реализовать быстрый поиск в коллекции по по свойству объекта и как эту коллекцию сохранять и считывать?

21 Авг 2019 в 07:09
181 +1
0
Ответы
1

Ваше предложенное решение вполне верное. Вам действительно необходимо создать класс для справки, который будет содержать необходимые параметры (высота, ширина, ориентация) и методы доступа к ним.

Для хранения объектов справок вы можете использовать коллекцию List из пространства имен System.Collections.Generic. Эта коллекция позволяет хранить объекты типа вашего класса справки и имеет гибкую структуру для добавления, удаления и поиска элементов.

Для быстрого поиска справки по имени, вы можете использовать LINQ (Language Integrated Query). Например, чтобы найти объект справки по имени "справка1", вы можете использовать следующий запрос:

var foundSproka = spravkiList.FirstOrDefault(s => s.naim == "справка1");

Чтобы сохранять и загружать коллекцию справок из файла, вы можете использовать сериализацию объектов в XML или JSON формат. Для этого вам может помочь классы XmlSerializer или JsonSerializer из пространства имен System.Xml.Serialization и Newtonsoft.Json соответственно.

Таким образом, ваш план решения проблемы выглядит достаточно правильным и оптимальным для вашей задачи.

20 Апр 2024 в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир