Aller au contenu

Projet


AColonel

Messages recommandés

Bonsoir,

Je suis nouveau dans la programmation notamment en C. Je ne suis pas très bon vu que je débute mais j'aimerais savoir si il était possible de rejoindre un projet qui a pour but d'offrir aux gens des logiciels developpé par des particuliers et tout cela gratuitement. J'ai commencé le C sur windows car je n'avais que ça sous la main a ce moment la et j'aimerais vraiment codé pour mon pc de maison qui est sur Fedora.

J'espere avoir été assez claire dans mes idées.

Bonne soirée à toutes et tous!

Lien vers le commentaire
Partager sur d’autres sites

Hello,

Au contraire, je pense que débuter avec un projet a toi c'est le mieux a faire.

Si tu n'as aucune connaissances, tu ne risque pas de trouver de projets qui ont besoin de toi.

Si tu débutes, tu as besoin de t'entrainer. Le mieux pour s'entrainer c'est de faire des mini projets tout con. Je parle pas d'un gros projet (genre : je veux faire un navigateur mieux que firefox !).

Mais rien qu'un projet a la noix qui soit sympa a tester. (parce que si deja tu galere a coder et que le test que tu dois faire est un peu lourd, ca va te démotiver. Si le résultat du logiciel t'amuses ou te fait plaisir, ca sera plus facile)

Par exemple, la j'aide un ami qui débute en C++, son TP de cours consiste à gérer des points :

Tu créé un point a la coordonnée x, y, tu le déplaces de tant, tu calcules son symetrique par rapport a un point posé en u,v.

C'est tout con, mais pour débuter, c sympa. Ca permet de s'habituer au langage, au compilateur, aux erreurs de débutants.

Apres on passe a la vitesse supérieur avec des projets un peu plus gros et on evolue. Il arrive un moment ou on se dit, ca y'est je peux aider un autre projet :)

Autre moyen d'augmenter ses compétences apres avoir passé la période "je connais la syntaxe", c'est utiliser des bibliotheques de logiciel qui nous intéressent. Ca peut etre des bibliotheques de fenetrage et d'IHM (Qt 4), de reseau (GNE), de 3D (OpenGL), de moteur 3D (Ogre, OpenSceneGraph) ou encore de jeu (Delta3D).

A ce moment la, regarde les logiciels de ta Fedora, et si y'en a que t'as envie d'améliorer ou de participer, contacte l'equipe pour voir si ils ont besoin d'aide :)

Lien vers le commentaire
Partager sur d’autres sites

Si tu veux vraiment progresser, il va surtout falloir que tu apprenes les fondamentaux en programmation !

Je ne sais pas où tu en es, mais il a déjà besoin de maitriser tout ce qui touche aux variables, aux alternatives, aux boucles et aux entrées sorties :

- choix d'un nombre caché par l'ordinateur (random) et le faire deviner à l'utilisateur (scanf si tu es en C pour la saisie et printf pour lui dire < ou > ou =);

- tu as aussi tout ce qui est affichage ascii pour comprendre les boucles : affichage de rectangle plein, de rectangle vide, de triangle d'étoiles (rectangle, isocèle, par le haut pas le bas, etc.)

- affichage des tables de multiplications.

Après tu as toutes les notions de fonctions et procédures (procédures qui n'existent pas vraiment en C...) avec le passage de paramètres par valeur et par pointeur (et par référence si tu es sur d'autres langages), tu as aussi tout ce qui est tableau, structure, type énuméré et définition de tes propres types (casse gueule en C...) :

- procédure d'affichage et de saisie de tels types et de telles structures ;

- recherche d'un min, d'un max dans un tableau ;

- comprendre les différents tris (tri par baquets, tri à bulles, tri par insertions, tri rapide, etc.)

- jouer avec des calcules sur des dates : représentation dans une structure, date plus grande entre deux, différence et addition de date, jour de la semaine (par exemple avec la formule de Zeller), etc.

Dans les manières de programmer nous venons de parler de tout ce qui est impératif, il y a aussi les manières récurssives de voir des problèmes...

Dans tous les cas, après il y a les structures de données de bases : les listes, les piles, les files -> comprendre les différences, les avantages et les différentes manières de les implanter. Il a aussi tout ce qui est arbres (binaires, équilibré, n-aires) -> parcours préfixe, infixe, suffixe, tris, tas. Après les graphes -> parcours en largeur, parcours en profondeur etc. : (ex. d'exercices : )

- programmation de listes : insertion, suppression, recherche, tri, etc.

- arbres de recherches : création d'un dico, d'une calculatrice simple, d'une calculatrice "intéligente" (pseudo formelle);

- arbres n-aires : recherche d'un plus long complément pour une suite de lettre (à la shell) ;

- graphes : représentation, parcours, recherche de cycles, recherche des couts minimaux, recherche du plus court chemin, résolution du voyageur de commerce, etc.

Après tout ce qui est algo, il y a aussi les aspects objets qui peuvent être vu... Il y a aussi tout ce qui est connaissance réseau sur les protocoles de bases (heu oui avant d'ouvrir un socket, vaut mieux connaitre les avantages et les inconvéniants entre tcp et udp par exemple !), inforgraphie etc... et ne pas oublié qu'une fois compris, il existe bcq de bibliothèques à explorer pour manipuler tout ca.

Après il y a aussi tout ce qui est analyse d'un problème à informatiser : Merise, UML, Macao etc.

Enfin voilà en gros les bases de la programmation (et encore j'en oublie !)

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...