JAVA, c'est le MAL ??!!

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : JAVA, c'est le MAL ??!!

par Cyrano » 24 janv. 2008, 11:47

Hum hum, vous êtes pas obligés de vous tirer dessus à boulets rouges pour défendre tel ou tel point de vue.

Au fil de ce débat, je crois qu'un point important a été évoqué et encore une fois je le rappelle : comparons ce qui est comparable. Chaque langage a une vocation, je devrais ajouter "de prédilection", et si on peut faire du web en Java, ça ne signifie pas pour autant que ce soit sa destination première, de la même manière qu'il est techniquement possible de construire un client lourd en PHP avec GTK alors que la vocation première du PHP est précisément le Web. Les comparaisons sont à mon sens très subjectives.

On ne se battra pas sur les différences entre les langages : ces différences intéressent qui en fin de compte ? Ceux qui sont appelés à utiliser les deux ou encore à migrer de l'un vers l'autre, opération qui peut poser des problèmes parce que pour certains ce sera plus difficile. Des différences de syntaxe existent, mais au fond, c'est comme les langues. Un francophone aura plus ou moins de difficultés à se mettre à l'espagnol ou à l'anglais, .... et inversement ça va de soi : il ne m'apparait pas pour autant opportun de comparer le français et l'anglais. Ce ne sont que des moyens de communication entre des personnes. C'est pareil pour les langages informatiques : ça sert à permettre la communication entre des systèmes.

Quant à rêver d'une version informatique de l'espéranto, je crois qu'on ne verra pas ça avant un certain temps, donc autant en prendre notre parti et nous adapter aux besoins avec ce qui sera le plus approprié et laisser ceux qui n'ont rien à faire d'autre déblatérer en discours inutiles et franchement sans grand intérêt sur les qualités de tel ou tel langage.

par Nagol » 24 janv. 2008, 11:31

Nagol, je ne sais pas si tu es sérieux, si c'est le cas c'est inquiétant car tu viens de faire une magistrale critique de PHP tellement PHP s'inspire de Java directement, ou indirectement en s'inspirant des mêmes langages dont Java s'est inspirés (cf. petite démo ci-dessous).
Tu invoques l' "histoire" de l'informatique pour te donner du crédit, tu dois manquer sérieusement d'assurance quand tu parles de langages informatiques. Puisque tu sembles t'intéresser de près à l'évolution des langages, tu peux faire un tour sur le web et lire les critiques aussi bien éclairées que les tiennes à l'encontre de PHP et Java en comparaison au langage tendance, tant apprécié des geeks, à savoir Ruby.
lol?

Invoquer l'histoire pour défendre mes arguments, ca ressemble nettement à une tournure de phrase qu'on s'attend à vois dans un mmorpg, dans la vrai vie l'histoire des langages en dit long sur ces mêmes langages et ce que j'ai dit est vrai. Pour ce qui est de ce que l'on peut lire sur le web je crois que tu ferais bien de faire tes propres recherches avant d'en parler: un simple php vs java dans google m'a ramené des liens parfois sur les sites officiels de java (réseau développeur sun par exemple) qui contiennent un nombres d' aneries assez impressionnant raconté sur php voici quelques extraits:

php n'a pas de programmation objet, la manipulation de session en php est compliquée et buguée, le code php est uniquement disponible en inclusion à travers du html, plus de personnes connaissent et utilise java, le multithreading n'est pas supporté par php etc, etc, etc

Un moment avec toutes les choses racontées par des ignares fanatiques d'autres langages on a vraiment envie de se défendre, et il me semble que les développeurs Java ont une dent contre les développeurs php, la raison pour moi étant que dans le domaine du web tant d'un point de vue statistique que technique php est le meilleur.

Enfin le commentaire sur java et la compétence moyenne des développeurs est directement issu de mes expériences professionnelles et du fait qu'au bout de 10 ans d'informatique je commence à avoir un point de vue global sur l'évolution des technologies et sur la "désévolution" des programmeurs, la facilité et l'assistanat, et les one-shot normes étant les raisons. Ce qui me fait blâmer java loin devant php (qui je le rappelle est issu de syntaxes diverses reprenant les grands aspects syntaxique de langages comme le C) c'est justement qu'il assiste, facilite et ne ressemble à rien d'autres. (ton exemple de programmation objet m'a fait rire honnêtement mais tu aurais pu limiter la comparaison à echo/system.out.print qui en dit beaucoup plus long, une instruction contre une méthode accessible uniquement via deux objets)

par What's next? » 24 janv. 2008, 01:50

