PHP vs Ruby
Une comparaison de deux langages phares du Web

Les rubriques (actu, forums, tutos) de Développez
Tags
Réseaux sociaux




Le , par Benjamin Delespierre, Expert Confirmé Sénior
Lee Blue publie sur son site internet un article présentant, d'après son expérience, les points forts de PHP et de Ruby et tire quelques observations intéressantes fort de ses 5 ans d'expérience sur les deux langages.

Historiquement, PHP et Ruby n'ont pas le même objectif. Bien que tous les deux soient parus en 1995, Ruby était conçu comme un langage des script orienté objet alors que PHP était destiné à donner du dynamisme aux pages web. Ce n'est qu'autours de 2005 avec l'apparition remarquée de Ruby on Rails que Ruby s'est rapidement fait une place au sein des langages du web.

PHP quand à lui n'était pas conçu au départ pour être un vrai langage objet, le code devait être décrit dans des fichiers HTML pour résoudre un problème extrêmement spécifique. Ainsi, il n'était pas équipé pour l'orienté objet, les namespaces ou encore la gestion des exceptions. Ce qui explique pourquoi, encore aujourd'hui, l'API de PHP peut sembler confuse.

Coté Framework, si PHP dispose de dizaines de frameworks, on ne retiens généralement pour Ruby que Rails et Sinatra. Cet écosystème de frameworks PHP, tant source de richesses que de querelles de clochers, ne permet pas de facto la création d'un système de paquets tels que les gems sous Ruby - on rappellera par exemple et pour PHP le système PEAR, Composer ou encore Packagist.

C'est en revanche du coté de l'hébergement que PHP tire son épingle du jeu, avec des solution upload-and-go, PHP séduit autant par sa facilité d'utilisation en local - avec XAMP, WAMP et MAMP - qu'en ligne avec le nombre incalculable d'hébergeurs qui le supporte. Sans compter les CMS qui peuplent l'horizon de PHP comme le célèbre WordPress qui à lui seul est plus utilisé que tous les CMS Ruby réunis.

En conclusion, Lee rappelle que bien qu'étant très différents dans leurs approches, Ils sont tous les deux très adaptés pour adresser la problématique du développement web. Il note toutefois les points suivants:
  • Utilisabilité il n'existe rien que vous pouviez faire en Ruby qui ne pourrait être fait en PHP. (match nul)
  • Frameworks Ruby dispose de deux frameworks principaux alors que les frameworks PHP sont légions. Bien que plus de choix soit disponible en PHP il faut se rappeler que beaucoup sont encore jeunes et peuvent à tout moment être interrompus ou modifiés dans des proportions dramatiques. Ruby quand à lui dispose de composants matures supportés par une vaste communauté. (Avantage Ruby)
  • Réutilisabilité La réputation des gems n'est plus à faire et PHP semble suivre le mouvement. (Avantage Ruby)
  • Outils de développement et services Ruby semble en tête en ce qui concerne les outils, PHP n'est pas bien loin derrière. (Avantage Ruby)
  • Environnements de développement locaux PHP dispose d'outils facilement installables et utilisables, Ruby est moins pratique de ce coté. (Avantage PHP)
  • Hébergement Moins coûteux en PHP et plus facile à mettre en place. PHP convient très bien pour des solutions personnelles et professionneles. Pour les application d'envergure, PHP et Ruby se valent. (Avantage PHP)

Lee attribue aux deux langages la même note (5) et nous rappelle que ce sont avant tout les besoins qui doivent conduire vos choix d'infrastructure: "En conclusion, comme toujours, utilisez toujours une solution qui vous est adapté et qui est adapté à votre équipe.".

Lire l'article sur le blog de Lee Blue.

Et vous ?

Avez-vous déjà été amené à mettre Ruby et PHP sur la balance ?
Pourquoi choisissez-vous un langage plutôt qu'un autre ?
Quelles sont vos impressions sur les deux langages ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de ABCIWEB ABCIWEB
http://www.developpez.com
Expert Confirmé Sénior
le 13/11/2012 3:57
Perso je ne me suis jamais intéressé à Ruby car aucune lecture à ce sujet ne m'a suffisamment motivée et le résumé de Lee Blue pas mieux.

En plus l'avantage donné à Ruby pour les "framework" et les "Outils de développement" semble assez partisane. Notamment la justification concernant les frameworks est assez savoureuse car si on veut choisir des framework PHP éprouvés, il en existe au moins deux très connus.

