Framework Brainstorm

Итак, мы являемся этой компанией с 3-мя браузерными играми. У нас работает всего 4-5 человек, и мы действительно хотели бы улучшить синергию от нашего кодирования.

Так что мы рассматриваем создание более общей структуры. В настоящее время наши игры состоят из одного большого набора html, php, javascript, css & flash (+ базы данных).

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

Рассматриваемые сайты:

Итак, мы рассматриваем создание более общей структуры. В настоящее время наши игры состоят из одного большого набора html, php, javascript, css & flash (+ базы данных).

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

Рассматриваемые сайты:

Итак, мы рассматриваем создание более общей структуры. В настоящее время наши игры состоят из одного большого набора html, php, javascript, css & flash (+ базы данных).

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

Рассматриваемые сайты: http://trophymanager.com http://trophyhockey.org http://bigbuckcity.com

1
задан Kwebble 31 August 2010 в 21:58
поделиться

2 ответа

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

Разделите код каждого приложения на эти часто используемые фрагменты:

  1. уровень представления, пользовательский интерфейс. (HTML, JavaScript, CSS, Flash)
  2. уровень бизнес-логики, проверки правильности, рабочий процесс и т. д. (PHP)
  3. уровень данных, хранение и извлечение данных. (PHP, база данных)

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

Объедините дублированные слои в отдельные реализации и объедините их с определенными скинами. Таким образом, для 3 форумов у вас есть 1 уровень данных, 1 уровень бизнес-логики и 3 пользовательских интерфейса.

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

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

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

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

2
ответ дан 2 September 2019 в 21:40
поделиться

Я не совсем понимаю, что вы ищете... что-то вроде Zend Framework?

Существует множество PHP-фреймворков, каждый из которых имеет свои сильные и слабые стороны. Проведение некоторых исследований будет стоить вашего времени.

0
ответ дан 2 September 2019 в 21:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: