Comparatif des langages web

Lundi 20 Septembre 2010 19:21

Bonjour à tous,

Je me demande depuis quelques temps quelles sont les différences principales entre les principaux langages web (php, ruby, java, etc.)
Pourriez vous donner des avis concernant les point suivants (entre autre) :
-Facilité de prise en main
-Rapidité codage
-Liberté donnée au développeur (obligation d'utiliser des objets, d'utiliser une structure MVC, liberté totale, etc.)
-Avantages/inconvénients divers

Si vous pouviez également me conseiller sur les IDE ou éditeurs pour ces langages ça serait génial.

Merci d'avance.

Mercredi 22 Septembre 2010 14:15

Ces dernières années, les choses se sont pas mal décantées en termes de langages web. Php MySQL est désormais un choix quasi incontournable.

php
- php mysql aussi puissant, voire plus, que les solutions concurrentes asp
- gratuit
- plus standart. Tout le monde connait, il est facile de collaborer avec quelqu'un d'autre, de se faire aider..
- facile de créer ses propres fonctions

Java
- le java ne sera pas un souci pour toi. Il existe en ligne des milliers de scripts tout faits. Ils couvrent tous les besoins possibles et imaginables. Tu n'as qu'à copier coller. C'est ce que tout le monde fait.
- langage client. Le serveur n'a rien à faire
- universel

IDE
je ne m'en sers pas.
- je vais plus vite qu'un utilisateur d'IDE. J'utilise notepad++ et lorsque c'est possible, je réutilise des bouts de scripts que j'ai déjà écrits pour d'autres sites.
- les éditeurs graphiques génèrent un code moins lisible (ce qui n'est pas dramatique en soi). Scories, fragments de code inutilement longs, erreurs etc. En particulier, c'est le cas de Dreamweaver.

Mercredi 22 Septembre 2010 14:22

IDE
en théorie, un IDE est un bon moyen de te mettre le pied à l'étrier dans un langage que tu ne connais pas. Tu regardes le code généré et c'est tout de suite clair.
Mais les IDE impliquent eux-mêmes un certain temps d'apprentissage. Ca réduit beaucoup, voire annule, l'avantage ci-dessus.

Mercredi 22 Septembre 2010 15:36

La meilleure question a se poser est de peut être savoir à quoi sert chaque langage et non ses avantages - inconvénients....
Tu feras pas la même chose en php qu'en java.... Pourtant les 2 sont justes énormes.
Dis nous ce que tu veux faire et tout le monde pourra te donner son avis pour t'aider à choisir.
Je m'en fous d'être mauvais, je bois pour l'oublier

Mercredi 22 Septembre 2010 23:43

Salut,

moi aussi j'utilise le couple Php / Mysql,

Tout d'abord ton site est obligatoirement en HTML, tout code est en HTML.

Puis aussi en CSS, le CSS correspond au design.

Php est très puissant pour ce qui est langage web donc tu es obligé de passer par là.

Après Mysql correspond a la base de donnée ce qui te permet de faire énormément de choses tout en utilisant des requêtes simples et toi tu ne fais rien !

Pour coder tu peux utiliser Notepad ++ (gratuit) qui est très bon ou sinon tu peux essayer aussi Dreamweaver pendant 30 jours gratuitement Clin d'oeil
fandusrfc -> jerem35 vu que l'on a pas voulu modifié mon pseudo automatiquement

Jeudi 23 Septembre 2010 18:21

Merci pour vos réponses.

Je vais détailler un peu ma situation : je fais du PHP depuis que je suis sorti de l'école (environ 1 an et demi, en stage puis pour mon travail) et je souhaiterais découvrir de nouveaux langages pour élargir mes compétences. Je cherche surtout un langage qui cadre plus le développeur que le PHP (obligation d'utiliser une architecture MVC par exemple) et qui soit adapté à des applications assez conséquentes.

