61 votes

Wordpress peut-il être remplacé par un Framework comme Django ou Ruby on Rails ?

Je me considère comme un développeur de modèles WordPress bien formé, et j'ai récemment commencé à lire des livres et des documents sur les cadres d'applications web, en particulier Django et Ruby on Rails. Je ne connaissais aucun de ces deux langages, mais je n'ai aucun problème à en apprendre un ou deux autres. Je ne comprends pas vraiment les avantages réels de l'utilisation d'un framework, parce que je suis très confiant dans la puissance de WordPress. Alors, quelqu'un peut-il me dire quels sont les avantages réels de l'utilisation d'un framework ? Par exemple, Pinterest est fait avec Django, mais je pense que je peux obtenir les mêmes résultats avec un template WordPress en utilisant Javascript et CSS3. Quelqu'un peut-il me dire quelles sont les différences/avantages de l'utilisation d'un framework dans ce cas précis ?

7 votes

Django et Rails sont des cadres pour construire des choses - ils vous donnent un ensemble d'outils qui vous aident à créer des applications riches. Wordpress est une application en soi, construite sans cadre, à partir de zéro, en PHP. Donc si vous êtes sûr que les besoins de votre application se situent dans les limites de ce qui est possible avec Wordpress, alors n'hésitez pas à vous lancer. Cependant, dès que vous sortez de ces limites, vous vous heurtez rapidement à un mur de possibilités.

0 votes

Fondamentalement, et je sais que c'est trop tard pour la fête, wordpress est une grosse vache

100voto

Chris Heald Points 28814

Vous pouvez obtenir le même frontend avec Wordpress, mais vous ne pourrez pas atteindre la vitesse et l'échelle - et surtout la maintenabilité - d'une application basée sur une architecture plus orientée vers l'application.

Wordpress est très flexible, mais il est également lent et nécessite énormément d'entretien pour pouvoir fonctionner à une échelle significative. Sa conception permet une modification très souple du comportement au moment de l'exécution, mais c'est aussi un peu la boîte de Pandore, car cela signifie que le code peut finir par s'exécuter partout pour une page donnée, ce qui fait de la maintenance un cauchemar.

Wordpress est un excellent CMS, mais dès que vous commencez à le pousser en dehors de ces limites, vous rencontrez des problèmes et vous vous retrouvez à devoir écrire votre propre cadre plus abstrait qui fonctionne dans le contexte de Wordpress pour être en mesure de répondre aux besoins de votre application.

Cela dit, si vous avez une application que vous pouvez créer dans le contexte de Wordpress, je vous conseille de vous lancer ! Wordpress peut être un outil merveilleux pour construire une preuve de concept ou un MVP. Si cela vous permet d'être opérationnel, c'est peut-être le bon choix par rapport à l'écriture d'une application complète. Toutefois, sachez que vous vous heurterez à des obstacles au fur et à mesure que la conception de votre produit évoluera et que votre public s'élargira, à moins que votre application ne réponde à un ensemble assez restreint d'exigences en matière de conception ; à long terme, vous devrez donc peut-être passer à une application personnalisée.

Références : J'ai passé les deux dernières années à maintenir une installation Wordpress qui servait plus de 25 millions de pages uniques par mois, et nous avons dû faire preuve de beaucoup d'ingéniosité pour la faire fonctionner. Nous l'avons depuis remplacé par une application Rails qui sert des pages 10 à 30 fois plus rapidement et qui est beaucoup plus extensible en tant qu'application, ce qui nous permet de commencer à explorer le potentiel d'application que nous ne pouvions pas vraiment obtenir avec Wordpress.

3 votes

C'est à peu près ce que j'allais dire moi-même, mais je l'ai dit beaucoup mieux que je n'aurais pu le faire.

1 votes

Merci pour cette réponse très équilibrée. Elle reflète également mon expérience : WordPress vous permet d'être opérationnel très rapidement et vous pouvez l'adapter à vos besoins. Mais au fil du temps, lorsque votre application devient plus complexe, les choses commencent à se compliquer et vous passez de plus en plus de temps à contourner les fonctionnalités manquantes de WordPress.

0 votes

"et nous avons dû faire preuve de beaucoup d'ingéniosité pour le faire fonctionner", c'est une bonne chose, non ? Cette déclaration peut inciter les gens à "Passer à Rails, cela vous permet d'écrire du code qui sent le spaghetti, c'est rapide, vous n'avez pas besoin d'être intelligent" :-)

14voto

Emile Points 3847

