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

Langage Java Discussion :

optimisation de l'éxécution d'une appli ?


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2004
    Messages : 62
    Par défaut optimisation de l'éxécution d'une appli ?
    Bonjour,

    Actuellement je termine une appli (en 1.5).
    J'utilise jsmooth pour fair l'exe, et la JRE est embarquée (repertoire jremaison qui accompagne l'exe pendant le deploiement).

    Le problème est que je trouve que l'appli est assez longue à se lancer
    surtout comparée a d'autre appli java

    J'aimerais donc savoir si il y a des trucs à ne pas faire? ou des pistes afin d'optimiser cette execution

    Je precise que ce n'est pas une grosse app, il y a une IHM (swing).
    En gros, c un SSO
    donc quand on lance, je me connecte sur un AD, je recupere les infos (groupes...) , et ensuite c affichage de ces infos (icones...)

    Merci par avance

    Emmanuel

  2. #2
    Membre chevronné Avatar de spekal
    Inscrit en
    Mai 2005
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 502
    Par défaut
    Il est très difficile de répondre d'une façon générale à cette question.

    Au lancement les applis en java ont un handicap par rapport à d'autres systèmes informatiques : il faut lancer la machine virtuelle, et il faut aussi établir la compilation et l'optimisation du byte code. Cela fait beaucoup.

    Cependant, ce n'est vraiment génant que pour les applis en ligne de commande. Pour les applis bureautiques, l'habitude dans ce domaine est d'être tellement puissant que l'on considère normal de mettre 3 plombes à se lancer ; la technique splash screen pour faire patienter est devenue une marque de qualité, et non plus un paliatif.

    Si jamais tu ne le penses pas, la première direction est de voir ce qui se passe entre le début du main - on considère dans un premier temps que tout se qui se passe avant est peanuts - et la mise à disposition de l'interface utilisateur.

    Donc, chez toi, que se passe-t-il ?...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2004
    Messages : 62
    Par défaut
    Pour ce qui est du splashscreen, au debut j'en avait mis un (option de exe4j), mais ensuite je me suis dirigé vers jsmooth(gratuit), et il n'y avait plus cette option, donc j'ai laissé tomber. Mais je vais me repencher sur ce problème, c vrai que ça sera un peu "présentable"

    Pour l'appli en elle même, voila en gros son deroulement entre le main et l'affichage :

    Main
    ---je bloque un port, et je lance la fct Appli

    ---fct Appli
    ------creation de la fenetre principale (JDialog)
    ------mise en place du look & feel
    ------ajout dans le systray de l'app.
    ------ lance fct creation IHM

    ------fct creation IHM
    -----------creation d'un toolbar (fct)
    -----------creation d'un panel pour la liste des appli (fct)
    -----------fct qui consulte l'AD et qui met a jour le panel des appli
    -----------on ajoute tout au JDialog et on affiche



    Je sais pas si ce que tu voulais et comme tu le vois, ce n'est pas une grosse appli

    Mais concretement je vois pas trop comment tester, c'est pour cela que je posais la question.

  4. #4
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Citation Envoyé par sboober
    ---je bloque un port, et je lance la fct Appli
    Tu le fais dans un autre Thread?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2004
    Messages : 62
    Par défaut
    non dans le même, pkoi ?

  6. #6
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Citation Envoyé par sboober
    non dans le même, pkoi ?
    C'est pour détecter si l'appli est déjà lancée?

    Si oui, ok faut le laisser dans le Thread principal, mais il faut mettre un timeout...

    Sinon tu utilises quel look&feel, y'en a qui sont plus longs que d'autres à se charger...

    Peux-tu juste montrer ta méthode main(...) (et autres méthodes appelées par main si nécessaire)?

Discussions similaires

  1. Optimisation temps d'éxécution d'une requête
    Par majduuus dans le forum Développement
    Réponses: 11
    Dernier message: 03/06/2013, 11h50
  2. optimisation d'une appli avec DB?
    Par Invité dans le forum Bases de données
    Réponses: 2
    Dernier message: 06/10/2009, 13h35
  3. Comment déclencher l'éxécution d'un lot DTS par une appli ?
    Par BuckDenis dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 07/04/2008, 13h31
  4. Réponses: 25
    Dernier message: 07/07/2007, 21h36
  5. Comment optimiser une appli?
    Par alen dans le forum MFC
    Réponses: 1
    Dernier message: 07/06/2007, 15h56

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