IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Frameworks Web Java Discussion :

Java EE et productivité : frameworks, outils


Sujet :

Frameworks Web Java

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    245
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 245
    Points : 106
    Points
    106
    Par défaut Java EE et productivité : frameworks, outils
    Salut,

    Je vais bientôt participer au développement sur 2 ans d'un gros système d'informations, avec des interfaces riches, dans une petite équipe de 2-3 personnes. Jusqu'alors, les développements d'applications ont été faits avec Java, Eclipse, Tomcat, PostgreSQL, JDBC (via Apache Commons DBUtils), JSF 1.2 + RichFaces + Tomahawk. Pour ce nouveau projet, nous aimerions évoluer vers des frameworks et outils susceptibles d'améliorer notre productivité, en s'affranchissant par exemple de nombreux fichiers de configuration XML, et avec comme contrainte de devoir rester dans le monde de l'open source / gratuit / évolutif.

    J'ai d'abord pensé à Groovy/Grails mais le plugin Eclipse semble un peu limité pour développer confortablement (auto-complétion, refactoring, détection des erreurs). Pourquoi ne pas s'orienter dans ce cas vers les frameworks englobés dans Grails : Hibernate et Spring ? Ceux-ci améliorent-ils vraiment la productivité, malgré la phase d'apprentissage indispensable et potentiellement lourde ?

    Nous cherchons également un remplaçant de JSF pour la couche présentation. Bien qu'étant convaincu par l'importance du respect des standards W3C, nous allons sûrement devoir laisser de côté les Wicket ou Tapestry, au profit de technologie plus riches telles que GWT (voire JavaFX pour certains modules).

    Enfin, quelques autres noms trottent dans ma tête : Maven, Ivy... mais ce n'est pas le sujet de cette catégorie du forum.

    Vos conseils et expériences sur les frameworks Java EE et la productivité sont donc les bienvenus. Merci.

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    C'est curieux, vous utilisiez JSF + RichFaces et ça ne vous suffit pas ?
    C'était une ancienne version ?
    Personnellement, j'utiliserais
    - JSF
    - Facelets
    - RichFaces
    - Seam
    - EJB3 (avec Hibernate comme implémentation du JPA pour un serveur JBoss ou TopLink si c'est un serveur GlassFish... perso, j'ai une préférence pour Hibernate)

    Pour ce qui est des outils de développement, Eclipse 3.4 + plugins JBoss Tools

    GWT, on a tenté de l'utiliser (il y a 1 an) mais c'était vraiment trop aléatoire et vraiment pas performant
    JavaFX, c'est un peu neuf, j'attendrais un peu...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    245
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 245
    Points : 106
    Points
    106
    Par défaut
    JSF ne me convainct pas (peu productif, code généré pas terrible, pas mal de configuration) mais peut-être n'est-il pas employé dans les règles de l'art. Hélas nous sommes des jeunes diplômés ou "juniors" et il n'y a pas ici d'expert JEE pour nous encadrer et faciliter l'apprentissage de nouveaux frameworks.

    Pour la partie données et métiers, je vais jeter un oeil à Seam + Hibernate + EJB3... en espérant que l'apprentissage se fait bien, et que je saurai convaincre mon collègue d'opter pour ses technologies si elles conviennent.

    Pour la couche présentation, même si j'ai un peu pesté sur certains aspects du langage, je n'ai jusqu'alors pas testé mieux que le Flex pour développer rapidement des interfaces riches. Mais nous préfererions rester si possible dans des technologies Java, et dans l'open-source (outils compris). La question reste donc ouverte.

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Il n'y a pas forcement besoin d'expert jee pour bien commencer (d'ailleurs, beaucoup d'experts sont auto-proclamés, ou ont 24ans... Je suis dedans depuis 2000 et je n'ai pas fait le tour de la question)
    De bons exemples et/ou un bon forum (comme sur ce site) pour bien commencer et ça roule...
    Sinon, j'utilise (comme beaucoup d'autres encore) Struts / Struts-Layout pour la couche IHM, les résultats sont excellents et les performances aussi (mais c'est un framework "vieillissant"... pour rester sympa...)

    Pour Hibernate/EJB3 (Entity), là, tu trouveras beaucoup de documentation.
    Ce n'est pas très compliqué, c'est très bien fait, il faut un bon mois pour bien prendre en main...
    Une des dernières application que j'ai eu à faire faisait un usage important du polymorphisme et c'est du pur bonheur.
    Le langage HSQL est bien, maintenant, ce n'est pas ce qui m'intéresse le plus étant très à l'aise en SQL via JDBC...
    Bref, je vous le conseille vivement, ça vaut le coût d'investir dans cette techno.

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    t as jeté un oeil a icefaces ? les UI sont un peu moins moches que richfaces

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par *alexandre* Voir le message
    t as jeté un oeil a icefaces ? les UI sont un peu moins moches que richfaces
    Comme quoi, les goûts et les couleurs... moi, je préfère Richfaces...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    juste pour signaler qu'il existe un debat jsf-versus-gwt qui peut t'interesser

  8. #8
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par 84mickael Voir le message
    Salut,

    Je vais bientôt participer au développement sur 2 ans d'un gros système d'informations, avec des interfaces riches, dans une petite équipe de 2-3 personnes. Jusqu'alors, les développements d'applications ont été faits avec Java, Eclipse, Tomcat, PostgreSQL, JDBC (via Apache Commons DBUtils), JSF 1.2 + RichFaces + Tomahawk. Pour ce nouveau projet, nous aimerions évoluer vers des frameworks et outils susceptibles d'améliorer notre productivité, en s'affranchissant par exemple de nombreux fichiers de configuration XML, et avec comme contrainte de devoir rester dans le monde de l'open source / gratuit / évolutif.

    J'ai d'abord pensé à Groovy/Grails mais le plugin Eclipse semble un peu limité pour développer confortablement (auto-complétion, refactoring, détection des erreurs). Pourquoi ne pas s'orienter dans ce cas vers les frameworks englobés dans Grails : Hibernate et Spring ? Ceux-ci améliorent-ils vraiment la productivité, malgré la phase d'apprentissage indispensable et potentiellement lourde ?

    Nous cherchons également un remplaçant de JSF pour la couche présentation. Bien qu'étant convaincu par l'importance du respect des standards W3C, nous allons sûrement devoir laisser de côté les Wicket ou Tapestry, au profit de technologie plus riches telles que GWT (voire JavaFX pour certains modules).

    Enfin, quelques autres noms trottent dans ma tête : Maven, Ivy... mais ce n'est pas le sujet de cette catégorie du forum.

    Vos conseils et expériences sur les frameworks Java EE et la productivité sont donc les bienvenus. Merci.
    Attention à ne pas se perdre dans toutes ces technologies; tu mélange u peu tout, présentation, métier..
    à mon avis, si l'équipe a moins d'experience, il vaut mieux choisir un framework qui encade un peu les développements, JSF par exemple. ou/et seam.
    chaque framework cité a ses avantages et ses inconvénients, le choix doit être fait suivant les besoins et les compétences..
    par contre, tu ne peux pas juger un framework rapidement il faut vraiment un bon projet pour faire le tour..

    Citation Envoyé par *alexandre* Voir le message
    t as jeté un oeil a icefaces ? les UI sont un peu moins moches que richfaces
    Comme quoi, les goûts et les couleurs... moi, je préfère Richfaces...

    Idem pour moi , en plus , Richfaces c'est plus riche..je parle de la richesse des composants ..et la documentation..
    Ceci dit, ne polémiquons pas ici sur ce sujet, même si je pense que c'est plus qu'une question de goûts et de couleurs

  9. #9
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    245
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 245
    Points : 106
    Points
    106
    Par défaut
    Effectivement je cite beaucoup de frameworks, mais j'arrive à déterminer le rôle de chacun.

    Comme on démarre un nouveau projet, qui durera environ 2 ans et qui nécessitera une bonne productivité, il nous faut faire de bons choix technologiques.

    La tendance est à GWT + Spring + Hibernate, mais ça peut encore changer d'ici le démarrage !

  10. #10
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    un petit article (qui date un peu maintenant) http://www.icesoft.com/corporate/pre...migration.html

  11. #11
    Membre confirmé Avatar de toomsounet
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 481
    Points : 576
    Points
    576
    Par défaut
    +1 pour porter un intérêt sur Spring, c'est un framework complet qui couvre toutes les couches de ton appli et facilite la comm' via l'injection de dépendances.
    "Most Java programs are so rife with concurrency bugs that they work only by accident"

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 54
    Points : 65
    Points
    65
    Par défaut
    Salut,

    les conseils que je peux te donner sont les suivants:

    - Evalue les forces en présence et ce qui est déjà fait. Exemple, j'avais un intégrateur html ds mon équipe, et donc j'ai d'emblée supprimer les frameworks à base de jsp car il avait commencé le site en statique.

    - Je voulais peu de configuration xml comme toi, alors j'ai choisis un framework où quasiment tout se configure dans les classes java et dans les conventions de nommage.

    - Utilise au maximum les composants ajax déjà prêt, du genre jQuery ou Scriptaculous / prototype, car au niveau des interfaces c'est déjà très puissant.

    - Factorise au max le code, même en cycle itératif, afin qu'il soit le plus lisible, concis, qu'il prenne le moins de ligne possible. C'est en ce sens que les outils servent. Au niveau des appels à XmlHttpRequest, au début, on n'en avait qu'un à faire, alors codage à la main, puis le client adore, donc plein de codage à la main... Et enfin je mets un gars une journée sur les classes d'appels Ajax à utiliser avec prototype... et voilà, c'est de l'investissement mais le jour où les appels xmlhttprequest évoluent, je suis tranquille, je fais juste évoluer prototype (enfin j'espère).

    - Pour être productif, Hibernate s'avère indispensable, surtout si le modèle de données existe déjà. Néanmoins, si t'as 3 select et 2 inserts à faire, c'est peut être la limousine pour aller chercher le lait.

    - que le framework soit bien documenté, et en français (j'étais le seul à parler anglais ici, et toutes la docu de ce framework était dans la langue de shakespeare, c'était pas le mieux en fait.)


    Je te conseille de regarder du côté de trails ou encore Appfuse.

    Concernant Maven 2, j'adore. ça accélère la productivité, le travail en groupe avec les repository, standardise ta webapp, facilite les livraisons, la documentation... bref, je suis fan, mais il paraît (alors là, c'est à toi de vérifier car moi j'ai pas de problème) que sur des projets très très gros, c'est pas top... Pourtant je pense être sur un gros projet déjà.

    Pour la tendance, mon conseil c'est de ne pas faire le mouton... Combien de projet Struts mal fait parce que le client voulait Struts et qu'en face, ben...

    GWT, es tu sûr ? J'ai fait du swing dans un temps ancien, et je me rappelle que c'était bien verbeux. Le GWT ça a l'air pareil (je dis bien "a l'air" parce que je connais très peu, j'ai juste testé, c'est pas la peine de me tomber dessus )

    Enfin, si tu as de l'expérience, essayes de te rappeler tout ce qui t'a emmerdé sur tes précédents projets ou ceux que tu as récupéré (sql intrusif, indentation à 2 balles, classes verbeuses à souhait, nom de fonction et d'objets à 2 balles...)

  13. #13
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    245
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 245
    Points : 106
    Points
    106
    Par défaut
    Bonjour,

    Le développement du SI est estimé à 2 ans avec 2 personnes. Au programme : une base de données complexe (PostgreSQL) et des interfaces riches. Etant jeune diplômé, c'est important de faire le bon choix, mais aussi de monter en compétence sur des technologies intéressantes. Il nous faut des frameworks open-source, gratuits, matures, pérennes et bien outillés. D'où l'abandon de Groovy/Grails, notre idée de départ, malgré sa philosophie intéressante.

    Si Hibernate s'est imposé facilement, le choix de GWT a été moins évident. Nous avons été séduits par les développements 100 % Java, et par les composants proposés.

    Malgré l'intérêt de ces technologies, l'apprentissage de Maven2 et surtout de Spring (parallèlement à Hibernate et GWT) risque d'être trop ambitieux. Leur utilisation reste donc en suspend.

    Toutefois n'hésitez pas si vous avez de bons tutoriels sur l'utilisation de Maven2 ou Spring 2.5 (avec annotations) dans Eclipse, ou simplement d'autres conseils.

    Merci à tous.

  14. #14
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    Vous avez 2 ans devant vous, vous avez largement le temps d'apprendre ce qui sera utile de spring et de maven2 !

  15. #15
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    245
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 245
    Points : 106
    Points
    106
    Par défaut
    Je viens confirmer que ça vaut le coup de se frotter à Hibernate/Spring/Maven pour améliorer sa productivité. Malheureusement, l'intégration de GWT avec ses outils est bien limité. Wicket devrait donc remplacer le framework de Google. Merci à tous pour vos conseils.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Mission/Télétravail] Ingénieur étude et développement java/J2EE & PHP5/Zend Framework
    Par Invité dans le forum Demandes
    Réponses: 0
    Dernier message: 20/11/2011, 15h37
  2. Java : Oracle lance un framework de développement mobile
    Par Idelways dans le forum Général Java
    Réponses: 4
    Dernier message: 17/03/2011, 12h38
  3. Java : Oracle lance un framework de développement mobile
    Par Idelways dans le forum Actualités
    Réponses: 0
    Dernier message: 16/03/2011, 12h15
  4. Réponses: 1
    Dernier message: 10/01/2009, 14h08
  5. [Java] Jasper & FOP : comparaison des outils servant pour la génération de PDF
    Par sovop dans le forum Autres outils décisionnels
    Réponses: 1
    Dernier message: 13/06/2007, 10h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo