Я должен использовать чистый PHP/MySQL для разработки веб-приложений?

Я баловался программированием/языками сценариев, так как я был ребенком. Я начался с HTML и CSS, затем перешел к PHP (который я стал довольно хорошим в), и затем к Python, Perl и C (++). Я недавно сделал большую работу в PHP (наряду с MySQL).

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

По моему опыту, с записью (по общему признанию маленьких) веб-приложений, я нашел, что пишущий "чистый" PHP чрезвычайно медленный и утомительный процесс.

Мой вопрос - это: если я должен был писать относительно сложное/большое веб-приложение с нуля, в чем я должен записать это? Я должен использовать чистый PHP/MySQL или использовать платформу как Django, направляющие или CakePHP?

9
задан Tim Barnaski 6 March 2010 в 21:21
поделиться

3 ответа

Написав сложное приложение с нуля, я бы определенно не использовал «голый PHP» : я бы определенно использовал фреймворк: они предоставляют:

  • большое количество полезных классов / методов
  • некоторый набор правил - например, «в каком каталоге должны храниться контроллеры» , «как написать представление» , ...
  • MVC - т.е. они помогают с лучшая структуризация проекта

Обратите внимание, что этот ответ действителен как для личных, так и для профессиональных проектов.


В PHP есть несколько отличных фреймворков, например:

Одна вещь, которую нужно запомнить: научиться хорошо использовать фреймворк займет некоторое время: начать с небольшого проекта, прежде чем переходить к большому, вероятно, было бы хорошей идеей; -)


Теперь, когда вы задаете себе вопрос «какой фреймворк мне выбрать», это в основном вопрос личных предпочтений ...И вот пара вопросов / ответов, которые могут немного помочь:


Как вы спрашивая меня, какой фреймворк я бы выбрал; хорошо:

  • Мне очень нравится Zend Framework, и я часто использую Doctrine как ORM (это ORM по умолчанию в Symfony, но его очень легко использовать с ZF)
  • Если бы мне пришлось выбрать другой , Я бы, вероятно, выбрал Symfony, так как я видел, как он использовался в паре проектов на работе, и знаю многих людей, которые с ним работают и которым он нравится
14
ответ дан 4 December 2019 в 12:17
поделиться

Если вы уже знаете этот язык, вам определенно следует использовать фреймворк (если вы не мазохист).

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

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

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

2
ответ дан 4 December 2019 в 12:17
поделиться

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

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

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

Если приложение может работать в Windows, только C # также является хорошим решением, поскольку вы можете очень быстро разрабатывать веб-приложения, а библиотека .NET упрощает многие задачи.

В качестве бэкэнда базы данных вы можете использовать MySQL, если структура проста, но для более сложных баз данных я бы использовал postgres, поскольку производительность MySQL, кажется, быстро падает с увеличением сложности (субъективное мнение).

РЕДАКТИРОВАТЬ: Как отмечали другие, фреймворки всегда являются хорошей идеей. Существуют веб-фреймворки для большинства текущих языков. Недавно мне порекомендовали CakePHP для PHP.

0
ответ дан 4 December 2019 в 12:17
поделиться
Другие вопросы по тегам:

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