Nagol, je ne sais pas si tu es sérieux, si c'est le cas c'est inquiétant car tu viens de faire une magistrale critique de PHP tellement PHP s'inspire de Java directement, ou indirectement en s'inspirant des mêmes langages dont Java s'est inspirés (cf. petite démo ci-dessous).
Tu invoques l' "histoire" de l'informatique pour te donner du crédit, tu dois manquer sérieusement d'assurance quand tu parles de langages informatiques. Puisque tu sembles t'intéresser de près à l'évolution des langages, tu peux faire un tour sur le web et lire les critiques aussi bien éclairées que les tiennes à l'encontre de PHP et Java en comparaison au langage tendance, tant apprécié des geeks, à savoir Ruby.

Petite démo, 1 Java :

Code : Tout sélectionner

class Language { private String name = null; public Language() {} public String getName() { return name; } public void setName(String name) { this.name = name; } } public class Console { public static void main(String[] args) { Language language = new Language(); language.setName("Java"); System.out.print("I speek " + language.getName()); } }
Petite démo, 2 PHP :

Code : Tout sélectionner

class Language { private $name = null; public __construct() {} public function getName() { return $this->name; } public function setName($name) { $this->name = $name; } } class Console { public function main() { $language = new Language(); $language->setName("PHP"); echo "I speek " . $language->getName(); } }
Petite démo, 3 Java (JSP) :

Code : Tout sélectionner

<%= "Hello world of scriptlet!" %>
Petite démo, 4 PHP (scripting) :

Code : Tout sélectionner

<?= "Hello world of scripting!" ?>
Voilà pour ce qui est des énormes différences entre PHP et Java sur le plan des approches "objet" et "script"... Le typage a été évoqué dans ce sujet et c'est effectivement une grande différence, par exemple en PHP tu peux invoquer la méthode "setName" avec n'importe quoi, en Java tu ne peux pas...

Pour ce qui est des soi-disants problèmes de compatibilité ("grand nombre de JRE") c'est une farce ? Aujourd'hui encore beaucoup d'applications Java 1.4, voire 1.3 ou 1.2, s'exécutent dans un environnement 1.4 ou 1.5 sans aucun soucis. Quand une méthode, plus rarement une classe, est dépréciée elle le reste longtemps avant de disparaître du JDK. S'il y a des méthodes qui disparaissent, le refactoring de l'application reste bien moins lourd que ce qui attend certaines applications PHP avec l'arrivée prochaine de la sensibilité à la casse, des packages...

C'est quoi un serveur d'applications ? Bah il suffit de lancer une console d'administration Geronimo, WebSphere ou WebLogic pour comprendre la différence avec un serveur web...

C'est dommage de lire beaucoup d' "arguments" idéologiques dans ces sujets car je trouve que la question mérite d'être soulevée, personnellement je pense qu'il y a des langages meilleurs que d'autres indépendamment des besoins. Je crois qu'il faut entrer dans les caractéristiques détaillés des langages pour pouvoir les comparer et expliquer pourquoi X est meilleur qu'Y : compilation/interprétation, statique/dynamique, multi-threads/"uni-thread", structures de données/tableaux associatifs...

Je veux quand même finir là-dessus, un participant a parlé du grand nombre de classes et de méthodes, qu'il faut lire la Javadoc etc. C'est pas possible de lire des â-e-i-s de ce genre, combien y-a-t-il de fonctions en PHP, peut-on se passer de la documentation PHP, peut-on se passer de lire des forums, des livres en PHP ?! Les noms des méthodes ? Pff c'est vrai que "strstr" est plus parlant que "substring"...

Terminons dans la bonne humeur et la conciliation :
http://ivoras.sharanet.org/projects/jphp.html

par Berzemus » 10 janv. 2008, 17:07

Ou plutôt "celui qui fait rentrer l'argent" ...

Mais alors VBscript devient le dieu des langages, et ça, c'est pas possible..

par @rthur » 10 janv. 2008, 17:06

De toute façon, le "meilleur" langage, c'est celui que l'on sait utiliser le mieux.


...et ça marche aussi avec les systèmes d'exploitation

par iclo » 10 janv. 2008, 16:56

Merci pour le lien Berzemus.
Les critiques faitent à l'encontre de Java dans cet articile, surtout concernant la multitude de versions de JRE, sont intéressantes et certainement pas dénuées de tous fondements.

