Partage
  • Partager sur Facebook
  • Partager sur Twitter

débutant: python ou java?

    23 février 2012 à 18:31:22

    Bonjour a tous!

    Je voudrais me mettre a la programmation mais je ne sais pas quel langage apprendre entre python et java pour débuter, car je suis un vrai novice en programmation! ^^
    Si vous avez un autre langage a me proposer pour débuter je suis preneur! :D

    Merci d'avance!
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      23 février 2012 à 18:44:13

      Salut,
      Je te conseille le langage python. Il possède de nombreux avantages :
      • -intuitif donc relativement facile à programmer
      • -tu pourras vite faire des programmes "assez complexes", comme par exemple "le plus ou moins", ce qui motive
      • -Il n'y a pas d'innombrables directives de processeur comme dans certains langages (du genre l'assembleur)
      • -Tu n'as pas besoin de tout class-ifier comme en Java donc plus "ludique" au début
      • -Tu pourra faire avec des petits moyens gros projets selon tes envies
      • -Suffisamment rapide pour pas mal de programmes (jeux en 2D sans problème par exemple)


      En revanche, il est moins portable que Java mais tourne quand même sous pas mal de système d'exploitations : Windows, Linux,...
      • Partager sur Facebook
      • Partager sur Twitter
        23 février 2012 à 18:49:24

        Python sans hésiter.
        • Partager sur Facebook
        • Partager sur Twitter

        Blond, bouclé, toujours le sourire aux lèvres...

        Anonyme
          23 février 2012 à 19:01:11

          @loup solitaire : tes arguments sont imparables :D
          • Partager sur Facebook
          • Partager sur Twitter
            23 février 2012 à 19:37:50

            Poser cette question sur le forum Python, c'est comme demander à des catholiques quelle est la meilleure religion.

            Tout dépend de ce que tu souhaites faire. Il est vrai que Python peut être plus simple pour un débutant, mais tout est relatif.
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              23 février 2012 à 19:45:09

              Suffit de poser la même question sur le forum Java et comparer les arguments mais sans le dire parce que sinon ça va troller.
              • Partager sur Facebook
              • Partager sur Twitter
                23 février 2012 à 20:43:29

                Pour débuter la programmation, Python, sans aucune hésitation.

                Voilà quelques arguments :

                * Le langage est globalement plus expressif et moins verbeux que Java. La syntaxe est très "sucrée" : beaucoup de petits éléments très pratiques te permettent de rendre tes programmes plus rapides à écrire.
                * Le langage en lui-même est pensé pour être facile et agréable à lire : un langage de programmation, c'est fait pour être compris avant tout par des humains, et accessoirement par la machine.
                * Le typage dynamique te permet de créer des programmes et des abstractions plus facilement.
                * L'orientation multi-paradigmes ne t'oblige pas à te conformer à la "forme" POO de Java : si ton programme tient en deux petites fonctions et une variable globale, bah tu écris deux petites fonctions et une variable globale, tu t'emmerdes pas à créer des classes pour rien.
                * Le concept de programmation objet est réduit en Python au strict essentiel : l'objet. En apprenant Python avant Java, tu n'es pas noyé avec des histoires de visibilité des attributs, on ne t'impose pas une séparation factice entre "classe mère" et "interface abstraite" (en fait, pour une raison très simple : une "interface abstraite" en Python n'aurait aucun sens : ce serait du code inutile). À l'inverse, si tu apprends Java puis que tu te mets à Python, tu vas nécessairement avoir le réflexe d'écrire beaucoup de choses inutiles.
                * Python se situe globalement à un plus haut niveau d'abstraction que Java, ce qui te permet de rentrer dans la programmation plus en douceur : d'abord, tu apprends à écrire un programme qui fait ce que tu veux, et après, tu découvres comment c'est foutu sous le capot ; pas l'inverse.

                Edit : Allez, un petit troll :

                Un programme en Python peut tourner sur la JVM, par contre, personne n'a réussi ni même osé essayer compiler du Java en bytecode Python…
                • Partager sur Facebook
                • Partager sur Twitter
                Zeste de Savoir, le site qui en a dans le citron !
                  23 février 2012 à 23:13:20

                  Citation : xador35

                  Je voudrais me mettre a la programmation mais je ne sais pas quel langage apprendre entre python et java



                  Si tu as une relation d'amour avec ton clavier, que tu aimes le caresser pour taper de longues lignes de code, et que tu as un écran large haute résolution, le Java est fait pour toi.

                  http://www.siteduzero.com/forum-83-730 [...] html#r7040542
                  • Partager sur Facebook
                  • Partager sur Twitter
                    24 février 2012 à 0:37:56

                    Le python est un langage qui n'a pas besoin d'être compilé pour être exécuté alors que le java si (il me semble). Le python est un langage qui est très simple de programmation donc pour débuté, c'est assez sympa puis pour tout ce qui est algo, je pense que le python est plus adapté (enfin, je n'ai jamais trop touché le java donc affirmation peut être erronée), en revanche (chose sûr), le java est beaucoup plus lourd a l'exécution. Ceci dit, les deux n'ont pas la même utilité dans la programmation. A mon humble avis, c'est comme comparé du C et du batch.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      24 février 2012 à 1:20:15

                      Citation : Death Shadow Dark

                      Le python est un langage qui n'a pas besoin d'être compilé pour être exécuté alors que le java si (il me semble).



                      Les deux sont compilés en bytecode. La compilation de Python (sous-entendu avec l'interpréteur standard CPython) se fait par contre de façon silencieuse juste au moment d'exécuter ton script, alors qu'elle est distincte de l'exécution en Java.

                      Citation : Death Shadow Dark

                      A mon humble avis, c'est comme comparé du C et du batch.



                      Hmmm, non.
                      Les deux langages ont pas mal d'utilisations qui se recoupent, si on met de côté les applets Java (qui sont de toute façon un truc plutôt mourant). Python est plus polyvalent que Java, là où Java est plus classiquement utilisé pour du soft professionnel. Quoi qu'il en soit, la différence de niveau d'abstraction entre Python et Java n'est clairement pas aussi grande qu'entre C et batch.
                      • Partager sur Facebook
                      • Partager sur Twitter
                      Zeste de Savoir, le site qui en a dans le citron !
                        24 février 2012 à 8:39:54

                        Citation : nohar

                        Citation : Death Shadow Dark

                        Le python est un langage qui n'a pas besoin d'être compilé pour être exécuté alors que le java si (il me semble).



                        Les deux sont compilés en bytecode. La compilation de Python (sous-entendu avec l'interpréteur standard CPython) se fait par contre de façon silencieuse juste au moment d'exécuter ton script, alors qu'elle est distincte de l'exécution en Java.

                        Citation : Death Shadow Dark

                        A mon humble avis, c'est comme comparé du C et du batch.



                        Hmmm, non.
                        Les deux langages ont pas mal d'utilisations qui se recoupent, si on met de côté les applets Java (qui sont de toute façon un truc plutôt mourant). Python est plus polyvalent que Java, là où Java est plus classiquement utilisé pour du soft professionnel. Quoi qu'il en soit, la différence de niveau d'abstraction entre Python et Java n'est clairement pas aussi grande qu'entre C et batch.



                        Merci pour tes explications, pour ta deuxième explication c'est en quelque sorte ce que je voulais dire mais au final, comme tu le dit, on utilise Java en général pour des clients lourds, ce qui est moins le cas pour python.

                        Pour ta première explication, cela me montre que j'ai encore a apprendre :P. Je vais de ce pas me pencher de plus près sur le système de compilation du python/perl et autre langage dans le même genre.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          24 février 2012 à 9:31:35

                          Citation : nohar

                          À l'inverse, si tu apprends Java puis que tu te mets à Python, tu vas nécessairement avoir le réflexe d'écrire beaucoup de choses inutiles.


                          Ca je confirme :D. Je n'ose même plus poser mes codes sur ce forum à cause de ça. o_O Mais je m'améliore, j'arrive à réduire de plus en plus le nombre de ligne :p.
                          Et je rejoins l'avis de la majorité. Pour avoir développé en Java, en C, et plus récemment en Python... Il est évident que le plus simple à été d'apprendre le python : seul en 1 semaine. Evidemment ça ne veut pas dire que je connais toutes les subtilités, loin de là, je fait encore du développement bien brouillon contrairement à ce que j'écris en Java, ou même en PHP. Cependant en deux ou trois semaine j'ai pu créer des choses vraiment sympa pour mon stage. Et je pense vraiment continué par la suite à utiliser ce langage.

                          Ensuite, comme l'a dit Nohar, le typage dynamique est vraiment super agréable contrairement au typage statique de Java ou du C++.

                          Enfin, il est assez bien documenté, tout comme ses librairies, et il y a une bonne communauté derrière. Donc pour un débutant, le mieux est python je pense...
                          • Partager sur Facebook
                          • Partager sur Twitter
                            24 février 2012 à 14:15:08

                            Juste pour tempérer :

                            Citation

                            Ensuite, comme l'a dit Nohar, le typage dynamique est vraiment super agréable contrairement au typage statique de Java ou du C++.



                            Je suis évidemment d'accord. Néanmoins, le typage statique a lui aussi ses avantages. En particulier, c'est une sécurité qui permet d'éviter pas mal d'erreurs et de bugs dès la compilation du code. Mais c'est au prix d'un langage souvent plus verbeux et moins confortable.

                            Cela dit, rien n'empêche d'utiliser une ou deux astuces en Python pour bénéficier de certains bienfaits du typage statique sans s'en coltiner les défauts…
                            • Partager sur Facebook
                            • Partager sur Twitter
                            Zeste de Savoir, le site qui en a dans le citron !
                              24 février 2012 à 21:10:38

                              Je pense que la plupart des bons arguments ont déjà été donnés dans les posts précédents.

                              Pour moi qui ait découvert Python en dernier (après un certain nombre d'autres langages en 25 ans dont java), ce que j'en pense est résumé par ma signature.

                              Puisque tu es novice, la simplicité est sûrement le principal argument à retenir. Si tu veux te faire une opinion par toi même, tu peux aller sur des forums java et python et regarder les exemples de codes donnés pour des débutants sur des fonctions élémentaires (tri, boucles, ...).


                              • Partager sur Facebook
                              • Partager sur Twitter

                              débutant: python ou java?

                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                              • Editeur
                              • Markdown