Je n'ai, pour le moment, jamais utilisé de Framework en PHP, j'imagine que ça pourrait répondre à mes besoins mais j'aimerais bien savoir ce qu'il se fait dans d'autres langages, par curiosité.

Concernant les IDE, je pensais plus aux trucs du genre Zend studio / Eclipse que Dreamweaver, frontpage et cie. J'imagine qu'il y a des IDE spécialisés dans certains langages, c'est pour ça que je posais la question.

Samedi 25 Septembre 2010 19:59

en ce qui concerne les Framework, tout dépend de ce que tu veux faire car pour un petit site ce n'est pas vraiment utile.

sinon je te conseille Symfony comme framework =)
fandusrfc -> jerem35 vu que l'on a pas voulu modifié mon pseudo automatiquement

Mardi 28 Septembre 2010 18:23

Merci du conseil.
Du coup j'ai passé une partie de ma journée à regarder ce framework et je vais me mettre à tester ça en reprenant une petite appli que j'avais déjà réalisé sans framework.
J'imagine que d'ici la fin de la semaine j'aurais un peu plus avancé et j'aurais une idée un peu plus précise de ce que symfony peut m'apporter mais j'ai l'impression que ça peut être vraiment intéressant.

Vendredi 29 Octobre 2010 16:55

Un petit post un peu tard, mais qui peu être intéressent.

J'ai quelques années d'expériences dans le développement d'application Web et je pense que le choix du langage doit se faire en fonction du besoin. En effet, il n'est pas utile d'utiliser une pelleteuse pour creuser un trou pour mettre le rosier de madame !

La solution PHP est une solution flexible, rapide à mettre en place et qui est abordable par n'importe quelle personne qui se débrouille un peu en informatique. De plus, il est très facile de trouver un hébergeur peu couteux voir même gratuit. L'inconvénient du PHP est plus la partie industrialisation, c'est-à-dire d'avoir une application web qui est capable de supporter un gros trafic. Les parties telles que la gestion des logs (fichiers contenant tous les appels des visiteurs, utile pour identifier une anomalie), le multi-threading (faire des traitements en parallèle) , ... ne sont pas très aisées. Ce qui explique pourquoi la plupart des grandes entreprises n'utilisent pas le PHP.

La Solution JAVA est une solution lourde à mettre en place, qui est plus difficile à appréhender. Il est quasiment impossible de trouver un hébergeur peu onéreux. Mais, le JAVA a comme avantage une gestion des logs et le multithreading beaucoup plus aisés à mettre en place. De plus, la solution JAVA est plus facilement maintenable.

Pour en revenir sur le choix du langage, je pense qu'il est plus judicieux d'utiliser la solution PHP pour une application web vitrine destinée à une association.

Si tu veux avoir une architecture PHP basée sur le Modèle MVC, je te conseille d'utiliser le Framework Zend Framework. Cela te permettra de bien structurer ton projet, de développer plus rapidement et d'avoir moins de bugs. Car il y a des parties de codes déjà faites comme par exemple l'envoi de mail, la gestion de l'authentification d'une personne, ... Ces codes ont été optimisés et testés plusieurs fois. De plus, il y a une communauté de développeurs très réactive qui pourra t'aider en cas de problème. Zend te propose aussi son propre IDE. il est basé sur l'IDE Eclipse (IDE de référence pour faire du JAVA)

Mais si tu veux te faire la main sur le JAVA, en ayant une réalisation concrète, cela ne pose aucun problème. Ce qui peut être dommage c'est de réaliser l'application web et que tu te rend compte que tu ne peux pas déployer ton application car tu n'as pas trouvé d'hébergeur dans tes moyens.
Message modifié 1 fois, dernière modification Vendredi 29 Octobre 2010 16:56 par cocoLeNain

Samedi 30 Octobre 2010 22:31

Citation de cocoLeNain :
L'inconvénient du PHP est plus la partie industrialisation, c'est-à-dire d'avoir une application web qui est capable de supporter un gros trafic.

