Apprendre le C # et coincé dans une ornière [fermé]

12

J'apprends C # /. NET 4.0 depuis environ 2/3 mois, c'est mon premier langage de programmation sérieux (j'ai déjà examiné PHP, HTML, CSS, JavaScript et VBA mais jamais en profondeur) et je suis commence à devenir un peu coincé:

  • J'ai atteint un plafond avec mon apprentissage en raison de l'absence d'un «grand» projet ...
  • Le manque de travail sur des projets complexes me donne des doutes sur mes capacités ...

Il y a 2 semaines, j'ai eu une entrevue pour un emploi de programmeur junior et j'ai réussi à répondre à la plupart des questions auxquelles j'ai répondu, mais je n'ai toujours pas obtenu le poste en raison du manque d'expérience pratique, je ne sais pas quoi faire!

Comme je l'ai déjà dit, je ne voudrais pas contribuer à un projet Open Source, mais je ne sais pas par où commencer, je suppose que les «gros» projets ne veulent que de bons codeurs :(

Existe-t-il une forme de test de programmation en ligne qui me montrera à quel point je suis «bon» (ou «mauvais») en ce moment? :)

Merci pour toute aide.

JuniorDeveloper1208
la source

Réponses:

8

Je voudrais vous demander ce qui vous intéresse (loisirs, etc.) et voir ensuite quels projets plus importants vous pouvez proposer qui sont liés à cela. Vous pouvez également consulter Project Euler si vous recherchez simplement des exercices, mais je pense que les projets qui vous intéressent personnellement sont meilleurs.

FrustratedWithFormsDesigner
la source
C'est le problème, je pense que je ne suis pas tout à fait sûr où ma zone préférée est dans le codage. En règle générale, j'aime les voitures / vélos et les émissions de télévision / films, mais beaucoup de projets autour de ceux-ci ont déjà été réalisés. J'ai aussi peur d'essayer quelque chose de très complexe. La chose la plus compliquée que j'ai faite est une chose humaine / monstre dans XNA où les humains s'enfuient et les monstres courent vers, mais c'est tout!
JuniorDeveloper1208
4
Qui se soucie si cela a été fait? Lorsque vous apprenez, il est parfaitement normal de réinventer la roue. J'ai lentement construit un programme de galerie de photos avec une base de données pour stocker des tags et toutes sortes d'autres métadonnées sur les photos. Bien sûr, cela a été fait, mais je voulais rafraîchir mon C # et cela ressemblait à un projet amusant. Ce n'est pas fait (il ne le sera peut-être jamais) et maintenant je pense à reconstruire l'interface utilisateur pour m'apprendre WPF. C'est purement un projet d'apprentissage et si jamais je finis et publie quelque chose, je serai étonné! Mais j'ai beaucoup appris !!
FrustratedWithFormsDesigner
1
@toleero: L'humain / monstre dans XNA semble un peu amusant. La prochaine chose, ajouter des armes? Cela nécessitera un remaniement majeur, mais cela en vaudra la peine. Ou peut-être commencer par différents types de monstres tels que rapide / lent, faible / fort, grand / petit ...
FrustratedWithFormsDesigner
1
@toleero: C'est en fait un très bon projet de départ, il y a beaucoup, beaucoup de directions
FrustratedWithFormsDesigner
1
@Frustré, @toleero: Exactement. J'ai quelques projets que je pense toujours à de nouvelles fonctionnalités à ajouter. Ce qui se passe est: vous ajoutez une petite fonctionnalité et pensez à 5 autres. Au fur et à mesure que vous les ajoutez, vos idées s'améliorent, car vos compétences pour les mettre en œuvre s'améliorent et vous réfléchissez au-delà de la façon de les mettre en œuvre. Dans un an ou deux, vous regarderez en arrière et penserez à la simplicité de vos premiers projets! Gardez à l'esprit que vous ne pouvez voir que le chemin parcouru lorsque vous y arrivez.
Michael K
2

L'intérêt de l'open source est que la source est ouverte, et vous êtes libre de faire presque tout ce que vous voulez avec elle, bien autre que de revendiquer la vôtre, et de la distribuer sans la source.

Trouvez un projet que vous aimez et utilisez, mais vous pensez qu'il pourrait y avoir des améliorations.

Obtenez la dernière branche stable, téléchargez-la.

Apportez les modifications qui, selon vous, seraient bonnes pour le projet.

Montrez à certains membres de la communauté vos progrès et vos améliorations.

S'ils l'aiment, ils peuvent l'inclure dans la branche principale.

