Introduction à la programmation
Liste de ressources pour les développeurs en herbe
Introduction
Objectifs
La programmation et l’informatique sont de plus en plus populaires que jamais - des initiatives comme Une heure de code rendent l’apprentissage de la programmation plus populaire à travers le monde.
En conséquence, il ya un nombre de plus en plus important de ressources et de tutoriels produites pour les débutants qui veulent apprendre à coder, allant des livres aux tutoriels en ligne aux sites Web interactifs aux cours en ligne massifs ouverts (MOOCS) comme Codecademy, Coursera et OpenClassrooms
Bien que cela soit merveilleux, il peut également être un problème pour les débutants - il ya presque trop de ressources disponibles, et il est difficile de savoir par où commencer.
Cette page est destinée à aider à résoudre ce problème - pour présenter une liste de ressources pour les personnes qui sont soit nouvelles à la programmation, nouvelles à un sujet particulier, ou veulent faire progresser leurs compétences au-delà du stade débutant. Cette page n’essaie pas de répertorier toutes les ressources disponibles, mais plutôt des liens vers des ressources qui sont garanties d’être de haute qualité.
Par où commencer?
Si vous savez ce que vous voulez apprendre, c’est génial! Commencez à parcourir les liens dans cette section et trouvez quelque chose qui fonctionne pour vous.
Si vous ne savez pas par où commencer et quelle language apprendre, quelques bons langages pour débutants sont:
- Golang (Go tente de combiner la facilité de programmation d’un langage interprété, dynamiquement typé, avec l’efficacité et la sécurité d’un langage statiquement typé, compilé.)
- Python (À usage général; Informatique scientifique et mathématique.)
- Java (À usage général; Développement Android)
- HTML/CSS/JavaScript (Sites web et Applications web)
- Scratch (pour les enfants)
Python et Java sont les deux langages les plus utilisés pour enseigner la programmation aux débutants dans les écoles et les universités, et il existe une grande variété de ressources disponibles pour vous aider à apprendre. Ils sont aussi largement utilisés dans l’industrie qui font d’eux des langages utiles à connaître.
Le développement Web a été très populaire ces derniers temps, il y’a donc de nombreuses ressources pour l’apprentissage du HTML, CSS et JavaScript, ce qui rend également l’apprentissage plus simple et éfficace. Il nécessite peu ou pas d’installation et de configuration sur votre ordinateur. Tout ce dont vous avez besoin est un éditeur de texte pour écrire du code – le code sera exécuté sur votre navigateur Web.
Scratch est un peu différent des autres langages. Il a été conçu à dès la base pour être facile à utiliser et à apprendre – au lieu de taper du texte, vous faites glisser et connecter un ensemble “blocs” pour former des programmes, ce qui en fait un langage très visuel. En conséquence, Scratch est une bon langage surtout pour les enfants plus jeunes (élèves du primaire, collège) ou pour les gens qui n’aiment pas taper.
Comment cette page est organisée?
Cette page est subdivisée en trois parties: premièrement, une section “Ressources générales” qui relie des sites qui offrent des contenus de haute qualité sur une variété de sujets et une section “Ressources spécifiques” qui fournit des ressources sur des langages de programmation ou des sujets spécifiques.
En général, la plupart des ressources disponibles se situent entre deux catégories – les cours en ligne, et les livres + didacticiels(tutoriels). Les cours en ligne ont tendance à enseigner en utilisant des conférences vidéo, essayant d’être interactif, essayant d’imiter la structure d’un cours semblable à ceux que vous pourriez prendre au collège. En revanche, les livres et les didacticiels enseignent par écrit et vous permettent de définir votre propre rythme.
Quelle ressource dois-je choisir?
Que vous préfériez apprendre en regardant une vidéo ou en lisant du texte est vraiment une question de préférence personnelle. Moi personnellement, c’est le visuel, mais votre style d’apprentissage pourrait être complètement différent. Vous devrez peut-être explorer et parcourir plusieurs ressources différentes avant de découvrir comment vous apprenez le mieux.
De plus, vous constaterez que la plupart des liens, qu’il s’agisse de cours en ligne, de didacticiels ou de livres, ont tendance à se concentrer sur l’un ou l’autre des trois éléments suivants:
- Certaines ressources se concentrent sur la programmation, la sémantique ou la théorie de l’informatique – en d’autres termes, comment utiliser un langage de programmation pour écrire quelque chose qui fonctionne.
- D’autres ressources se concentreront plus sur le codage et la syntaxe – les détails particuliers et les règles sur le fonctionnement d’un langage de programmation.
- D’autres ressources se concentrent sur l’enseignement idioms – l’enseignement des meilleures pratiques spécifiques à ce langage, la philosophie sous-jacente de ce dernier, ou vous faire découvrir les différentes bibliothèques à votre disposition: l’écosystème large.
Si vous êtes nouveau dans la programmation, le premier modèle sera le meilleur. La programmation concerne la résolution de problèmes appliqués: être en mesure de prendre un problème, et le briser en petits et petits morceaux jusqu’à ce qu’ils soient assez petits pour traduction en code informatique. Simplement mémoriser une collection de règles ne sera pas très utile pour vous. Vous devez également apprendre à appliquer ces règles.
Toutefois, si vous savez déjà comment programmer, alors vous savez très probablement déjà comment faire. Dans ce cas, vous allez vouloir utiliser le deuxième type, car il sera plus facile d’apprendre les différences entre le langage que vous apprenez et celles que vous connaissez déjà.
Quand je dis qu’une ressource est “lourde en théorie” ou “rigide”, c’est qu’elle se penche vers la première catégorie. Quand je dis qu’une ressource “se concentre sur la syntaxe”, je veux dire qu’elle se penche vers la seconde. Et quand je dis une ressource “se concentre sur des idiomes” ou “sur des applications pratiques”, je veux dire qu’il se penche vers le troisième.
ATTENTION!
Cette page est toujours un travail en cours! Certaines sections peuvent actuellement être incomplètes, et certains liens peuvent ne pas encore être complètement vérifiés.