У меня есть класс в моем приложении, который переводит токены маршрута в полностью определенные пути. Например: он может принимать строку типа "%MYAPPDATA%"
и возвращает C:\Users\user.DOMAIN\AppData\Raoming\MyApp
.Должен ли я сохранять данные приложения?
В качестве альтернативы класс имеет перегрузку для функции, которая может принимать перечисление вместо строки. Например: он может принимать перечисление AppPaths.MyAppData
и возвращать C:\Users\user.DOMAIN\AppData\Raoming\MyApp
.
Мне нужно хранить «таблицу поиска» где-то, но я не уверен, какой лучший метод или структура. Должен ли я использовать набор данных и записывать таблицу на диск? Или просто сохранить в памяти?
Единственное значение пути может отображать строку и перечисление. Я полагаю, я могу просто сохранить массив в памяти, индекс которого соответствует целочисленному значению перечисления и выполняет поиск по массиву, когда мне передается строка.
Мысли?
я должен просто построить массив, когда объект построен тогда? –
Да, это подход, который я бы взял. Если вы не хотите писать код для поиска совпадений, тогда исследуйте тип List или, еще лучше, общую версию словаря. Вам все равно нужна функция для сравнения, но они довольно легкие. –
Еще один вопрос - переводчик - это своего рода утилита, поэтому я создал его как статический класс, в котором был большой оператор case. Теперь, когда мне нужно сохранить таблицу поиска в памяти, должен ли я сделать общее состояние таблицы или сделать класс нестатическим? –