Это зависит от того, сколько у вас данных и насколько они сложны. Если у вас есть десятки или сотни записей, то словарь будет работать нормально. Если у вас есть тысячи, то вы, вероятно, хотите использовать основные данные. Если ваша модель данных имеет много внутренней сложности / бизнес-логики, используйте базовые данные.
Начните с того, что проще для реализации, и переключайтесь, только если это окажется неэффективным. Если вы используете дизайн представления контроллера модели, вы можете поменять реализацию модели данных, не нарушая работу остальной части приложения. В моем случае я знаком с основными данными, поэтому это экономит мое время, чтобы использовать их даже в тех случаях, когда это, вероятно, излишне.
Кроме того, я думаю, что люди тратят много времени на беспокойство по поводу эффективной обработки буквенно-цифровой информации, когда требования к обработке графики даже самых простых приложений карликов, которые требуются для большинства буквенно-цифровых данных. Если вы не знаете, что у вас есть тысячи сложных записей для управления, я бы не стал тратить время на попытки оптимизировать буквенно-цифровую обработку данных на ранних этапах приложения. Это просто пустая трата времени.