Partage
  • Partager sur Facebook
  • Partager sur Twitter

utilité d'apprendre le Python

quelques questions

Sujet résolu
    21 janvier 2012 à 11:19:37

    Hello ! :)

    Je me rend compte que le c++ est trop compliqué pour moi, je n'ai plus vraiment l'envie de continuer, du coup j'me suis dit quer j'allais apprendre le python qui, d'après ce que j'ai compris, est le même que le c++ mais en plus simple donc voici différentes questions..

    1) peut-on faire le même en python qu'en c++ (jeux vidéos, programmes,etc...)

    2) Le python est-il aussi répandu que le c++ (car je vois souvent que les gens cherches des programmeur en c/c++ et non python...)

    3) Le python est-il compatible avec la 3D (blender) ( c'est à dire pour créer un MMO par exemple, peut-on le programmer en python et faire les graphismes avec blender)

    4) avec quel autres languages le python est-il compatible?

    Merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
      21 janvier 2012 à 13:27:14

      Comme il semble que ce soit ton premier langage, ne te pose pas trop de questions, et essaye!

      Ce ne sera pas du temps perdu dans le pire des cas. ;)

      edit: je ne tient pas compte de tes essais avortés en php et c++, ça ne compte pas! ;)
      Je ne sais pas ce qui t'a bloqué dans le tuto C++. Mais il y a de fortes chances pour que la syntaxe simple de python te facilite la tâche.
      Encore une fois teste le quelques mois.
      • Partager sur Facebook
      • Partager sur Twitter
      Zeste de Savoir, le site qui en a dans le citron !
        21 janvier 2012 à 13:37:40

        Salut.

        Citation : Tatoum

        python qui, d'après ce que j'ai compris, est le même que le c++ mais en plus simple



        Si c'était vraiment le cas, alors C++ n'aurait absolument plus aucun intérêt et plus personne ne s'embêterait à l'utiliser, tu crois pas ?

        Python est un langage de beaucoup plus haut niveau que C++. Cela signifie qu'en Python, beaucoup d'aspects sont gérés pour toi (la gestion de la mémoire, la représentation des données dans la mémoire, etc.). Cela te permet de penser tes programmes en faisant abstraction de ce genre de détails, et donc, d'obtenir plus rapidement un programme qui fait quelque-chose qu'en C++. Cela a de grands avantages, comme celui d'être plus gratifiant à utiliser (moins d'efforts pour plus de résultats), mais aussi des inconvénients, comme celui de ne pas pouvoir optimiser tes programmes autant qu'en C++. Pour faire simple : en Python, les programmes sont beaucoup plus rapides et faciles à coder, mais plus lents quand ils s'exécutent (je reviendrai là-dessus plus loin).

        Fondamentalement, en revanche, les deux langages sont quand même proches parce qu'ils implémentent les mêmes styles (le mot exact est paradigmes) de programmation : ils sont tous les deux impératifs et orientés objet.

        Citation : Tatoum

        1) peut-on faire le même en python qu'en c++ (jeux vidéos, programmes,etc...)



        Pour la plupart des programmes que tu puisses imaginer, oui. Tu peux les faire aussi bien en Python qu'en C++, et ce plus facilement, y compris de petits jeux vidéo. Par contre, pour un gros jeu vidéo en 3D, Python sera assez vite limité du point de vue des performances même s'il est possible, dans une application en Python, d'y intégrer des modules et des parties de code réalisées dans un autre langage (C ou C++, typiquement) : ainsi, lorsque les performances sont vraiment un problème dans un programme en Python (ce qui est somme toute assez rare, quand même), les parties critiques de ce programme sont souvent codées en C ou C++, alors que le reste (l'interface utilisateur, le réseau, etc.) est fait en Python. C'est un moyen de tirer parti des atouts de chaque langage/technologie.

        Néanmoins, ce genre de gros jeux est hors de portée d'un débutant, et je t'avouerais même hors de ma portée, alors que je développe depuis maintenant 10 ans, et que c'est mon métier depuis plusieurs années, tout simplement parce que ce n'est pas ma spécialité et que de toute façon ils demandent des mois et des mois de travail à des équipes de développeurs.

        Citation : Tatoum


        2) Le python est-il aussi répandu que le c++ (car je vois souvent que les gens cherches des programmeur en c/c++ et non python...)



        Python est souvent cherché indirectement par les employeurs. En fait, ceux-ci demandent souvent aux candidats qu'ils recrutent de connaître au moins un langage principal robuste (C/C++/Java…) et un langage "de script" (Python/Perl/bash/batch/ruby…), de façon à obtenir quelqu'un qui sera efficace pour créer des programmes rapidement à très haut niveau (ce qui peut être "secondaire") ET pour développer le code métier de la boîte. Cela dit, étant donné que tu débutes, cette question, tu peux me faire confiance, n'a absolument AUCUNE importance en ce qui te concerne.

        Si tu veux faire du développement ton métier plus tard, alors tu auras largement le temps d'apprendre d'autres langages dans une école d'informatique et il serait stupide de choisir son premier langage sur le critère de la popularité en entreprise. On ne pratique pas du tout la programmation de la même façon quand c'est au boulot ou pour le plaisir, et personnellement, je n'utilise pas du tout les mêmes langages pour ça.

        Citation : Tatoum


        3) Le python est-il compatible avec la 3D (blender)



        Ta question est confuse. Tu peux faire des scripts en Python qui seront exécutés par blender, mais tu peux aussi importer des modèles 3D réalisés avec blender dans OpenGL, et comme tu peux utiliser OpenGL en Python, alors oui, dans l'absolu, c'est compatible.

        Citation : Tatoum

        4) avec quel autres languages le python est-il compatible?



        Tu peux écrire des modules pour un programme Python en C ou en C++. Tu peux intégrer un interpréteur python dans un programme en C, C++ ou Java.
        Et sur le réseau, évidemment, un client écrit en Python peut communiquer avec un serveur écrit dans juste n'importe quel autre langage (et vice-versa).
        Dans un programme Python tu pourras aussi utiliser SQL pour gérer des bases de données, lire ou générer du HTML et du XML, lire ou générer du JSON (donc tu peux interagir avec Javascript).

        Je pense avoir fait à peu près le tour, j'en oublie sûrement.
        • Partager sur Facebook
        • Partager sur Twitter
        Zeste de Savoir, le site qui en a dans le citron !
          21 janvier 2012 à 16:45:52

          Citation : Tatoum

          1) peut-on faire le même en python qu'en c++ (jeux vidéos, programmes,etc...)


          Un langage de programmation qui permet pas de faire des programmes, ce serait quand même vachement handicapant.
          • Partager sur Facebook
          • Partager sur Twitter

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

            21 janvier 2012 à 16:49:43

            Citation : Tatoum


            Je me rend compte que le c++ est trop compliqué pour moi, je n'ai plus vraiment l'envie de continuer, du coup j'me suis dit quer j'allais apprendre le python qui, d'après ce que j'ai compris, est le même que le c++ mais en plus simple donc voici différentes questions.




            Il est extrêmement difficile de te répondre de façon pertinente vu qu'on ne sait rien ou très peu de ton parcours, de tes ambitions et de tes objectifs. Je vais t'épargner mes arguments ou plutôt mon point de vue, placé en secret ci-dessous, mais j'en viens à la conclusion suivante :

            Tu peux peut-être envisager de te tourner vers la programmation web. Tu as les bases en html/css, il te faut maintenant un langage pour les programmer : javascript. Avec html5, les possibilités sont immenses et ont à mon avis beaucoup plus d'avenir que les applis Python. Il est aujourd'hui possible de faire des applications web-based très ludiques et avec des résultats assez rapides sans avoir à subir un apprentissage aussi long qu'avec les langages classiques.


            La quasi-totalité des langages de programmation sont des domaines de connaissance qui réclament un gros effort de rigueur et une certaine patience. Une certaine classe de programmeurs en herbe a besoin de résultats tangibles assez rapidement et sans trop souffrir. Dans la hiérarchie des langages, C++, C et Java vont faire partie de ceux qui ne satisferont pas ce besoin. Python est certes moins difficile mais il contient son lot de difficulté pour le programmeur débutant. En outre, Python possède une grosse limitation : c'est que c'est un petit langage dont le positionnement n'est pas très bien défini. Le langage a un gros potentiel mais c'est en même temps un inconvénient car son eco-système est peu lisible. D'autre part, Python fait partie des langages généralistes, purs et durs, à l'ancienne. Mais, le paysage change et je me demande si la programmation web ne sera pas la programmation de demain : on programme dans le navigateur qui devient un réceptacle d'applications. L'avantage énorme c'est ubiquité du web-base. Bien sûr, les applications en C, C++, Java ne vont pas disparaître mais elle seront plus spécifiques et plus lourdes. Depuis pas mal de temps, on sent le vent venir. Un des symptomes les plus net est l'évolution de Qt dans sa version 5 avec la promotion de QML et de javascript pour programmer des interfaces graphiques. Un autre signe : le rôle très important que le tandem html5-javascript va jouer dans Windows 8 et le vent de panique qui s'en est suivi juste après la démo de présentation de Windows 8. Bien sûr, tout ceci rest à confirmer, les retournements sont assez fréquents dans ce domaine où beaucoup de facteurs peuvent intervenir.


            • Partager sur Facebook
            • Partager sur Twitter
              21 janvier 2012 à 18:00:48

              D'abord, merci pour toute vos réponses.

              Je me rend compte qu'en faite, le plus dure est de savoir par ou commencer :x

              Si j'ai bien compris Python est certe plus simple que le c++ mais il comporte aussi quelques inconvégnants.
              Pour ce qui est de m'orienter vers la programmation Web, j'y ai pensé aussi et je me dit que si je veux,par la suite, me lancer dans un projet, je devrais commencer par ça.

              D'après tout ce que j'ai pu lire je pense que je vais apprendre le PHP /MySQL dans un premier temps et de là, je pourrais me faire une idée de ce que je voudrais faire, du temps que ça va me prendre etc..

              Je pense quand même choisir le c++ plus tard, je dois m'y résoudre, il faudra que je me concentre pour bien comprendre ce qu'il y est expliqué (je n'en suis qu'au paragraphe "découper son programme en fonctions")

              ça n'interresse surement personne mais je vais quand même mettre ce que je pense faire, ainsi si vous avez un avis autre, je pourrais le lire et y réfléchir:

              je vais donc apprendre dans l'ordre:
              HTML5 /CSS3 (fait)
              PHP / MySQL
              C++ ou python (je sais pas encore :x)

              j'aurais bien une ou deux autres questions à poser (je sais je suis chiant :P):

              Le javascript est-il optionnel dans un site web à partir du moment ou il est dynamique (codé en php) ?
              Est-ce possible de créer un programme complet et design seulement en c++ ? :x

              Je vous remercie encore !
              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                21 janvier 2012 à 18:06:48

                Citation

                Le javascript est-il optionnel dans un site web à partir du moment ou il est dynamique (codé en php) ?
                Est-ce possible de créer un programme complet et design seulement en c++ ? :x



                Tu en déduiras donc que ces questions n'auront rien à faire sur le forum python. ;)

                • Partager sur Facebook
                • Partager sur Twitter
                  21 janvier 2012 à 18:29:15

                  Citation : Tatoum


                  Je me rend compte qu'en faite, le plus dure est de savoir par ou commencer :x




                  Le plus dur est de savoir ce qu'on veut ;)


                  Citation : Tatoum


                  HTML5 /CSS3 (fait)
                  PHP / MySQL
                  C++ ou python (je sais pas encore :x)




                  Tu fais comme tu veux et je pense qu'il est bien d'essayer des langages, surtout quand on est jeune et qu'on a le droit de se tromper. Mais je trouve ton projet assez peu cohérent. Les deux premières lignes Ok, mais ensuite choisr entre C++ et Python, c'est une tout autre direction (même si certains sur le forum ont commencé par du PHP, il me semble avoir lu que c'était le cas de bluestorm).


                  Tu as eu du mal avec C++. Je pense que Python peut te permettre d'amortir le choc de C++ et te préparant vraiment bien le terrain, en particulier la POO en Python t'aidera énormément. Par contre, Python peut accompagner avantageusement la connaissance d'un ou plusieurs langages web. Disons que PHP est côté serveur, javascript côté client et Python côté Desktop. Par exemple, Python d'excellentes lib pour parser du html, du xml, pour faire des cgi. Tu peux même te passer de PHP en utilisant Django (qui est du Python). Par contre, vraiment dommage qu'il n'existe pas la possibilité que les navigateurs supportent des scripts en Python, selon certains, Python ne serait pas en mesure de le remplacer.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    21 janvier 2012 à 18:38:21

                    Comme te l'a dit candide, le cadre et la portée de Python sont assez difficiles à définir, parce que le langage est polyvalent. Ce langage est aussi bien utilisé comme langage pur et dur (comme C ou C++) que comme langage de script (comme Perl ou bash) que comme langage de développement web (comme PHP).

                    Ce qu'il vient de te dire aussi, c'est que s'il peut être utilisé en lieu et place de PHP il ne peut en revanche pas remplacer JavaScript, mais ça c'est un point de détail.

                    Du reste, loin de moi l'idée de vouloir influencer ton projet, mais de la même manière, si tu veux faire des programmes desktop, je crois aussi qu'apprendre Python avant C++ te sera plus profitable (moins pénible).
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Zeste de Savoir, le site qui en a dans le citron !
                      21 janvier 2012 à 18:41:13

                      Citation : Tatoum

                      je vais donc apprendre dans l'ordre:
                      HTML5 /CSS3 (fait)
                      PHP / MySQL
                      C++ ou python (je sais pas encore :x)


                      Non mais il y a quand même un truc à savoir : pour apprendre à programmer il faut programmer.

                      Peu importe le langage, peu importe d'abandonner un pour passer à l'autre, de tester 5, 10, 15 langage avant de trouver celui qui te convient.

                      Faire des plans comme ça est inutile, car c'est du tellement long terme que tu auras probablement changé d'avis/de plans d'ici là.

                      Tu es tenté par Python ? Prends un tuto, suis le. T'en as marre ? Teste scheme. C'est toujours pas bon ? Alors lua, io, smalltalk, C, Haskell...
                      • Partager sur Facebook
                      • Partager sur Twitter

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

                      Anonyme
                        21 janvier 2012 à 18:47:46

                        Citation

                        Tu es tenté par Python ? Prends un tuto, suis le. T'en as marre ? Teste scheme. C'est toujours pas bon ? Alors lua, io, smalltalk, C, Haskell...



                        C'est tellement vrai!

                        Toujours la même sérénade...
                        • Partager sur Facebook
                        • Partager sur Twitter
                          21 janvier 2012 à 19:21:44

                          c'est bien ça le problème, c'est que je n'aime pas faire les choses à moitié, je n'aime pas faire quelque chose pour après me dire que je laisse tomber :/

                          Quoi qu'il en soit,je suis contant que vous ayez répondu à toute mes questions avec autant de détails !

                          je marque le sujet en résolu ! :)
                          • Partager sur Facebook
                          • Partager sur Twitter
                            23 janvier 2012 à 18:01:15

                            Citation : nohar

                            Comme te l'a dit candide, le cadre et la portée de Python sont assez difficiles à définir, parce que le langage est polyvalent. Ce langage est aussi bien utilisé comme langage pur et dur (comme C ou C++) que comme langage de script (comme Perl ou bash) que comme langage de développement web (comme PHP).



                            C'est justement le fait que python est un "un petit langage dont le positionnement n'est pas très bien défini" qui me plait dans ce langage: programmation scientifique, web, scripts système, applications GUI, etc. Il est possible d'apprendre pas mal de choses avec Python, et de les transposer dans son domaine de prédilection, à moins que ce dernier ne soit très très spécifique.

                            Avec mes meilleures salutations

                            Thierry
                            • Partager sur Facebook
                            • Partager sur Twitter

                            utilité d'apprendre le Python

                            × 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