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

Interfaces Graphiques en Java Discussion :

Evenement "lexical, syntactical and semantical"


Sujet :

Interfaces Graphiques en Java

  1. #1
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Par défaut Evenement "lexical, syntactical and semantical"
    Bonjour,
    Je suis étudiant et j'ai un cours de swing. J'ai une question théorique comme celle-là : "In GUI programming, we distinguish between lexical, syntactical and semantical events. What kind of mechanisms did you use to handle lexical and syntactical events in your implementation?"

    Est-ce que quelqu'un pourrait m'expliquer ce que représentent ces différents événements (lexical,syntatical...) car après de nombreuses recherches sur le net, je n'ai rien trouvé de très consistant. I need some help please...

  2. #2
    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
    À mon avis ça n'a rien à voir avec swing, c'est pour un projet particulier, en l'occurence un compilateur, qu'on utilise des analyses lexicales, syntaxiques et sémantique...

  3. #3
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Par défaut
    Je pense que tu te trompes. Voila ce que j'ai trouvé sur le net :
    http://www.cs.cmu.edu/~bam/uicourse/...07softorg.html

    # Semantic

    * functionality of the system; what can be expressed
    * What information is needed for each operation on object
    * What errors can occur
    * Semantic vs. UI is key issue in UI tools
    o but "semantic" is different than meaning in compilers

    # Syntactic

    * sequence of inputs and outputs.
    * For input, the sequence may be represented as a grammar:
    o rules for combining tokens into a legal sentence
    * For output, includes spatial and temporal factors
    * Example: prefix vs. postfix

    # Lexical (as subdivided by Buxton)

    * spelling and composition of tokens
    o "add" vs. "append" vs. "a" vs.
    * Where items are placed on the display
    * "Key-stroke" level analysis
    * For input, is the design of the interaction techniques:
    o how mouse and keyboard combined into menu, button, string, pick, etc.



    Mais je ne comprends pas trop ce que ça signifie.

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 705
    Par défaut
    C'est marrant mais complètement tordus son truc. Mais je trouve ca interessant;

    Tous les évènements graphiques forment un séquence
    exemple: j'ajoute un nom dans un champs de texte.
    je clique sur le bouton add --> ajout du nom à la liste
    je clique sur un autre bouton pour faire qq chose avec les éléments de ma liste etc...

    Ca pourrait s'écrire inputText(alec6) button(addToList) button(actionOnList) etc... ca fait presque une phrase formelle. (une formule)

    Et comme dans toute phrase on a
    un lexique=vocabulaire (button, list, drag form tree, drop to list...
    la syntaxe=grammaire=ordonnancement (click on item --> drag to tree --> drop...
    une sémantique= ca a un sens logique ou pas (drop the trash on password field par exemple, qui veut drag-dropper la poubelle dans un textfield de login...

    et donc ta question c'est comment dans ton programme tu gères les actions de l'utilisateur pour la part l'exicale et syntaxique... en swing: délégation évènementielle (pattern observer observable).

    Je pense etre juste, mais je te l'assure pas. C'est la première fois que je vois ca; si tu as de la doc sur ton cours, (le genre théorique) je suis preneur merci.

  5. #5
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Il y a quelque chose qui ressemble à ça dans le tutoriel swing, sur General Information about Writing Event Listeners, Concepts: Low-Level Events and Semantic Events.

    Comme tu vois, chacun fait sa petite semoule des événements... Je pense que ce qui est important est de retenir l'idée, prendre plusieurs avis, essayer de mettre en oeuvre celle qui vous plait le plus, et passer à autre chose.

  6. #6
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Par défaut
    Mon programme c'était un GUI dans lequel j'écris dans une JTextField. En fonction des boutons sur lesquelles j'ai appuyé sur ce même gui, ce que j'écris se transforme en majuscule ou en minuscule.
    dans ce cas qu'est ce qu'un évènement lexical ? le fait d'appuyer sur l'un des JButtons.

    Et l'évènement syntaxique... j'ai du mal à comprendre.

    Pour l'instant je n'ai pas les cours car ils sont en norvégien....

  7. #7
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Par défaut
    voila ce que j'ai trouvé en français mais c'est toujours compliqué à comprendre.
    Source : http://www.lisi.ensma.fr/ftp/pub/doc...goIA-Sanou.pdf

    Le niveau d’enregistrement peut être très différent selon les systèmes. Les travaux menés sur les systèmes de conception technique [9, 11, 26, 31] ont permis de caractériser cinq niveaux d’enregistrement-rejeu.

    1. Le premier niveau correspond à l’enregistrement des actions les plus élémentaires de l’utilisateur. Les premiers systèmes d’enregistrement de macro fonctionnaient selon ce principe, avec comme corollaire que la situation initiale jouait un rôle prépondérant sur le bon déroulement de la phase de rejeu : les positions graphiques étant enregistrées en absolu, toute différence dans la configuration initiale de l’écran aboutissait à une exécution erronée de la macro. Dans Jacareto, l’enregistrement se passe au niveau de la boîte à outils d’interaction, Swing en l’occurrence ; ce sont ainsi les événements de bas-niveau (MouseEvent, MouseMoveEvent, KeyEvent) qui sont enregistrés et rejoués, permettant un rejeu à l’identique de toutes les actions de l’utilisateur.

    2. Le deuxième niveau concerne l’aspect lexical de l’interaction. Les éléments sont enregistrés au niveau de l’action élémentaire, du point de vue de l’utilisateur, et non plus de la boîte à outils. Eager [4] en est la parfaite illustration. Les actions telles que le changement de focus sur une application, ou la sélection d’un item de menu, sont ainsi rejouées pour permettre à l’utilisateur de confirmer les propositions du système.

    3. Le troisième niveau correspond à l’aspect syntaxique de l’interaction. Le système Like [9] en est un bon exemple. Dans ce système de conception technique, le dialogue entre l’utilisateur et le système est décrit par le moyen d’automates évolués (des Augmented Transition Networks, ou ATN [32]), manipulant des jetons de dialogue (commandes, paramètres). L’enregistrement de ces jetons constitue la base de l’enregistrement au niveau syntaxique. Nous verrons que ce niveau d’enregistrement présente un intérêt certain pour l’interprétation des actions de l’utilisateur. Notons que, lorsque le style de dialogue est la manipulation directe, comme c’est le cas par exemple pour Peridot [22], il est très difficile de distinguer le niveau lexical du niveau syntaxique : chaque interaction élémentaire est à la fois un élément lexical et un élément syntaxique, puisque la réaction du système est supposée continue.

  8. #8
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 705
    Par défaut
    Oui l'évènement l'exical c'est une action toute simple:
    - j'appui sur une touche de l'ordi
    - je clique avec la sourie (sur un boutton)
    - je change de focus
    etc...

    L'évènement syntaxique lui concerne l'ordre des évènements lexicaux.
    Par exemple: je fais control = un évènement lexical puis je fais clique avec la sourie = 2ième évènement lexical sur qq chose dans la GUI.
    Tu reçoit donc une séquence de deux évènements. Et toi justement tu veux ouvrir une popup quandl'utilisateur il fait ca (control + clique). Et bien cette séquence c'est un évènement syntaxique.

    Un exemple habituel d'évènement lexical; parfois dans les programmes GUI ont fait un truc secret pour que le programme fonctionne différent de normal, et que ca aide au développement. Pour un jeu vidéo on va faire on sort de ne pas mourir pour continuer tous les niveaux etc... On peut faire un code du genre cliquer sur un bouton et tapez 123 au clavier. Le logiciel va recevoir cette séquence bouton - 123 et va entrer en mode échaffaudage.

    Voilà tout.

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