A partir de combien de visiteurs par jour doit on trouver une autre solution que le php ?
Message modifié 1 fois, dernière modification Samedi 30 Octobre 2010 22:31 par Geraldd

Dimanche 31 Octobre 2010 22:33

C'est difficile à dire, mais je pense qu'il faut au moins dépasser plusieurs milliers de visite par jour. Ce qui n'arrive pas pour un site de tennis de table ! Clin d'oeil

Mardi 02 Novembre 2010 13:01

OK
Saurais tu où je pourrais me renseigner pour avoir des indications chiffrées plus précises sur ce problème ?

Mardi 02 Novembre 2010 14:33

Pour être honnête je doute que l'on puisse trouver une référence valable qui chiffrera l'utilisation de tel ou tel langage, c'est assez souvent un choix qui se fait de façon empirique et en fonction du rapport performance/coût/besoin.
Dans la pratique si le site "rame" on cherche des solutions. Si d'entrée le site est conçu pour recevoir un grand nombre de visites, php ne sera pas le premier choix.
Java avec un serveur Tomcat est effectivement une solution intéressante, mais comme l'a dit cocoLeNain il faut s'assurer de la compatibilité de l'hébergeur... et pour être honnête l'approche est beaucoup moins aisée qu'avec php.
Pour ma part je proposerais dans un premier temps l'utilisation de python comme un bon compromis, il me parait simple d'approche, il dispose d'une très bonne communauté et est très largement soutenu par google, proposant notamment des applications en mode SaaS plutôt intéressante.
Pour finir python peut être facilement intégré aux serveurs web les plus courants sans trop d'énervement.
Le gif c'est la vie - http://chevignytt.fr

Mardi 02 Novembre 2010 14:39

Un autre truc possible en cas de surcharge, laisser un partie du traitement (notamment la mise en forme des pages) à la charge du client en construisant ses pages en AJAX (ou en partie)
Le gif c'est la vie - http://chevignytt.fr

Samedi 06 Novembre 2010 12:19

Je rajouterai à ce qu'à dit lecureil. Si le site met du temps à se charger, il faut se pencher sur le design. En effet, dans la plupart du temps, cela est dû à des images qui sont trop grosses (je parle de leur poids en Ko). Et donc le site mettra du temps à se charger.

Il faut aussi éviter d'avoir un grand nombre de requêtes, car cela ralenti le chargement du site. Par exemple, si tu as dans ton site plusieurs icônes, il est plus intéressant de mettre tous ces icônes sur une même image et au moment d'afficher qu'une partie de l'image (bien sûr la partie où il y a l'icône que tu veux afficher), cela se fait facilement en CSS. Cette méthode s'appelle CSS Sprite. Il existe des générateurs sur le web.
Dans la même optique de réduire le nombre de requêtes, il faut assembler tout ton code JavaScript dans un seul fichier JavaScript (idem pour les CSS). Tu peux en plus minifier (c'est remplacer tous les noms de variables et de fonctions par des lettres. Par exemple tu as une variable qui s'appelle "bandeauAffichage", après minification elle s'appellera "a"Clin d'oeil le code JavaScript qui permet un chargement plus rapide du code par le navigateur. Il y a aussi des programmes qui permettent de la faire.

Il faut aussi mettre le chargement du fichier CSS (exemple : <link rel="stylesheet" media="screen" href="ecran.css" />Clin d'oeil au début du code HTML dans les balise HEAD et mettre quand c'est possible le code JavaScript à la fin du code HTML par exemple après la balise <\body>.

Si tu veux voir s'il y a des optimisations possibles sur ton site, je te conseille d'installer le plugin YSlow sur Firefox. Il va évaluer ton site et indiquer les axes où tu peux optimiser.
0
0
15 messages

Vous êtes ici : Accueil > Forums > Développement de vos sites