20-09-2011, 05:21 PM
(Modification du message : 20-09-2011, 09:30 PM par Sephi-Chan.)
(20-09-2011, 12:57 PM)Hideaki a écrit :Sephi-chan a écrit :Et il n'y a pas d'ajout de paramètre pour rien, si j'avais défini @hotel au lieu de hotel, ça ne m'aurait pas coûté plus cher.Sephi-chan a écrit :La vue peut accéder à ces variables d'instance.
Mais sais-tu ce qui se passe lors de l'interprétation/compilation du code ? L'interpréteur ne va pas vérifier si dans la page généré cet attribut est utilisé, par conséquent, il est dans l'obligation de créer un mapping ou tableau contenant la clef ( le nom de ta variable désigné par @ ) et la valeur associée afin de la transmettre à ta vue, cette création nécessite certaine manipulation spécifique qui prend un certain temps qui est négligeable mais dans le cas d'une forte sollicitation ...
Tu n'arrives pas à imaginer que Rails agisse différemment de Java EE… Dans les actions, je définis des attributs et j'y ai accès dans la vue. Ni plus, ni moins.
(20-09-2011, 12:57 PM)Hideaki a écrit :Sephi-chan a écrit :Selon moi, les outils proposés par Java poussent les développeurs à compliquer inutilement les choses. Et c'est justement cette incitation à la simplicité qui m'a séduit dans Rails.
L'avantage ici avec J2ee mais aussi dans d'autre langage, c'est que le processus n'est pas masqué et permet donc de mieux prendre conscience de ce fonctionnement. La simplicité est souvent le contraire de l'optimisation, tu as dû déjà voir le cas en C
Je ne suis pas d'accord. La stack Java est tellement énorme (JMS, JPA, EJB, etc.) que justement, c'est bien une technologie qui te masque la technique sous-jacente.
Traiter un problème de manière simple, c'est utiliser une technique qui fait juste ce qu'il faut. C'est généralement plus performant.
À l'inverse, les frameworks Web Java — parce qu'ils s'adressent à un public professionnel amateur de problématiques ultra spécifiques — apportent des solutions qui sont plus complexes que nécessaire dans la majorité des cas (à savoir les problématiques simples, les plus nombreuses).
Voilà pourquoi beaucoup d'applications Web écrits en Java sont des bloatwares. D'ailleurs, un site en Java se reconnaît facilement : des URL moches à rallonge, un code HTML pourri, etc.
Je suis convaincu que Java, et plus généralement la JVM, est excellente : l'écosystème permet de gérer tous les besoins du monde. Cet atout a un prix : la complexité. Quand on veut gérer tous les cas, il faut multiplier les couches, les composants, etc. Ça a un coût.
Le truc, c'est que seule une infime portion des applications justifient l'utilisation de telles solutions. Pour les autres, c'est overkill.