oxil Posted December 6, 2010 Share Posted December 6, 2010 Bonsoir tout le monde. Je me suis très récemment posé une question: Comment fait on un programme ? En effet, j'ai très souvent envie de "programmer" des petits logiciel mais je n'ai aucune idée de la marche à suivre. Je suis étudiant en physique, et nous avons utilisé du C/C++ Cependant je serais bien incapable de me lancer dans quoi que ce soit autres que "le calcul du déplacement aléatoire d'une bille dans un potentiel". C'est le genre de programme qu'on faisait. Donc ma curiosité m'amène à me demander comment fait on un "vrai" programme. Je cherche à apprendre des notions générales, qui pourraient par la suite s'appliquer à de plus gros projet que j'aurai à l'avenir. Je vous remercie tous par avance. Si je n'ai pas été assez clair, dites le moi! =) Link to comment Share on other sites More sharing options...
foetus Posted December 6, 2010 Share Posted December 6, 2010 Cycle de développement En gros: <----- MOA ou Maîtrise d'ouvrage --------------------------> Étape 1: tu vas interroger le client pour définir les limites des besoins (fonctionnement utilisateur) Étape 2: Avec les réponses du client tu fais le cahier des charges (fonctionnement utilisateur) Étape 2 Bis: Le client peut valider le client des charges (fonctionnement utilisateur) <----- MOE ou Maîtrise d'œuvre --------------------------> Étape 3: Tu réaffines ta réflexion du fonctionnement utilisateur pour élaborer le schéma de ton programme/ projet: UML, Merise, Classes, Design Pattern, ... et différents outils (AGL). Étape 4: Tu codes avec les schémas établis à l'étape 3 et le cahier des charges Étape 5: Tu testes Étape 6: La recette: tu l'envoies au client Étape 7: La maintenance (correction des bogues) et l'évolution Après, il y a plein de subtilités: Il faut aussi définir le coût homme (budget) et le temps de réalisation (temps) l'étape 4 peut être très longue. Et les besoins du client peuvent évoluer en cours de route: c'est l'effet tunnel. Donc, par exemple, tu divises l'étape 4 en plusieurs petites étapes qui seront validées par le client. L'étape 7 il faut la prévoir dès le départ (Étape 3). Par exemple un système de patch ou de DLC n'est jamais rajouté à la fin. Pour l'étape 3, il faut un senior qui connaisse toutes les technologies utilisées pour prendre les meilleures décisions .... PS: sauf erreurs de ma part Link to comment Share on other sites More sharing options...
Lilo27 Posted December 7, 2010 Share Posted December 7, 2010 Bonjour, oxil, je te dirais qu'avant toute chose, on fait un programme pour apporter quelque chose. Il faut un but ... Un beau jour, tu dois te dire "tiens, et si un programme me permettait de faire cela". Je te déconseille de te lancer dans la programmation sans but, car tu n'auras pas la motivation nécessaire. Quel que soit le langage, la programmation est une activité difficile et longue Une fois le but fixé, tu regardes quel langage de programmation te permet d'y parvenir. Enfin, tu te lances progressivement. Commencer par des choses simples, lire des tutos, décortiquer le code écrit par d'autres pour comprendre comment ça marche. Puis petit à petit, avancer ... Link to comment Share on other sites More sharing options...
oxil Posted December 7, 2010 Author Share Posted December 7, 2010 Merci bien pour vos réponses =) Je vais essayer de mettre ça en pratique et commencer par de petites choses Link to comment Share on other sites More sharing options...
Charles.w Posted December 7, 2010 Share Posted December 7, 2010 m00t, tu oublies le rôle essentiel des consultants Après, la méthode que m00t décrit est la méthode "classique", rigide et souvent inadaptée...les méthodes dites agiles consistant à livrer souvent, lorsqu'elles sont correctement appliquées (ce qui est très rarement le cas, car elle nécessite de bons développeurs, de bons architectes, de bons chefs de projets, et un client ouvert à ces pratiques) permettent de mieux coller aux exigences du client... Il y a aussi les méthodes en entonnoir (qui peuvent très bien coller avec les méthodes agiles d'ailleurs), qui sont souvent utilisées pour tout ce qui touche au design des interfaces... Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.