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

Langages de programmation Discussion :

Apprendre la programmation


Sujet :

Langages de programmation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    salarié
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut Apprendre la programmation
    Bonjour, Bonsoir

    Je viens sur ce forum pour avoir quelques conseils sur la programmation, les langages etc.
    Alors voilà , j'aimerai me lancer dans son la création d'un jeu vidéo mais je ne sais pas programmer (magnifique^^).
    Inutile de me dire que ça va être difficile etc , je le sais je pars de 0.
    Je sais également que ça peut me prendre plusieurs années etc.
    Ma question est , connaissez-vous des livres pour apprendre la programmation,les langages de programmation pour débuter,des livres complets bref le nécessaire pour apprendre?
    Merci à ceux qui prendront le temps de me renseigner .

  2. #2
    Expert confirmé
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 858
    Par défaut
    Citation Envoyé par aymeric835 Voir le message
    Inutile de me dire que ça va être difficile etc , je le sais je pars de 0.
    Tu te trompes c'est impossible à moins que tu as un temps libre très conséquent

    Parce que, il n'y a pas que l'aspect programmation (*)
    Il faut :
    • avoir un game design
    • faire les assets - ressources (images, modèles, sons, ...) (<- peut être on peut y ajouter le game level)
    • connaitre la physique/ les mathématiques : (*), détection des collisions, gestion de la profondeur, ...
    • les animations. Même en 2D, les sprites ce n'est pas évident.


    Sans parler de choses plus terre à terre comme une machine à états (state machine)/ workflow (**)
    Édit: Un truc que tu ne dis pas et qu'on peut rajouter, le réseau (même un truc simple comme pousser ses scores sur un petit serveur)


    (*) -> prends une bibliothèque/ framework comme Unity (C#), Pygame (python) et évite autant que faire se peut le langage C/ C++.

    Ainsi, lorsque tu seras bien dégouté de la masse de travail à abattre , tu pourras passer à l'aspect programmation
    • tous les algos 2D/ 3D, les algos de lumière, ... qui sont nécessaire pour l'affichage
    • la gestion de la mémoire
    • la gestion des threads (<- avec des bassins (pools))
    • les structures de données efficaces
    • le chargement/ streaming des ressources
    • l'architecture: ECS (<- Entity–component–system) ou data driven
    • ...


    (**) -> Parce qu'un jeu, c'est aussi une application : l'écran de chargement au démarrage, l'écran d'accueil, l'écran des configurations, des écrans pour des sélections diverses, des écrans pour l'histoire, un écran de contacts ...

  3. #3
    Candidat au Club
    Homme Profil pro
    salarié
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut
    Ça ne me gêne pas et ça ne me décourage pas, il faut bien commencer par apprendre donc je me doute que ce sera long. Après si je commence pas par quelque chose je faire jamais rien . C'est pour ça que dans mon premier poste je demande si vous connaissez des livres pour apprendre la programmation puis poursuivre petit à petit .

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Salut,

    Pour atténuer la vision "effrayante" et "pessimiste" de @foetus qui décrit une vision ambitieuse des jeux vidéos, je dirais qu'il faut du temps et de la persévance, mais surtout commencer petit, puis progresser petit à petit, par les forums, les tutoriels sur le web, en regardant les sources des jeux open source, etc.
    Si tu as la passion, c'est le principal. Le reste ça s'aquière et ça se bosse.

    1. Pour le gamedesign, il existe de nombreux jeux, vidéo ou pas, dont le scénario est déjà établi et dont le gameplay est simplissime (le jeu du pendu par exemple, ou un pong ou un space invaders si on veut parler d'un jeu graphique avec animation). Personnelement, lorsque j'ai eu mon premier ordinateur, je n'avais jamais programmé (juste recopié des programmes en basic à la main dans des cahiers (!)), il n'y avait pas Internet, mon budget livre était très restreint, et je ne connaissais personne qui avait un ordinateur ni même avait des notions de programmation (mais il y avait certes Micro7 ou l'Ordianteur Individuel...) . Mon premier programme : un jeu d'aventure type livre-jeu en mode texte adapté d'un Jeux & Stratégie. Minimal, mais suffisant pour commencer. Ensuite j'ai ajouté du son, des images, des fioritures, etc (Partir d'une base simple et l'améliorer est une bonne base de progression, même si parfois il faut savoir repartir de zéro pour repartir d'une base plus solide). Puis je suis passé à un truc un peu plus évolué, avec des graphismes, du son, etc.
    2. Pour les assets, on peut "emprunter" des choses sur Internet. Et en commençant par du mode texte, les images, le son, les modèles 3D, animations, cinématiques et autres, on s'en moque
    3. Pour les connaissances mathémétiques, commencer par la base. Avec un peu d'arithmétique et de géométrie de base, à la rigueur un peu de trigonométrie, (et Thalès), on peut déjà faire des petits jeux animés déjà un peu évolués. En revanche, ça aide pas mal d'être un minimum doué pour les mathématiques. Je parle pas d'avoir la médaille Fields, ni même une licence, mais si tu es une bille en math (par exemple, si les termes évoqués si avant n'ont aucun sens pour toi), ça risque d'être difficile pour pas mal de choses.
    4. Bien sûr il existe des "assistants" pour faire des jeux, et certains peuvent mettre en oeuvre un peu de programmation (genre script en lua, qui peut être un bon début pour apprendre). Il existe même des jeux qui permettent d'apprendre des bases algorithmiques en jouant (genre Human Resource Machine par exemple).
    5. En ce qui concerne les patterns, même si je suis tenté de plusser l'évocation de l'ECS, amha, ça pourra attendre (comme pour toutes les techniques avancées (...gameloop...tile mapping...quadtree...quaternions...génération procédurale...etc...) : ne t'inquiète pas de faire au début des programmes spaguetti, avec des modèles bancals, avec des performances abominables, avec des fuites de mémoires dans tous les sens


    Complément : (plutôt dans l'esprit du post de @foetus, mais faut pas se laisser submerger pour autant ) : https://jeux.developpez.com/tutoriels/jeux-video/
    Et puis il y a tous les autres tutoriels de Developpez !
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Expert confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 810
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 810
    Par défaut
    Je plussoie entièrement Joel.Drigo : commencer petit. Ne pas s'imaginer refaire GTAV en mieux. Non, un petit pong, un petit lemonade, voire un 2048(j'ai fait un de chaque, et pour le lemonade, j'avais 13 ans), ça permet de faire des choses rigolotes avec un effort, disons, mesuré. Mais c'est quand même du boulot. Et parfois, on est déçu : mon pong, que j'avais imaginé révolutionnaire grâce à un comportement avançé et réaliste de la balle, était tout mou et ennuyeux. Tout pourri, quoi. Mais c'est pas grave, j'ai beaucoup appris sur le projet. Le lemonade était fonctionnel, quoique quelconque. Le 2048, parfois, je le relance - il est moche, mais il fait le boulot.

    Je sais que je serais capable de faire plus gros - si j'arrivais à dégager du temps. Beaucoup de temps. Mais je le sais parceque j'ai commencé petit, histoire de ne pas me décourager. J'ai aussi un ou deux autres projets qui sont tombés à l'eau. Et c'est pas grave. Savoir programmer m'a aidé à trouver du boulot, dans un domaine qui n'a rien à voir avec le jeu. Donc c'est formidable d'être motivé.

    Après, il faut choisir une technique, et pas mal progresser dedans avant d'aller ailleurs. Et chacun ira de son propre conseil sur le meilleur moyen. Tu auras la voie du Python(pour les gens qui aiment le code propre), celle du C(pour les anciens qui aiment la performance), celle du jeu sur navigateur, celle du jeu fait avec un moteur grand public(qui étaient encore balbutiants il y a 5 ans, mais maintenant, ça permet vraiment de faire des trucs chouettes). A toi de voir.

  6. #6
    Candidat au Club
    Homme Profil pro
    salarié
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut
    Merci à vous deux pour les informations , je compte apprendre le java , j'ai trouvé une chaîne YouTube qui apprend les bases du java, les tutos sont courts et clairs . Puis si je trouve des tutos aussi propres sur d'autres langages pourquoi pas voir.
    Je choisis le java pour créer sur Android , ça va mettre du temps mais ça me plaît d'apprendre
    Par contre vous n'avez pas répondu à ma question , connaissez-vous des bons livres pour apprendre la programmation?Ça m'aiderai , parce que sur internet c'est pas très pratique^^

  7. #7
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Je n'ai pas répondu au sujet de livres parce que ça fait un bail que je n'en utilise plus et te donner les références de livres d'il y a 15 ans n'a pas grand intérêt. Avec Internet, les livres sur la programmation, c'est un peu dépassé, et surtout, vu que ça bouge beaucoup et très vite, ils deviennent très vite obsolètes. On peut aussi dire ça des tutoriels sur le web, mais s'il y en a qui sont obsolètes, il y en a régulièrement des nouveaux qui apparaissent.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

Discussions similaires

  1. Meilleur livre pour apprendre à programmer en Python
    Par Guigui_ dans le forum Général Python
    Réponses: 56
    Dernier message: 13/02/2016, 00h31
  2. Réponses: 58
    Dernier message: 11/02/2012, 10h03
  3. [POO] apprendre la programmation orientée objet
    Par Invité dans le forum Langage
    Réponses: 5
    Dernier message: 10/12/2005, 11h33
  4. Réponses: 4
    Dernier message: 24/10/2005, 08h36
  5. je veux apprendre la programmation quel language choisir??
    Par existance dans le forum Débuter
    Réponses: 26
    Dernier message: 06/08/2002, 05h32

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