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

Java Discussion :

[Architecture] Java et python.


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut [Architecture] Java et python.
    Pourquoi dit ton que java et python sont un tres bons melanges?

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Personnellement c'est la premiere fois que j'entend ca .

    Ceci dit rien que le mot "Python" en 2 ans d'activité professionnel je l'ai pas souvent entendu !!

  3. #3
    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
    Par défaut
    parce que pyhton (comme ruby d'ailleurs) est objet, a pas mal de concepts en commun avec java (POO surtout), mais est dynamique. Ca pourrait un peu etre un java non typé si tu veux.

    ensuite, avec jython, tu peux compiler ton pyhton en .class, et tu peux meme embarquer un interpreteur pyhton dans une de tes applications (pour faire un moteur de scripting par exemple)

  4. #4
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    J'ai cree une application assez grosse avec un interpreteur Python embarque : http://www.jext.org

    C'est tres facile a faire, ca fonctionne super bien et je suis ravi du resultat. Dans cette application tout le code qui gere les evenements des menus est ecrit en Python. Exemple du code quand on clique sur File/Open :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    from org.jext import Utilities
    fileToLoad = Utilities.chooseFiles(__jext__, Utilities.OPEN)
    if fileToLoad != None:
      for i in range(len(fileToLoad)):
        __jext__.open(fileToLoad[i])
    Toutes mes actions ecrites en Python sont dans un fichier XML et les menus sont aussi decrits par un fichier XML. Cela me permet de cliquer sur Reload Menus pour recharger les menus et leur code sans quitter l'application ni recompiler quoi que ce soit. Et comme c'est un editeur de code source, je peux modifier le logiciel directement dans lui-meme.

    Par exemple le XML du menu puis le code XML de l'action Reload Menus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
      <menu label="$Debug" debug="yes">
        <item label="$Start PlugZilla and download plugins" action="download_plugins" debug="yes" />
        <item label="Reload $Actions" action="debug_reload_actions" debug="yes" />
        <item label="Reload $Menus" action="debug_reload_menus" debug="yes" />
        <item label="Reload $Both" action="debug_reload_both" debug="yes" />
      </menu>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
      <action name="debug_reload_menus">
    from org.jext.event import JextEvent
    from org.jext.xml import XBarReader
    from org.jext.xml import XMenuReader
    XMenuReader.read(__jext__, __jext__.getClass().getResourceAsStream("jext.menu.xml"), "jext.menu.xml")
    XBarReader.read(__jext__, __jext__.class.getResourceAsStream("jext.toolbar.xml"), "jext.toolbar.xml")
    __jext__.fireJextEvent(JextEvent.TEXT_AREA_SELECTED)
    pos = __jext__.getTextArea().getCaretPosition()
    __jext__.getTextArea().setCaretPosition(pos + 1)
    __jext__.getTextArea().setCaretPosition(pos)
      </action>

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    Citation Envoyé par lunatix
    parce que pyhton (comme ruby d'ailleurs) est objet, a pas mal de concepts en commun avec java (POO surtout), mais est dynamique. Ca pourrait un peu etre un java non typé si tu veux.
    -Ruby ne figure pas dans la liste des programme qui ont une sous catégorie sur le site principale.
    -J'ai effectivement entendu dire que python est beaucoup orienté objet voir uniquement orienté objet, mais je débute sa ne veut pas encore dit beaucoup de chose pour moi.Et j'ai aussi entendu que le java néccesite de connaitre bien les principes de la POO.
    -Python est dynamique(je ne percois pas ce que ca veut dire non plus!)
    -Que veut tu dire par typé?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    Citation Envoyé par Gfx
    Toutes mes actions ecrites en Python sont dans un fichier XML et les menus sont aussi decrits par un fichier XML
    Puis je savoir ou est le java la dedans?

  7. #7
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Toute l'application est en Java et dans les petits bouts de code que j'ai montre, tous les objets utilise en Python sont en fait des objets Java. Par exemple "from org.jext import Utilities" importe la classe Java org.jext.Utilities et Utilities.chooseFiles() invoque la methode chooseFiles() de la classe Utilities.

  8. #8
    Membre éclairé Avatar de spilliaert
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    268
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 268
    Par défaut
    Citation Envoyé par Extra-Nitro
    -Que veut tu dire par typé?
    php est faiblement typé
    java est très fortement typé

    c'est facile à comprendre, regarde:
    en java;
    en php:Dans un language typé, tu dois spécifier le type des variables=>types numériques:int,float pour les nbres (et j'en passe);char pour un caractère;String pour une suite de caractère...en java , on met même à quel objet appartient une instance...bref, ça c'est pour les languages typés. Pour les languages non typés(comme php),on indique juste le nom de la variable et sa valeur... pour + d'infos

  9. #9
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Tu dis n'importe quoi Python est un langage fortement type alors que tu ne precises pas le type lors de la declaration des variables. De meme, le C est un langage faiblement type alors que tu declares un type lors de la declaration.

    Un langage fortement type est un langage qui garantit toujours le type d'origine de la donne. Par exemple en Python si je dis a = 12, je ne pourrais pas faire a + "une chaine" sans convertir a, un entier, en chaine d'abord.

    En revanche avec un langage faiblement type je peux consider mon entier comme une chaine. Exemple en C : int a = 12 et char* text = &a.

    Bref, Python est un langage dynamiquement et fortement type. Et pour information, PHP est bien faiblement et dynamiquement type (dans ton explication tu dis qu'il est faiblement type puis qu'il n'est pas type).

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    Gfx j'ai compris que globallement ton deuxieme message, sinon je vous remercie tous de vos aide, mais je me pose une question un peut plus précise maintenant.

    parce que pyhton (comme ruby d'ailleurs) est objet, a pas mal de concepts en commun avec java (POO surtout), mais est dynamique. Ca pourrait un peu etre un java non typé si tu veux.
    Donc si être typé est comme je l'ai compris cad compliqué(a la place de i=0 int i=0 ou Si=o; )
    Python serait donc un java dont la syntaxe serait tout comme le turbo pascal: plus facile a rédiger?(il me semble avoir entendu que java est du trop haut niveau pour debutant sans expérience)...
    Corrigez moi si je me trompe .

  11. #11
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Je dirais que Python est encore plus haut niveau que Java mais bon... Bref, ta comparaison ne marche pas, je trouve par exemple la syntaxe de pascal plus complexe que celle de Java. Python est simplement un langage oriente objet avec une syntaxe (la plupart du temps) tres simple et il est facile a apprendre. Je te conseille de commencer par Java puis d'apprendre Python.

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    il me semblait que java était très dur...Je dois lire un manuel livre sur la POO avant? On m'as dit que c'était mieux pour le java...

  13. #13
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    961
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 961
    Par défaut
    Ou alors, lire un livre sur Java spécialement destiné aux débutants, comme Java pour les Nuls. Un tel livre vous initiera simultanément au langage Java et aux concepts de programmation objet nécessaires. L'inconvénient, c'est que la limite entre le langage Java et la programmation objet en général sera floue, mais c'est un bon moyen de commencer avant d'entreprendre de plus grandes et plus belles choses.

  14. #14
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Citation Envoyé par BugFactory
    Ou alors, lire un livre sur Java spécialement destiné aux débutants, comme Java pour les Nuls. Un tel livre vous initiera simultanément au langage Java et aux concepts de programmation objet nécessaires. L'inconvénient, c'est que la limite entre le langage Java et la programmation objet en général sera floue, mais c'est un bon moyen de commencer avant d'entreprendre de plus grandes et plus belles choses.
    Petite remarque concernant Java pour les nuls
    Je ne l'ai pas lu mais voila ce qu'on en dit sur developpez.com :
    http://www.developpez.net/forums/vie...7123&start=105
    Ceci dit à priori celui qui dit ca est loin d'etre un nul

  15. #15
    Membre actif

    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 46
    Par défaut
    Généralement, pour revenir au sujet initial, une grosse application a un coeur en C/C++ ou Java (par exemple : un moteur de jeu vidéo) et tous les paramètres (niveaux, armes, scripts, scénarios) sont écrits dans un langage de script que le coeur peu charger et interpréter (ex : Python pour C,C++, Jython pour Java). On peut citer LUA pour la série des Baldur's Gate (au tout début) ou Python pour Le temple du mal élémentaire. L'aspcet primordial du coeur est d'être rapide, alors que le langage de script est juste là pour le paramétrer.
    Enfin, Python & Ruby sont dynamiques, puissant et fortement typé et permettent des choses assez folles (par très catholique dirait certains pro de Java).
    Une Rub(r)yque sur développez.com est juste une question de temps....

  16. #16
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Citation Envoyé par Xitog
    Généralement, pour revenir au sujet initial, une grosse application a un coeur en C/C++ ou Java (par exemple : un moteur de jeu vidéo) et tous les paramètres (niveaux, armes, scripts, scénarios) sont écrits dans un langage de script que le coeur peu charger et interpréter (ex : Python pour C,C++, Jython pour Java). On peut citer LUA pour la série des Baldur's Gate (au tout début) ou Python pour Le temple du mal élémentaire. L'aspcet primordial du coeur est d'être rapide, alors que le langage de script est juste là pour le paramétrer.
    Enfin, Python & Ruby sont dynamiques, puissant et fortement typé et permettent des choses assez folles (par très catholique dirait certains pro de Java).
    Une Rub(r)yque sur développez.com est juste une question de temps....
    Moi qui n'avais jamais entendu parler de python et qui ne voyait pas l'interet de l'utilisation d'un langage de script en plus de Java et bien je commence a trouver ca interessant !!

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    Comment tu le sais pour la nouvelle rubrique?
    Merci des vos informations.

  18. #18
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    Et je n'ai toujours pas bien compris le principe de jython?
    C'est un programme?
    Un language?
    Ou une norme?

  19. #19
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    C'est un interpreteur pour le langage Python mais ecrit en java.

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    Et quelles sont les différences avec IDLE?
    On peut faire des trucs en plus ?

Discussions similaires

  1. Choix : Java vs Python
    Par Jiyuu dans le forum Langages de programmation
    Réponses: 15
    Dernier message: 08/12/2008, 19h21
  2. Développeur C / C++ / Java / Shell / Python / etc
    Par tatarifa dans le forum Demandes
    Réponses: 0
    Dernier message: 14/09/2008, 12h22
  3. Que choisir : Java ou Python ?
    Par csbilouze dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 11/02/2007, 22h58
  4. [Débat] Java vs Python
    Par kedare dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 31/05/2006, 22h10
  5. [Architecture] java dans php
    Par yann999 dans le forum Développement Web en Java
    Réponses: 14
    Dernier message: 03/05/2006, 13h58

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