2010-06-01 2 views
5

У меня есть опыт работы с PHP на два года, однако я никогда не работал с шаблонами дизайна. Мне недавно была поставлена ​​задача, которая заставила меня подвергнуть сомнению мудрость этого решения.PHP Design Pattern Advise

меня попросили, чтобы создать систему, которая:

  1. Вставка заказов в базу данных. Эти заказы могут иметь множество атрибутов и логику управления, которые необходимо применять. Система не будет напрямую отвечать за интерфейс, он получит команды через API.

  2. Написать сценарии, которые извлекают заказы из базы данных, решить, какой поставщик отправить и создать связанные файлы для загрузки поставщику. Форматы файлов различаются (XML, CSV).

  3. Обработка входящих файлов от поставщиков в различных форматах (XML, CVS) и обновление баз данных. Также FTP необходимо будет использовать для сбора файлов с удаленного хоста.

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

Мне интересно, стоит ли изучать шаблон дизайна, чтобы облегчить эту систему, если бы кто-то мог указать мне в направлении, так как их много. Любой совет по моей проблеме будет очень полезен.

Заранее спасибо

ответ

1

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

основе ваше описание и идея, похоже, что у вас уже есть понимание ситуации и как вы хотели бы справиться с этим.

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

$ 0,02

1

Да, это стоит усилий, однако, как это не решит вашу проблему. Если вы кодировали без них, вы иногда используете их в сочетании шаблонов, и вещь не всегда ясна. Наличие имен и шаблонов может сделать ваш код более понятным и простым в обслуживании.

За последние 2 года я расчесывал шаблоны проектирования и как лучше моделировать решение, и я считаю, что он окупился.

Я лично читать использовал эти книги для моих исследований:

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

0

Нет, нет, нет!

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

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

C.

+0

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