J'ai assez de travail en plus avec les autres langages du Web (sql/javascript/html/css), alors sans réel point décisif à mes yeux, et des inconvénients majeurs par ailleurs, j'ai vraiment pas le temps de m'y intéresser juste par curiosité.
Avatar de grunk grunk
http://www.developpez.com
Modérateur
le 13/11/2012 9:06
Outils de développement et services Ruby semble en tête en ce qui concerne les outils, PHP n'est pas bien loin derrière. (Avantage Ruby)

Ca c'est un point argumenté , qu'on ne peut pas discuter

Pour moi Ruby reste anecdotique dans le web. il a eu droit à un regain d'intérêt avec rail et la vague "Ajax". Les premiers sites utilisant de l'ajax massivement étaient fait en rail (peut être lié au fait que prototype est très lié au monde RoR) du coup on à pris le truc pour une révolution , jusqu'à ce qu'on se rende compte qu'on pouvait aussi le faire en asp/jsp/php .
Avatar de Benjamin Delespierre Benjamin Delespierre
http://www.developpez.com
Expert Confirmé Sénior
le 13/11/2012 10:40
En ce qui me concerne, je ne ressens pas le besoin de me mettre à Ruby, PHP suffit amplement à mes besoins. C'est vrai que certains point auraient mérité une argumentation plus soutenue de la part de Lee mais, vu de l'extérieur, l'écosystème Ruby à l'air bien moins "Bazar" que celui de PHP (sous ma plume, bazar n'est en rien péjoratif, c'est au contraire un force pour PHP - comme pour beaucoup de logiciels libres - je vous recommande La Cathédrale et le Bazar d'Eric Raymond sur le sujet). On ne peut toute de même pas nier que les technologies qui gravitent autours de PHP sont assez éparses.

Personnellement, je suis franchement plus attiré par NodeJS que par Ruby, surtout s'il s'agit de performances pures.
Avatar de jimmyy jimmyy
http://www.developpez.com
Invité régulier
le 14/11/2012 21:09
Je trouve cet article un peu dur au niveau des frameworks.

Zend Framework est arrivé à maturité, et supporté par une grande communauté, avec des offres comme phpcloud et même un serveur web dédié !

Autre point, PHP n'a pas forcément besoin de moteur de template.
Avatar de wirenth wirenth
http://www.developpez.com
Membre éclairé
le 22/11/2012 17:56
De mon côté, je connais très peu PHP, mais assez bien Rails.
Ce qui m'impressionne avec Rails, c'est la facilité d'utilisation. D'une manière générale, Ruby ne se met jamais en travers de votre chemin, c'est d'autant pus vrai avec Rails.

Je voudrais nuancer l'aspect hébergement pour projet personnel. Heroku est quand même on ne peut plus simple... Vous hébergez votre projet sur GitHub, et vous le déployez en une ligne de commande (même pas compliquée ^^).

Quant à dire que Ruby est anecdotique dans le web... si on considère que Twitter ou GitHub sont anecdotiques, alors oui, effectivement :p
Avatar de Théocrite Théocrite
http://www.developpez.com
Membre éprouvé
le 22/11/2012 20:24
Citation Envoyé par wirenth  Voir le message
Quant à dire que Ruby est anecdotique dans le web... si on considère que Twitter ou GitHub sont anecdotiques, alors oui, effectivement :p

Je pense qu'anecdotique dans ce cas concernait le nombre de projets réalisés dans les langages. Effectivement, si tu l'envisages en temps d'utilisation par jour, je pense que PHP doit toujours être devant mais l'écart n'est probablement pas le même !
Avatar de gene69 gene69
http://www.developpez.com
Membre Expert
le 29/11/2012 23:17
Frameworks Ruby dispose de deux frameworks principaux alors que les frameworks PHP sont légions. Bien que plus de choix soit disponible en PHP il faut se rappeler que beaucoup sont encore jeunes et peuvent à tout moment être interrompus ou modifiés dans des proportions dramatiques . Ruby quand à lui dispose de composants matures supportés par une vaste communauté. (Avantage Ruby PHP)

Restons Zend!
6-4
Offres d'emploi IT
Développeur front-end
CDI
EXTIA - Ile de France - Sèvres (92310)
Parue le 27/11/2014
Développement python
Stage
Work4 Labs - Ile de France - Paris (75000)
Parue le 09/12/2014
Ingénieur système - infrastructures
CDI
Société Générale - Ile de France - Val de Fontenay
Parue le 15/12/2014

Voir plus d'offres Voir la carte des offres IT
 
 
 
 
Partenaires

PlanetHoster
Ikoula