Si vous souhaitez améliorer vos compétences dans un langage de programmation existant ou nouveau, l'une des meilleures façons de le faire est de relever des défis de codage.
De nombreuses plates-formes et sites Web sont devenus disponibles au fil des ans, offrant des défis passionnants aux codeurs de tous niveaux. Que ce soit un nouveau langage vous essayez d'apprendre ou souhaitez tester votre intelligence dans des situations stressantes - les défis de codage peuvent être à la fois amusants et un test en même temps.
Les avantages, outre l'évidence, de travailler sur ces défis comprennent de meilleures compétences en résolution de problèmes, une compréhension approfondie du langage et la joie d'apprendre de nouveaux algorithmes. Comme tu le sais, les algorithmes ne sont pas rares pendant le processus de recrutement - donc avoir quelques dents dans le jeu pourrait vous donner un avantage.
Cet article couvre certains des meilleurs sites Web et plates-formes de défi de codage qui existent. Certains sont adaptés aux débutants, tandis que d'autres s'adressent à un public plus expérimenté. Nous ajoutons également des éléments que vous pouvez montrer à vos enfants depuis codage adapté aux enfants est également devenu très populaire.
Edabit
Le moyen le plus simple d'apprendre de nouvelles choses est d'avoir une interaction cohérente avec ce que vous essayez d'apprendre. Tel est également le cas de la programmation. La lecture des meilleurs livres vous donnera une connaissance nulle à moins que vous ne mettiez le mot écrit en pratique.
Edabit est une plate-forme établie qui offre des défis de codage de taille réduite, ce qui peut rapidement améliorer vos capacités de codage.
HackerRank
Rang Hacker est une startup qui se concentre sur la fourniture de défis de codage pour les individus et les organisations. Selon le défi, on vous donne le plus souvent des instructions pour un projet qui doit être terminé, et la façon dont vous le complétez dépend de vous.
Actuellement, les développeurs peuvent utiliser Java, Python, JavaScript, PHP, C ++ et SQL pour résoudre les défis fournis.
Chaque fois que vous soumettez vos solutions, la plate-forme note automatiquement votre soumission en fonction de facteurs tels que la précision. Ensuite, vous êtes placé dans le classement mondial, tout en cultivant des succès (badges) en cours de route. Il y a aussi des `` sprints '', qui est un autre terme pour désigner les concours hébergés sur une plateforme.
House of Codes a écrit une pièce passionnante illustrant les 50 principaux défis trouvés dans Hacker Rank. Si vous en avez la curiosité, c'est une lecture intéressante, avec une tonne d'exemples et de matériel.
Coderbyte
Coderbyte est une application unique basée sur des pratiques de programmation modernes. Sa principale caractéristique est les défis de codage, qui ont aidé des millions de personnes à travers le monde à devenir de meilleurs développeurs. Contrairement aux applications similaires sur le marché, Codeuroctet est dédié à aider les gens à résoudre les problèmes au niveau de l'industrie.
L'un des avantages de l'utilisation de cette plate-forme est qu'elle fonctionne avec certaines des principales marques de logiciels. Par exemple, Google, LogMeIn, HBO, PWC et bien d'autres. Si jamais vous souhaitez décrocher un emploi dans de telles entreprises, soyez assuré que Coderbyte peut vous donner les défis nécessaires pour tester vos compétences.
Une fois inscrit, vous pouvez choisir parmi des défis et des algorithmes. Il existe des centaines de milliers de solutions soumises par les utilisateurs, qui peuvent vous aider à mieux comprendre des sujets de programmation spécifiques.
Les organisations peuvent s'inscrire et gérer leur processus de sélection. En devenant une organisation enregistrée, vous avez accès à des outils supplémentaires qui peuvent aider à filtrer chaque développeur individuellement.
Codewars
La beauté d'une pratique de codage cohérente est que vous trouvez toujours de nouvelles façons de résoudre les problèmes. Les codes codés capitalise sur cette idée. Basée sur les «katas», la plateforme propose des exercices et des défis dans une grande variété de langues.
Au fur et à mesure que vous effectuez lesdits exercices, vous pouvez marquer des points, mais également vérifier comment d'autres programmeurs ont résolu un problème spécifique.
Si vous vouliez pratiquer une nouvelle langue, Codewars est un site exceptionnel à ajouter à vos signets.
Voici quelques des langues prises en charge:
- Clojure
- Calme
- Swift
- Python
- Haskell
- coquillage
- JavaScript
- PHP
- Kotlin
- Scala
Et beaucoup d'autres langues sont dans le programme BETA, disponibles mais avec des goulots d'étranglement potentiels.
Fondamentalement, Edabit souhaite fournir une plate-forme capable de combler le fossé entre les codeurs débutants et avancés. Vous pouvez consulter le Feuille de route pour voir la liste complète des fonctionnalités.
CodinGame
Les jeux en tant que plates-formes d'apprentissage ne sont pas une chose entièrement nouvelle, mais il semble y avoir beaucoup plus d'acteurs sur le terrain maintenant. CodinGame n'est qu'une des nombreuses plates-formes qui offre des défis de programmation grâce à une expérience ludique. Plutôt que d'écrire du code à bout portant, vous créez plutôt un environnement de jeu. Tout le code que vous écrivez, à certains égards, affecte le déroulement du «jeu».
Rétrospective, des plateformes comme CodinGame peut beaucoup aider les développeurs technologiques sur la cause et l'effet. Et comment certaines décisions mènent à des résultats spécifiques.
Ce n'est pas seulement l'un de ces sites bon marché où vous écrivez du code JavaScript bâclé. CodinGame implique des algorithmes de haut niveau et dispose d'innombrables codeurs de classe mondiale aidant à fournir des solutions aux développeurs débutants et chevronnés.
HackerEarth
HackerEarth est une plate-forme bien connue qui exécute des hackathons, des défis de codage et différents types de compétitions.
C'est aussi un endroit où vous pouvez acquérir des connaissances intéressantes sur le processus de recrutement dans les entreprises modernes. Pas tous, mais une bonne partie des défis trouvés dans la base de données de HackerEarth peuvent finir par être posées lors de vos futurs entretiens d'embauche.
Et comment est-ce possible? Eh bien, principalement parce que la véritable hâte de HackerEarth est de fournir des solutions de recrutement aux entreprises technologiques de premier ordre. Si vous voulez être considéré comme le meilleur, vous devez passer du temps avec les meilleurs. C'est une situation gagnant-gagnant pour vous.
Programmr
Programmr est un laboratoire numérique dynamique pour tous les niveaux de développeurs. Avec Programmeur, vous pouvez écrire du code, le compiler et exécuter des projets directement à partir de votre navigateur. La plate-forme prend en charge toutes les principales langues utilisées aujourd'hui. Qu'il s'agisse d'une application mobile ou d'une structure de base de données que vous souhaitez exécuter, Programmr a le courage de le prendre en charge.
Du côté des défis, Programmr a un ensemble personnalisé de défis pour Java, C ++, PHP, C #, Ruby, Python et iOS. Chaque ensemble comprend plus de 100 défis, qui peuvent être triés par popularité (en fonction des votes des utilisateurs) et d'autres facteurs.
Ce qui distingue ces gars des autres, c'est que vous pouvez utiliser vos nouvelles expériences pour obtenir des commentaires instantanés, qu'il s'agisse d'un certificat pour une langue spécifique ou simplement des commentaires d'utilisateurs existants.
The Coding Train
Daniel Shiffman est une armée composée d'une seule personne, qui crée et produit un excellent matériel sur la programmation. Le train de codage est la plate-forme YouTube personnelle de Daniels, où il a partagé des vidéos passionnantes et utiles pour résoudre les problèmes liés à la programmation.
Mais, il a cette approche intéressante. Plutôt que de tout héberger sur son site Web, il utilise YouTube comme plate-forme pour relever le défi et son site Web comme plate-forme pour la solution.
Gardez en nature que ses défis sont basés sur P5.js et Coupe - deux solutions populaires utilisées dans l'art et la conception graphique.
Wolfram Challenges
Wolfram est l'une des sociétés les plus connues au monde opérant sous la branche informatique. Leur plate-forme a laissé beaucoup de voix sans voix par ses possibilités.
Bien que nous ne nous concentrions pas sur Wolfram Alpha, une nouvelle frontière introduite au début de 2018 - Défis Wolfram.
Il existe de nombreux exemples de défis que l'on peut imaginer qui impliquent de trouver «la solution la moins coûteuse» ou la «meilleure solution». Et c'est une configuration similaire avec des tâches d'apprentissage automatique typiques: trouver une fonction (par exemple basée sur un réseau de neurones) qui fonctionne le mieux pour classer un certain ensemble de test, etc.
Par rapport aux autres sites Web / plates-formes de ce tour d'horizon, Wolfram couvre un large domaine de défis et pas seulement le codage. Dans l'ensemble, si vous voulez aiguiser votre esprit critique, ce sera la plateforme pour le faire!
LeetCode
CodeLeet est un produit, ce qui signifie que ce n'est pas seulement un site hébergeant des défis aléatoires. Au lieu de cela, LeetCode est un moyen de vous préparer à de futures possibilités.
La plate-forme offre un apprentissage moderne, des défis complexes et un superbe tableau de bord pour tout faire.
Il existe également des articles, des forums de discussion et d'autres aspects communautaires pour encourager une expérience transparente. De nombreux utilisateurs de LeetCode ont obtenu leur `` diplôme '' pour travailler dans des entreprises comme Uber, Amazon, Stripe et autres.
Codeforces
Codeforces est pour tous les codeurs hardcore et dévoués là-bas. Pensez aux ingénieurs en logiciel, aux pentesters, aux passionnés d'IA et aux accros de l'apprentissage automatique! En tant que plate-forme pour les programmeurs avancés, Codeforces est connu pour son classement notoire et son esprit de compétition.
Et commencer est plus facile que vous ne le pensez.
Exercism
C'est formidable de voir les initiatives derrière de nombreuses plates-formes de défi de codage.
Et Exercice ne fait pas exception. Katrina Owen, la fondatrice, dit que son objectif est «d'aider les gens à apprendre suffisamment de codage [en utilisant l'exercice] pour qu'ils puissent trouver un emploi en développement».
Au moment d'écrire ces lignes, il y a plus de 2,600 exercices en 48 langues - tous gratuits! Avez-vous voulu apprendre Kotlin, ou peut-être être plus orienté vers Vim? C'est maintenant votre chance de apprendre de nouvelles compétences à travers des défis intéressants!
Codier
Aussi surprenant que cela puisse paraître pour certains d'entre vous, il y a encore du codage en cours dans le développement front-end!
Les défis ici sont principalement regroupés par les utilisateurs. Par exemple, quelqu'un pourrait publier une «carte de conception matérielle» et vous mettre au défi de l'améliorer ou de créer une variante similaire.
Le résultat est votre capacité à mettre en œuvre des idées créatives. Et c'est bien de voir comment d'autres abordent des problèmes similaires en temps réel également. Vous pouvez toujours réutiliser le code soumis par d'autres dans vos projets.
Flexbox Froggy
En parlant de front-end, comment se déroule votre compréhension de Flexbox? Il est toujours agréable de se rafraîchir la mémoire pour rester précis et précis!
Flexbox Froggy est un joli petit jeu qui vous guide à travers 28 étapes de différentes utilisations et alignements de Flexbox. C'est peut-être moins un défi qu'un rappel, mais pouvez-vous faire tous les niveaux sans chercher des réponses?
Grid Garden est un jeu très similaire; la seule différence est que vous travaillez avec la fonction Grid et non avec Flex.
PyBites
Python est largement accepté comme le langage le plus simple à apprendre. Et il est souvent recommandé aux nouveaux programmeurs d'explorer en premier. Mais ne laissez pas cela vous décourager de croire en la capacité de Python.
Ces jours-ci, beaucoup de machine learning et la génération des ensembles de données se fait exclusivement avec Python - et ce n'est pas une mince affaire!
PyBites vous met au courant des derniers événements. Articles, défis de codage et autres informations essentielles pour vous aider à aiguiser votre esprit. Chaque défi comprend un suivi sous forme de révision, où vous pouvez comparer votre code et explorer la bonne façon de résoudre un problème.
CodeCombat
CodeCombat est encore un autre jeu de codage offrant un environnement de codage dynamique et stimulant. La différence entre un produit comme CodinGame est que CodeCombat se concentre sur les enseignants. En conséquence, vous pouvez utiliser cette plate-forme pour enseigner la programmation et la résolution de problèmes au niveau de l'école.
Il existe des outils, du matériel et d'autres ressources spécialement conçus à cet effet. Et c'est aussi très amusant. Les jeux CodeCombat que vous construisez sont à la fois intéressants mais aussi visuellement étonnants. Et le jeu est déjà si populaire parmi les enfants. Donner aux enfants le défi de développer leur environnement virtuel peut les inciter à construire quelque chose d'extraordinaire à l'avenir!
Tynker
Comme mentionné brièvement dans l'intro, nous avons quelque chose pour vous tous les parents. Tynker est une petite plate-forme amusante qui aide à enseigner le codage aux enfants. Il est basé sur une interface glisser-déposer très simple où les enfants peuvent passer d'un choix à l'autre et, espérons-le, résoudre les problèmes présentés.
Et ne vous méprenez pas non plus, Tynker est plus adapté aux normes modernes que vous ne le pensez. Si vous avez des enfants qui entrent dans l'adolescence, vous pouvez les laisser écrire des solutions en utilisant Python ou JavaScript plutôt que d'utiliser Blocks seul.
Mots de clôture: Relevez le défi!
Au total, il y a probablement 10,000 défis de code uniques sur tous les sites et plates-formes que nous avons répertoriés. Il est impossible de tous les traverser comme ça.
Au lieu de cela, ma recommandation est de trouver une plate-forme qui correspond le mieux à vos besoins et de vous concentrer uniquement sur cette plate-forme. Vous pouvez nouer des amitiés, apprendre de nouvelles choses et qui sait - vous pourriez en apprendre suffisamment pour décrocher un nouvel emploi dans une entreprise bien rémunérée!
Vous pouvez également envisager DataCamp pour apprendre la science des données, qui comprend des défis et des projets de codage.
Ensuite, que diriez-vous de trouver comment ajouter des commentaires dans les langages de programmation populaires?