Maintenant, encore une fois, comme Cyrano, je ne comprends pas la comparaison php/Java, étant la grande différence des possibilités offertes par ces langages. Oui, java est certainement plus complexe, mais il permet tellement plus de chose. (L'image me vient de comparer un solex et un camion: le solex est beaucoup plus simple à construire et à entretenir, oui, mais quand on doit y mettre un piano, ça devient drole)
Je pense que pour juger le plus efficacement dans ce débat, il faut avoir explorer le domaine d'application de chacune d'elles, sans se limiter à les comparer sur les fonctionnalités qu'elles ont en commun)

par Cyrano » 09 janv. 2008, 22:54

Encore une fois, je ne serais pas aussi tranché : on ne compare pas des pommes et des oranges. Java et PHP n'ont pas les mêmes vocations.

On peut faire tous les reproches qu'on voudra à n'importe quel langage : s'il est correctement exploité, on peut faire de très bonnes applications, tout comme on peut aussi bien faire de la daube et ce n'est pas une exclusivité du Java. Il se trouve que pour faire du web actuellement, il sera infiniment plus simple de développer en PHP parce que c'est quand même la vocation première du PHP. Mais un excellent développeur Java peut parfaitement faire aussi bien, ce sera juste plus compliqué à mettre en œuvre.

Donc je dirais en guise de conclusion : il faut utiliser le langage qui est le plus approprié pour ce qu'on veut faire et dans certain cas, il sera opportun de considérer la possibilité de faire une partie en PHP parce que c'est plus adapté et une autre en Java pour la même raison et entre les deux utiliser par exemple le Java-Bridge pour faire communiquer les deux parties.

Pour finir, je citerais Rasmus qui disait un jour : "fail fast, fail cheap", ce qui en d'autres terme peut être traduit par : "Si votre projet n'est de toutes façons pas viable, autant le faire en PHP, ce sera plus rapide et ça coûtera moins cher" : c'est vrai dans la mesure où PHP est aussi adapté que Java pour ledit projet.

par Nagol » 09 janv. 2008, 21:43

je vois pas ou il est le troll honettement

JAVA est purement et simplement une erreur dans l'histoire de l'informatique. conçu par sun pour répondre aux besoin de la domotique il a été rattrapé dans la poubelle pour les besoins du web et ensuite adapté à la sauce client lourd pour enfin revenir à la sauce serveur avec les serveurs d'application (expression ronflante ne signifiant pas grand chose de concret).

Sur le web et pour le web php gagne à tout les coups suffit de regarder les stats java perd des parts de marché continuellement. Les problemes de java sont assez simple: en plus d'être un cauchemard à installer et configurer il est également unique syntaxiquement ce qui veut dire que si vous avez des bases dans un autre langage et bien vous aurez quand même à vous taper la doc jusqu'a ce que les noms de méthodes des objects vous rentre dans la mémoire, pour finir il est un langage 100% objet, pas de procédural ou peu ce qui le rend trés gourmand en mémoire et trés sujet aux fuites de mémoires (memleak) malgré un prétendu garbage collector (fameux dans l'argumentation anti java d'ailleurs). De l'autre coté php est simple intuitif et permissif (oui c'est bel et bien un avantage quand on l'apprend).

Pour finir une petite note sur l'histoire de l'informatique: j'ai toujours détesté JAVA pour une seule et unique raison: je trouve le langage dangereux pour la moyenne globale de compétence des dévelopeurs de ce monde. Quelque'un qui ne code qu'en JAVA est presque incapable d'aller vers une autre technologie du fait de la différence entre JAVA et le reste.

My 2c :)
<the_troll_must_go_on>

par Berzemus » 09 janv. 2008, 21:22

mais oui, mais oui..

source.

par iclo » 09 janv. 2008, 21:10

outre-atlantique on dit déjà que java est le nouveau cobol..

???????????? :shock:

par Berzemus » 09 janv. 2008, 20:13

outre-atlantique on dit déjà que java est le nouveau cobol..

par cf357 » 09 janv. 2008, 19:01

Ne m'en parle pas, je vais avoir un truc en Cobol.Net a faire.... horreur en vue !

par momox » 29 déc. 2007, 00:13

set mode troll ON

Perl c'est meilleur :)
Set mode Big Troll:
COBOL c'est encore mieux :D

par Xenon_54 » 28 déc. 2007, 23:36

set mode troll ON

Perl c'est meilleur :)

par Ryle » 28 déc. 2007, 20:00

Java est clairement "rebutant, contraignant, hermétique et lourd à souhait." Ce n'est certainement pas un langage dans lequel n'importe qui peut rentrer en claquant des doigts et faire son site perso en quelques minutes, alors que c'est nettement plus dans l'idée de php.

Ce sont effectivement deux langages différents et si Java permet de faire des script JSP comparables aux script PHP, il permet également de faire des Applet, des Servlet, des EJB, des applications Swing, etc. Il propose donc énormément de librairies, de frameworks et de possibilités que php ne pourra pas égaler - et n'envisage d'ailleurs pas d'égaler puisqu'il ne s'agit pour lui que de réaliser des applications web.

Le choix d'un langage (java, php, asp, vb, cgi, cold fusion, flash, ...) dépend du besoin et pas de l'envie ou de la facilité que l'on peut avoir à se l'approprié. Si tu as soif, tu préféreras le lait, si tu as faim, c'est du pain dont tu auras besoin, même si tu préfères le lait parce que tu peux le boire avec une paille ;)