S'ils ne l'aiment pas, mais vous pensez que c'est vraiment bon. Forkez le projet, créez votre propre page avec votre source, assurez-vous de lire leur licence pour que tout soit correct.

AttackingHobo
la source
1

Le seul test qui a de la valeur est l'envoi d'un logiciel utile, utilisable et robuste. Tout le reste est un jeu-questionnaire.

Je vous suggère de visiter CodePlex pour voir pas mal de projets open source qui utilisent C # et .NET. Quelque chose là-bas attirera votre attention en tant que programme ou bibliothèque que vous utiliseriez réellement. Essayez-le et notez les choses que vous voudriez changer pour l'améliorer.

Vous n'avez pas à vous soucier d'être accepté dans l'équipe de développement, car vous pouvez simplement extraire la base de code et y apporter vos propres modifications. Si vous pensez que vous avez trouvé quelque chose de vraiment précieux, contactez l'équipe de développement.

Adam Crossland
la source
Mon PM soutiendrait qu'une date limite remplace l'utilité / durabilité n'importe quel jour de la semaine, hé.
Brad Christie
@Brad - J'entends la même chose tous les mardis à 14 heures
Adam Crossland
1

Existe-t-il une forme de test de programmation en ligne qui me montrera à quel point je suis «bon» (ou «mauvais») en ce moment?

Que les résultats de ces tests sont largement hors de propos. Ce qui compte, c'est que vous puissiez accomplir des choses dans la langue en question. Ce que vous ne pouvez évidemment pas encore.

Voici ma suggestion. Vous lisez certainement un livre sur C #. La plupart des bons livres ont un exemple pratique que vous faites à travers le livre qui le développe et le rend plus complexe avec l'avancée du chapitre. Comprenez cet exemple puis programmez une petite chose simple pour vous-même en prêtant attention aux meilleures pratiques suggérées. Une fois cela fait, vous aurez une certaine confiance en vos capacités et aurez également quelque chose à montrer.

Commencez à faire des choses.


la source
Merci, j'ai fait quelques choses (certaines applications WinForms, un jeu de bac à sable XNA et j'écris un Google Stock Tracker dans WPF) mais j'ai du mal à m'en tenir à un projet ...
JuniorDeveloper1208
1

Existe-t-il une forme de test de programmation en ligne qui me montrera à quel point je suis «bon» (ou «mauvais») en ce moment? :)

Aucun test ne pourra vous le montrer (même si des managers / RH croient fermement le contraire ;-). Cela ne se montre que dans la vraie vie, en travaillant sur de vrais projets, sur une période plus longue.

Comme je l'ai déjà dit, je ne voudrais pas contribuer à un projet Open Source, mais je ne sais pas par où commencer, je suppose que les «gros» projets ne veulent que de bons codeurs :(

Je pense que vous pouvez commencer à apporter de petites contributions à de nombreux projets open source. Au moins, je crois que les tests, les rapports de bogues, la contribution à la documentation sont certainement les bienvenus car de nombreux développeurs n'aiment pas cela :-) Et de cette façon, progressivement, vous pouvez vous forger une réputation et commencer à contribuer au code: d'abord des corrections de bugs, puis des changements plus importants.

Il y a 2 semaines, j'ai eu une entrevue pour un emploi de programmeur junior et j'ai réussi à répondre à la plupart des questions auxquelles j'ai répondu, mais je n'ai toujours pas obtenu le poste en raison du manque d'expérience pratique

N'abandonnez pas, cela est arrivé à la plupart d'entre nous à un moment donné. Continuez à apprendre, à pratiquer et à postuler pour des emplois juniors et tôt ou tard, vous en obtiendrez un. Une chose que vous pouvez et à mon humble avis devrait faire après les entretiens est de recueillir les commentaires. Si vous avez rempli un test écrit, ne demandez pas seulement votre score, mais demandez également la feuille de résultat réelle pour voir les erreurs que vous avez faites et en tirer des leçons. Analysez également le processus d'entrevue et trouvez où vous avez donné des réponses sous-optimales, manqué un battement, etc. La prochaine fois, vous pourrez l'améliorer avec une préparation supplémentaire.

Péter Török
la source
Merci, je vais y jeter un coup d'œil, j'ai du mal à trouver un projet auquel m'engager!
JuniorDeveloper1208
0

N'ayez jamais peur de la programmation, les meilleurs programmeurs sont ceux qui ont fait les plus grosses bévues. Erreurs stupides, bogues complexes, ils contribuent tous à faire de vous un meilleur codeur.

Bonne chance !!

Chypre
la source