Je tiens à exprimer une opinion divergente, même si j'ai voté pour la première réponse.

Rails est-il vraiment spécial ?

Rails a été créé par David Hansson qui l'a extrait de Basecamp, un logiciel reproduit dans un plugin Wordpress gratuit, Chef de projet WP . Je pense que c'est un bon indicateur que les développeurs Rails sous-estiment PHP et Wordpress.

MVC et WP

Il est vrai qu'il ne suit pas le modèle MVC. Mais si vous utilisez crochets Si l'on utilise des plugins, on sépare la logique (dans les plugins) des vues (dans les modèles), ce qui permet d'obtenir une bonne séparation du code. (Autre astuce : les custom post types sont comme des modèles).

Cadre ou application

Comme vous pouvez le constater, Wordpress peut être traité comme une application ou un cadre. Il s'agit d'une application, avec tous les composants que l'on s'attend à trouver dans un cadre. Dès la sortie de la boîte, vous disposez de la sécurité, de l'authentification et de l'extensibilité. Et il est conçu pour être étendu.

Mise à l'échelle

WP alimente 18 % des sites web de l'internet, dont TechCrunch, Smashing Magazine et (en partie) CNN. Il semble qu'il y ait des moyens de faire évoluer WP. Avertissement : je n'ai aucune expérience de travail sur des mégasites comme ceux-ci, je ne fais donc que des conjectures.

L'avenir de WP

L'ambition actuelle de la communauté WP est de faire passer WP d'un CMS à un framework. Je pense que c'est une progression naturelle étant donné que toutes les pièces sont en place. Et la communauté Wordpress se porte bien.

1 votes

Bien sûr, il est possible de faire évoluer WordPress, mais sera-t-il plus facile de faire évoluer Rails ou WordPress ? C'est là la clé. WordPress est excellent, mais pour une personnalisation poussée, il faut reconsidérer la question.

1 votes

Je suis d'accord avec cela. La comparaison ne devrait pas se faire entre Django, Rails et WordPress. Elle devrait se faire entre ces derniers et un framework PHP comme Laravel, par exemple.

4voto

axeoth Points 1624

Ce n'est pas vraiment une réponse, mais un indice :

http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks

Comme si vous pouviez le remplacer complètement... Je pense que c'est surtout une question de flux logique. Cela dépend de la part de programmation impérative (Ruby on Rails) ou descriptive (WordPress) que vous avez l'intention de faire.

3voto

maximus Points 2926

Je ne pense pas que wordpress puisse remplacer rails, parce que wordpress a un ensemble limité d'API et de support si on le compare à RoR. Bien que wordpress soit un outil puissant pour les applications de blogging, le même effet peut être obtenu avec rails en utilisant des gems comme, Radiant CMS, Refinery CMS, Locomotive. L'ajout de puissance comme le ttd qui peut être fait très facilement avec rails est très difficile avec wordpress.

Il en va de même pour les mécanismes d'authentification et d'autorisation tels que devise et cancan. Il n'y a pas d'option facile pour faire la même chose avec wordpress.

Rails facilite la vie du programmeur. Pour une application web complète, je préférerai toujours utiliser Rails.

3voto

virtualeyes Points 5487

Wordpress ne peut pas remplacer le cadre X, mais les deux peuvent certainement se compléter.

Par exemple, un front-end WP servant du contenu CMS avec un thème attrayant est difficile à battre ; un proxy vers un serveur back-end pour du contenu personnalisé et voilà, le meilleur des deux mondes. Sinon, WP ne répondra pas à toutes les exigences et vous vous retrouverez dans le trou du lapin, un endroit douloureux en effet ; c'est là que le cadre X entre en jeu, en comblant les lacunes de WP.

L'idée que WP n'est pas évolutif peut avoir une part de vérité, mais pour le cas général, les 95%, il peut faire face à tout ce que vous lui demandez, en particulier avec WP Cache ou un autre plugin de mise en cache dans le mélange.

Certains diront que l'on peut construire WP avec Django ou RoR ! Heh, heh, vous d'abord ;-)

Pour ma part, j'évite les langages dynamiques au profit de leurs équivalents à typage statique/fort. J'utilise WP pour l'aspect esthétique, et le cadre X statique pour la vitesse, l'évolutivité et la sécurité. Bien sûr, c'est une question de préférence, certains préfèrent clairement la flexibilité au moment de l'exécution plutôt que la sécurité au moment de la compilation. Je suis tout à fait dans ce dernier camp ces jours-ci...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X