Ce que vous devez faire pour penser comme un programmeur

  1. Pourquoi est-ce important?
  2. Trouver le motif
  3. 1. la comprendre
  4. 2. planifier
  5. 3. Découpez le problème en petits sous-problèmes.
  6. 4. Coincé?
  7. Pratique
  8. Nommé les 5 langages de programmation les plus populaires selon HackerRank
  9. Comment devenir programmeur, si vous voulez vraiment, mais sans expérience

Que veut dire penser comme un programmeur? En fait, tout est plus efficace pour résoudre les problèmes. Blogger et le développeur d’applications mobiles, Richard Rees, ont donné quelques conseils sur la façon de développer une façon de penser informatique.

Pourquoi est-ce important?

La résolution de problèmes est metanavyk. Comment pouvons-nous nous en sortir? Assez aléatoire. Si vous n'avez pas de système, vous aurez plus de chances de «résoudre» les problèmes de cette façon:

  1. Essayez la solution.

  2. Si cela échoue, essayez-en un autre.

  3. Répétez la deuxième étape jusqu'à la chance.

Alors ne le faites pas. C'est une énorme perte de temps. Vous devez a) trouver un motif et b) pratiquer.

«Presque tous les employeurs examinent d’abord la façon dont les employés résolvent les problèmes. Cette compétence est plus importante pour eux que la connaissance des langages de programmation, du débogage et de la conception de systèmes. La pensée informatique et la capacité à faire face à des problèmes vastes et complexes sont valorisées de la même manière que les compétences techniques de base nécessaires pour travailler », - HackerRank (Developer Skills Report 2018).

Trouver le motif

«Les programmeurs débutants se concentrent souvent sur la syntaxe et non sur la résolution de problèmes. Et c'est la plus grosse erreur. " V. Anton Sproul .

Que devriez-vous faire quand vous faites face à un nouveau problème?

1. la comprendre

Vous devez savoir ce qui est requis de vous. Les tâches semblent compliquées parce que vous ne les comprenez pas. Comment savez-vous si vous comprenez le problème ou pas? Essayez de l'expliquer dans un langage simple.

Photo: Unsplash

Cela arrive assez souvent: êtes-vous coincé dans une tâche, commencez-vous à l'expliquer et constatez-vous soudainement des lacunes logiques? La plupart des programmeurs connaissent ce sentiment. Ecrivez votre problème sur papier ou parlez-en à quelqu'un.

2. planifier

Ne procédez pas immédiatement à la résolution d'un problème sans plan. Rien ne vous aidera si vous n'écrivez pas les étapes exactes. Donnez au cerveau le temps d'analyser le problème et de traiter l'information. Pour faire un bon plan, répondez à cette question:

"Supposons qu'il y ait un X à l'entrée. Quelles étapes sont nécessaires pour obtenir Y à la sortie?"

Les programmeurs ont un excellent outil pour cela ... Commentaires!

3. Découpez le problème en petits sous-problèmes.

C'est l'étape la plus importante. N'essayez pas immédiatement de résoudre un gros problème. Au lieu de cela, divisez-le en petits puzzles et résolvez-les progressivement. Commencez par le plus simple, c'est-à-dire celui auquel vous connaissez déjà la réponse. Dès que vous faites face à tous, connectez les points. Ainsi, vous pouvez résoudre le problème initial.

«Je conseille toujours aux programmeurs débutants de simplifier le problème. Imaginons que vous deviez écrire un programme qui lit dix nombres et détermine lequel sera le troisième. Pour les débutants, cette tâche peut sembler très difficile, malgré le fait que sa solution nécessite une connaissance de la syntaxe de base. Si vous êtes bloqué, essayez de simplifier le problème. Au lieu du troisième plus grand nombre, essayez de trouver le plus grand de tous. Toujours dur? Trouvez le plus grand nombre de trois donné. Ou deux. Simplifiez le problème jusqu'à ce que vous compreniez comment le résoudre. Puis, peu à peu, compliquez la tâche et réécrivez la solution », - V. Anton Sprol.

4. Coincé?

Maintenant, vous pensez probablement: «Bien, oui, bien sûr, c'est génial, mais que se passe-t-il si je suis bloqué et que je ne peux pas résoudre même un petit problème?"

Photo: Unsplash

Ne t'inquiète pas. Cela arrive à tout le monde. La différence est que les programmeurs ne se fâchent pas face à cela. Au contraire, ils sont intéressés à trouver une solution. Voici trois façons de le faire:

  • Notez à nouveau . Regardez le problème de l'autre côté. Y a-t-il quelque chose qui peut être présenté d'une manière plus simple?

«Parfois, nous nous perdons dans les détails et manquons les principes généraux qui permettraient de résoudre le problème plus rapidement. L'exemple classique est la somme de nombres consécutifs - 1 + 2 + 3 + ... + n. Karl Friedrich Gauss a présenté cela sous la forme de l'expression n (n + 1) / 2, et il n'a pas eu à effectuer de calculs inutiles. ”

Il existe une autre option: réécrire complètement le code. Supprimer tout et recommencer.

  • Explorez . Peu importe le problème que vous essayez de résoudre maintenant. Quelqu'un l'a déjà fait avant vous. Vous avez juste besoin de chercher. Faites cela même si vous avez résolu le problème.

Pratique

Ne pensez pas que dans une semaine, vous deviendrez un maître dans ce domaine. Si vous voulez bien résoudre les problèmes, faites-le régulièrement. Pratique Les échecs, les problèmes de mathématiques, le sudoku, le monopole, les jeux vidéo, la cryptocommunication - tout cela vous aidera à perfectionner vos compétences en résolution de problèmes. Les gens célèbres le font aussi. Par exemple, Peter Thiel joue aux échecs et Ilon Musk - dans les jeux vidéo .

"Ilon Musk, Reed Hoffman, Mark Zuckerberg et d'autres affirment que les jeux ont jeté les bases de leur succès" - Mary Meeker .

Est-ce que cela signifie que vous devriez juste jouer à des jeux vidéo? Pas vraiment. Bien sûr, vous devez encore apprendre. Trouvez quelque chose où vous pourrez exercer vos compétences.

Matériaux sur le sujet:

Nommé les 5 langages de programmation les plus populaires selon HackerRank

12 signes d'un mauvais programmeur - nous identifions un profane

Comment devenir programmeur, si vous voulez vraiment, mais sans expérience

Comment j'ai quitté mon poste de graphiste et suis devenu développeur frontend en cinq mois

Vous avez trouvé une faute de frappe? Mettez en surbrillance le texte et appuyez sur Ctrl + Entrée

Pourquoi est-ce important?
4. Coincé?
Pourquoi est-ce important?
Comment pouvons-nous nous en sortir?
Que devriez-vous faire quand vous faites face à un nouveau problème?
Comment savez-vous si vous comprenez le problème ou pas?
Quelles étapes sont nécessaires pour obtenir Y à la sortie?
Toujours dur?
4. Coincé?
Maintenant, vous pensez probablement: «Bien, oui, bien sûr, c'est génial, mais que se passe-t-il si je suis bloqué et que je ne peux pas résoudre même un petit problème?