PHP Frameworks (Codeigniter, Yii, CakePhp) против Django
-
24-09-2019 - |
Вопрос
Я должен разработать сайт, который должен размещаться около 2000 пользователей в день и скорость - это критерий для него. Кроме того, сайт - это пользователь, ориентированный на пользователя, где пользователь сможет войти в систему и проверять свой профиль, зарегистрироваться на определенные события, в которых он / она хочет участвовать в. Сайт должен быть проведен на VPS Server. Хороший опыт работы с Python и PHP, но я понятия не имею, как использовать любой из структур. У нас есть много времени, чтобы поэкспериментировать и узнать одну из вышеперечисленных структур. Не могли бы вы указать, какой из них будет предпочтительным для такого сценария, учитывая скорость, особенности и безопасность сайта.
Спасибо, нян
Решение
Большая часть рамки в настоящее время достаточно быстро, чтобы служить любые потребности, которые у вас будут иметь. Это действительно зависит от того, в какую среду вы чувствуете себя наиболее комфортно. Хотя здесь есть нюансы и там, MVC Frameworks разделяет много тех же принципов, поэтому, в зависимости от того, что вы решите использовать, это действительно вопрос которого вы больше всего нравится использовать.
Итак, если вам больше нравится Python, есть ваш ответ. Используйте Python Framework, и Django является лучшим. Если вам нравится PHP больше (который я лично не), у вас есть еще несколько решений. Но любой из фреймворков PHP в порядке. Они действительно есть. Просто выберите тот, который выглядит приятно с комплексной документацией и добраться до работы.
Другие советы
Это очень субъективный вопрос, но лично я бы порекомендовал Django. Python - это очень хороший язык для использования, а каркасы Django - это небольшая, простая в использовании, хорошо документирована, а также имеет довольно активное сообщество.
Этот выбор был изготовлен частично из-за моей неприязни для PHP, поэтому примите рекомендацию с щепоткой соли.
Я работал с CakePhp и Django, и я действительно рекомендую Django. Я не знаю слишком много о Codeigniterite, но я помню, как правила, когда я оцениваю каркасы себя около года назад. CakePhp казался гораздо более развитым в то время.
Прежде всего, сообщество Django намного больше и провело много времени, ориентируясь на многоразовые приложения. Это означает, что вы получаете много функциональности бесплатно. Соедините это с администратором Django, и у вас есть много вещей, которые уже сделали для вас. Я не сильно не справился с PHP-каркасами, но я почти уверен, что Django также более развитую.
Это больше личной вещи, но я просто люблю Python над PHP. Сравните способы моделей выполнены в CakePhp и django: http://book.cakephp.org/view/67/understanding-models., http://docs.djangoproject.com/en/dev/topics/db/models/#topics-db-models.. Отказ Python явно более читаемый.
Имейте в виду, что Django дает вам удивительный ORM и создает вашу схему для вас, то есть вам никогда не придется касаться базы данных, если вы не хотите. С Frameworks PHP вы должны сделать свой собственный дизайн БД, который просто замедляет меня в этот момент. Вы всегда можете войти и добавить индексы для скорости позже.
Это, вероятно, самым предвзятым, но если вы начинаете новое приложение - серьезно - просто придерживайтесь Django или Ruby на рельсах. Есть причина, по которой все говорят о них, и у них есть самые большие общины и лучшие разработчики позади них.
Вы также можете проверить Pinax. Для многих вкусностей Джанго.
Codeigniter ITS FAST и очень задокументировано, также имеет большое сообщество и финиры, дружественные с программистом.
Codeigniter. Это отличная PHP Framework, которая быстро и имеет отличную документацию. Начните чтение через их руководство пользователя, и это даст вам хорошую идею, как работать с рамками.
Расширение матчу:
Или, - если вам нравится PHP больше - пришло время изучать / расти о других вещах, таких как Python. Это не сложно учиться, и когда вы начинаете, он становится очень приятным.
Многие люди сделали порт Phptopython / Django, как Mozilla, Netgeo, NASA, Лук, так далее.
Если для PHP-части, я бы выбрал Codeigniter - это не становится слишком много на ваш путь. Но у него нет никаких генераторов кода / просмотра / моделей из коробки, вам нужно немного ввести.
Но языки, кроме PHP, кажется, больше сексуальный.
Я использую Codeigniter 1.7.2, а для сложных веб-сайтов это очень хорошо и мощно, но это определенно отсутствует какой-то генератор кода, который позволит, например, чтобы построить его приложение в одном клике. У меня было впечатление (от просмотра учебника), что у Django есть.