Des lecteurs comme vous aident à soutenir MUO. Lorsque vous effectuez un achat en utilisant des liens sur notre site, nous pouvons gagner une commission d'affiliation. En savoir plus.

Alors que la fin de l'année approche, les pensées des programmeurs se tournent vers l'avènement du code. Fonctionnant depuis 2015, le site célèbre les vacances de décembre et le codage, avec une collection de défis quotidiens.

Comment ça marche?

Le Avènement du code Le site contient beaucoup de texte, avec des liens verts et une présentation générale qui imite un éditeur de texte ou une session de terminal.

Capture d'écran par l'auteur

Chaque jour, du 1er décembre au 25 décembre, un nouveau défi devient disponible. Chaque défi est clairement décrit, avec des exemples et tous les fichiers d'entrée pertinents disponibles au téléchargement. Il y a deux tâches par défi.

Chaque tâche vous demandera d'entrer une réponse finale, qui sera quelque chose que votre programme aurait dû calculer. Vous pouvez utiliser la langue de votre choix pour effectuer la tâche. En théorie, vous pouvez trouver des solutions à la main, mais cela sera généralement laborieux - et où est le plaisir là-dedans, de toute façon ?

instagram viewer

Comment participez-vous ?

  1. Commence par se connecter à adventofcode.com, en utilisant l'un des services OAuth pris en charge par le site. Le service le plus évident à utiliser est GitHub, la plateforme collaborative open source. Vous pouvez également utiliser un compte Google, Twitter ou Reddit.
  2. Allez à la tâche quotidienne. Si vous êtes en retard pour commencer, ne vous inquiétez pas; vous pouvez toujours terminer les tâches des jours précédents pour vous rattraper. Cependant, vous devriez certainement essayer de travailler chaque jour dans l'ordre.
  3. Comme pour toute tâche, examen ou question d'entretien, vous devez lire attentivement les instructions! Il y aura généralement des détails importants que vous devrez noter en texte gras et blanc.
  4. Téléchargez tous les fichiers de données requis.
  5. Rédigez votre solution dans la langue de votre choix. Vous pourriez même être en mesure de résoudre certaines tâches en utilisant la norme Ligne de commande Linux outils.
  6. Une fois que vous avez votre solution, entrez-la dans la case en bas de la tâche. Après avoir terminé la première tâche de chaque jour, il y en aura une seconde pour vous étirer davantage.

À quoi ressemblent les défis ?

Les défis commencent simplement et deviennent plus difficiles au fil du mois. La première tâche de cette année consiste simplement à ajouter quelques groupes de nombres à partir d'un fichier texte et à calculer le total le plus élevé.

Une tâche peut sembler simple au départ, et vous pouvez en "forcer brutalement" beaucoup, en particulier les plus faciles. Cependant, comme le défi vous permet d'utiliser n'importe quelle langue et ne demande qu'une réponse finale, vous pouvez en tirer tout ce que vous voulez. Par exemple, vous pouvez utiliser la série de l'une des manières suivantes :

  • Pour apprendre une toute nouvelle langue à partir de zéro.
  • En tant que test de « vitesse », pour voir à quelle vitesse vous pouvez résoudre chaque tâche.
  • Pour vous tester avec une langue différente chaque jour.
  • Pour voir l'efficacité d'un programme que vous pouvez produire, soit en termes de vitesse d'exécution, soit du peu de mémoire qu'il utilise, soit du nombre de lignes de code qu'il contient.
  • Comme pratique pour écrire le code le plus propre et le plus lisible tu peux.

Tous les défis font partie d'un thème plus large, généralement lié à Noël. L'histoire de cette année concerne les lutins du Père Noël qui ramassent des fruits pour les soutenir pendant leur période de travail la plus chargée.

Apprenez en vous mettant au défi et en vous amusant

Le Web regorge de jeux de programmation et de défis auxquels vous pouvez participer. Ils ne produisent pas toujours des résultats pratiques, mais ils offrent une pause amusante dans le travail quotidien. Et les tâches intéressantes sont souvent plus faciles à voir que les tâches banales.