web-dev-qa-db-fra.com

PHP Frameworks (CodeIgniter, Yii, CakePHP) contre Django

Je dois développer un site qui doit accueillir environ 2000 utilisateurs par jour et la vitesse est un critère pour cela. De plus, le site est orienté utilisateur et permet à l'utilisateur de se connecter et de consulter son profil, de s'inscrire à des événements spécifiques auxquels il souhaite participer. Le site doit être hébergé sur un serveur VPS.Bien que j'aie bonne expérience avec python et PHP mais je ne sais pas comment utiliser l'un ou l'autre de ces frameworks. Nous disposons de suffisamment de temps pour expérimenter et apprendre l’un des cadres ci-dessus. Pourriez-vous préciser lequel serait préférable pour un tel scénario, compte tenu de la vitesse, des fonctionnalités et de la sécurité du site.

Merci, niting

21
niting

La plupart des cadres actuels sont assez rapides pour répondre à tous vos besoins. Cela dépend vraiment de l'environnement dans lequel vous vous sentez le plus à l'aise. Bien qu'il y ait des nuances ici et là, les frameworks MVC partagent beaucoup des mêmes principes, de sorte que celui que vous choisissez d'utiliser est vraiment une question que vous aimez le plus utiliser.

Donc, si vous aimez davantage Python, voici votre réponse. Utilisez un framework Python, et Django est le meilleur. Si vous aimez PHP more (ce que je n'aime pas personnellement), vous avez d'autres décisions à prendre. Mais aucun des PHP frameworks ne pose de problème. Ils sont vraiment. Il suffit de choisir celui qui a l'air bien avec une documentation complète et se rendre au travail.

28
Matchu

C'est une question très subjective, mais personnellement, je recommanderais Django. Python est un langage très agréable à utiliser et le framework Django est petit, facile à utiliser, bien documenté et possède également une communauté assez active.

Ce choix a été fait en partie à cause de mon aversion pour PHP, prenez donc la recommandation avec une pincée de sel.

31
Cromulent

J'ai travaillé avec CakePHP et Django et je recommande vraiment Django. Je ne connais pas trop CodeIgniter, mais je me souviens de l'avoir exclu lorsque j'évaluais moi-même les frameworks il y a environ un an. CakePHP semblait beaucoup plus développé à l'époque.

Tout d'abord, la communauté Django est beaucoup plus grande et a passé beaucoup de temps à se concentrer sur les applications réutilisables. Cela signifie que vous obtenez beaucoup de fonctionnalités gratuitement. Associez cela à l’administrateur Django et vous avez déjà beaucoup de choses à faire pour vous. Je n'ai pas beaucoup suivi les frameworks PHP, mais je suis à peu près sûr que Django est également plus développé.

C'est plus une chose personnelle, mais j'aime juste Python sur PHP. Comparez la façon dont les modèles sont réalisés dans CakePHP et Django: http://book.cakephp.org/view/67/Understanding-Models , http://docs.djangoproject.com/en/dev/topics/db/models/# topics-db-models . Le python est clairement plus lisible.

N'oubliez pas que Django vous fournit un ORM impressionnant et construit votre schéma, c'est-à-dire que vous ne devez jamais toucher à la base de données si vous ne le souhaitez pas. Avec les frameworks PHP, vous devez créer votre propre conception de base de données, ce qui me ralentit à ce stade. Vous pouvez toujours entrer et ajouter des index pour la vitesse plus tard.

C’est probablement le plus partial, mais si vous démarrez une nouvelle application - sérieusement - tenez-vous-en à Django ou Ruby on Rails. Il y a une raison pour laquelle tout le monde parle d'eux et ils ont les plus grandes communautés et les meilleurs développeurs derrière eux.

Vous pouvez également consulter Pinax pour de nombreux goodies Django.

14
Casey W. Stark

Codeigniter est rapide et très documenté, il a également une grande communauté et est finalement amical avec le programmeur.

4
Adrian

CodeIgniter est un excellent framework PHP rapide, doté d'une excellente documentation. Commencez à lire leur guide de l'utilisateur et cela vous donnera une bonne idée de la façon de travailler avec le framework.

3
Justin Ethier

J'utilise CodeIgniter 1.7.2 et pour les sites Web complexes, il est très bon et puissant, mais il manque définitivement une sorte de générateur de code qui permettra, par exemple, de créer une application informatique en un clic. J'ai eu l'impression (en regardant un tutoriel) que Django l'avait.

0
Nir O.

Extension de Matchu:

Ou, si vous aimez PHP plus - il est temps d'apprendre/de faire grandir d'autres choses comme Python. Ce n'est pas difficile à apprendre, et lorsque vous commencez, cela devient très agréable.

Beaucoup de gens ont utilisé le port PHPtoPython/Django, comme Mozilla, Netgeo, Nasa, TheOnion , etc.

0
panchicore

Si pour la partie PHP, je choisirais CodeIgniter - cela ne vous importerait pas trop. Mais il n’a aucun générateur de code/vue/modèle prêt à l’emploi, vous devez taper un peu.

Mais les langues autres que PHP semblent être plus sexy .

0
pettersolberg