Как мне построить игровое сообщество - PullRequest
0 голосов
/ 20 июля 2009

Я давно хотел создать свой собственный сайт игрового сообщества (например, http://fragbite.com). Я начинал много раз, но просто ушел через пару дней, потому что он очень грязный.

Я играл с PHP и MySQL в течение 3 лет, но я никогда не обращался к ООП. Я пробовал, но обычно получаю «старый PHP».

Я обычно строю свои страницы так, чтобы поверх всех страниц я включал файл с необходимыми функциями, html-заголовком и т. Д., И я смешивал php и html вместе, что я не возражаю, но если в конечном итоге я получу дизайнера, он мне бы не понравилось.

Я пробовал и phpcake, и codeigniter, и все эти популярные mvc, но это слишком много, как будто они делают всю работу. Я хочу сделать это сам, но не знаю, с чего начать.

Что бы вы сделали, если бы вы были мной? Может быть, есть какой-нибудь неопс мвк?

(простите за мой английский)

Ответы [ 5 ]

2 голосов
/ 20 июля 2009

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

Вы говорили о некоторых; Вы также можете посмотреть на других, как:

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

... Но их большая работа позволяет вам сконцентрироваться на том, что действительно делает ваше приложение; -)

Я бы сказал еще две вещи:

  • Использование такого рода каркасов действительно облегчает модификации и обслуживание (я действительно думаю, что они делают)
    • разделение элементов по слоям (доступ к БД, манипулирование данными и представление данных) также поможет работать в команде; например, вашему HTML-дизайнеру потребуется только изменить уровень представления и никогда не касаться других - это плюс!
  • Знание таких фреймворков MVC хорошо для вашего резюме (но это будет касаться вас, только если вы планируете заняться этой профессией) - по крайней мере, во Франции, откуда я.
2 голосов
/ 20 июля 2009

Зачем вы хотите делать всю работу? Почему бы вам не попытаться построить что-то на основе существующих и проверенных технологий, например, Drupal или Сервер совместной работы ?

Черт возьми, вы могли бы даже использовать для этого движок StackExchange , хотя он и не бесплатный; -)

1 голос
/ 20 июля 2009

Привет, мои друзья и я работаем над сайтом для геймеров с 2005 года, и я являюсь "разработчиком" большинства материалов, которые на нем работают. Мы используем PHP / MySQL, и я разработал все с нуля.

С чего начать легко, просто не торопитесь и подумайте о том, что вы хотите отобразить. Затем создайте примерный шаблон того, как должен выглядеть фактический дизайн страницы HTML / CSS.

Затем добавьте динамические функции, такие как PHP-кодирование, SQL-запросы и т. Д., Но отделяют презентацию (HTML) от логики (PHP / MySQL) - вы можете сделать это с помощью операторов INCLUDE или REQUIRE_ONCE. 1007 *

Я предпочитаю делать всю логику сверху и отображать только переменные в HTML, например типичная страница будет выглядеть так:

<?php
     require_once('/system/standard.php');   // constants, functions, session etc.
     require_once('/system/database.php');   // database functionality etc.
     require_once('/system/authentication.php');   // security, logon etc.

     // do some logic e.g. database queries or some calculations.
     $data['username'] = 'Przystojny';
?>
<HTML>
...
Hello <?php print($data['username']); ?>
...
</HTML>
0 голосов
/ 20 июля 2009

Я бы посоветовал вам написать упрощенную систему шаблонов или использовать одну из PHPClasses, чтобы справиться с работой по созданию страниц. В этом у вас могут быть модули, которые создают контент и просто «вставляют» в соответствующий заполнитель. Шаблонный движок Smarty может стоить посмотреть.

Пример того, как это будет выглядеть:

<html>
<header>
 <title><!-- title_placeholder --></title>
 <script><!-- scripts_placeholder --></script>
</header>

<body>

  <div id='leftbar'>

    <!-- placeholder_1 -->
    <!-- placeholder_2 -->

  </div>

  <div id='main'>

    <!-- main_content -->

  </div>

 </body>

И PHP так же прост, как:

$loginSideBarModule = new LoginModule();
$template->replaceTag("placeholder_1", $loginSideBarModule->render());

Существует множество шаблонизаторов на PHPClasses, если Smarty слишком тяжел для вас.

0 голосов
/ 20 июля 2009

Я не пытался создать игровое сообщество, но я что-то создал. Я обнаружил, что CakePHP слишком тяжел для моего вкуса, поэтому я развернул нано-фреймворк (что-то вроде web.py для Python) и стал намного счастливее.

Вот несколько примеров:

В основном нано-фреймворк состоит из 2 важных понятий:

  • Система отображения URL-адресов на класс.
  • Рендерер страниц.

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

P.S. Не очень актуально, но я также использовал nginx и postgresql вместо моего обычного выбора apache и mysql (у меня нет проблем с apache и mysql, я просто подумал, что попробую что-то новое). Результаты были замечательными. :)

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...