2010-08-31 2 views
1

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

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

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

Сайты о которых идет речь http://trophymanager.com http://trophyhockey.org http://bigbuckcity.com

+2

Ahh ...который вам нужен. Заманчивая, но далеко цель. Многому научитесь и тренируйтесь, что вам нужно. – Mchl

+1

Какую версию PHP вы используете? Если $ version> = 5, вы можете увеличить свою производительность за счет инкапсуляции функциональности в классы и организовать эти классы в разные (псевдо) пространства имен. Посмотрите, как Zend делает это и копирует его. http://kbs.kimbs.cn/blog/list/post/24/title/zend-framework-coding-standards-for-php-naming-conventions – softcr

+0

да его выше php 5.0 :) –

ответ

2

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

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

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

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

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

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

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

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

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

+0

Большое спасибо, отличный ответ вместе с моим новым опытом в области имен, я знаю, с чего начать :) –

0

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

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

+0

Возможно, я должен сказать, что мы хотим запрограммировать его сами. Таким образом, в основном это будет что-то вроде структуры, независимо от того, стоит ли использовать шаблоны или xml и т. Д. –

+0

Если вы хотите запрограммировать себе, что именно вы просите? – AntonioCS

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

  • Нет связанных вопросов^_^