2010-06-21 2 views
0

Мне нужно создать базу новостей, которая потенциально может получать новости от разных поставщиков и отображать их на нашем сайте. Прямо сейчас я думаю, что я должен просто придумать, как это будет выглядеть на нашем сайте, в полях, которые мы будем отображать, а затем, когда появится новый поставщик, верните скрипт, который будет анализировать их данные в нашем формате. Является ли это лучшим или мне нужно скопировать данные точно, а затем отображать более или менее данные на основе провайдера (логические проверки)? Я, конечно, склоняюсь к первому варианту, но хотел убедиться, что я не сумасшедший.Конструкция БД для импорта данных от нескольких поставщиков?

ответ

1

Я бы очень убедился, что код и структура данных для моего сайта являются моими собственными.

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

В любом случае, я бы закодировал логику преобразования/импорта для каждого провайдера в своем собственном классе и каждый из них выходил из общего предка или каждый из них реализовал общий интерфейс. Таким образом, вы гарантируете, что ваша собственная логика и структуры данных защищены от тонкостей различных поставщиков новостей.

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

Смежные вопросы