Nolimit

Nolimit

13-06-2022

16:21

Tu veux apprendre la programmation mais tu ne sais pas par quel langage commencer ? Alors lis ce THREAD (0 bullshit) ⬇

1. Choisis ton langage en fonction de ce que tu veux programmer. Il n'y a aucun langage "meilleur" qu'un autre. Donc si jamais tu entends dire "Le langage X est le meilleur" ou "le langage Y est nul": 99% du temps c'est un mec qui dit de la merde et qui a pas de vie.

Un langage de programmation = un outil pour répondre à un besoin. Certains langages seront mieux adaptés à un besoin X mais beaucoup moins pour un besoin Y. Il n'y pas de langage de programmation adapté à TOUS les cas d'utilisation.

Ex: le C++ est très utilisé dans les systèmes embarqués car il permet aux développeurs d'avoir le contrôle sur la gestion de la mémoire (pas de garbage collector en C++).

Mais si jamais tu n'as pas de problématiques de performance, tu n'as pas besoin de gérer la mémoire de ton programme manuellement. Des langages comme Java/Python font ça automatiquement via le garbage collector.

La question que tu dois te poser c'est: Qu'est ce que je veux programmer ? Des jeux-vidéos ? Des sites webs ? Un système d'exploitation ? Une appli pour Iphone ? Une IA ? Un robot ? Etc... Pour chaque besoin, il y'aura des langages plus adaptés que d'autres.

Ex: le C pour coder un système d'exploitation, C++ pour les jeux-vidéos, Python pour la data science/machine learning etc... Et moins adaptés: C++ n'est pas le langage le mieux adapté pour coder un site Web (contrairement à HTML/CSS + Javascript etc...)

Une citadine sera + adaptée pour rouler en ville qu'un 4x4 (+ facile de se garer, consomme - d'essence...). Mais un 4x4 sera meilleur pour rouler sur terrain escarpé. Mais ça ne veut pas dire que tu ne pourras pas rouler en ville en 4x4. C'est pareil pour les langages de prog

En résumé (liste non exhaustive): Systèmes d'exploitation, embarqué, drivers: C Jeux vidéo, calculs haute performance: C++ Robotique: C/C++ Web/Frontend: HTML+CSS+Javascript, Typescript Backend: Go/Rust/Java/Python/Javascript+Node.js Appli de bureau: Java, C#, C++

Appli mobile Android: Java Appli mobile iOS: Swift Web/IA/Machine Learning/Data analyse/Scripts/DevOps : Python

2. La demande sur le marché Ne choisis pas comme 1er langage un langage peu utilisé car tu vas galérer à trouver des docs/ressources pour apprendre, voir du taff. Ne choisis pas non plus un langage en déclin/de moins en moins utilisé (ex: je déconseille PHP).

Oriente toi vers un langage "mainstream" qui est actuellement demandé dans l'industrie ou ayant un gros potentiel pour le futur. Je te conseille un langage qui soit à minima dans le TOP 20 du PYPL Index:

4. Choisis ton langage en fonction de ton objectif. Scénario 1: tu as du temps à investir, et tu souhaites acquérir une connaissance très approfondie des bases de l'ingénierie logicielle. Bref, devenir un CRACK: ➡️Commence par le C.

Programmer en C te force à apprendre comment gérer la mémoire d'un programme, à implémenter les structures de données manuellement (pile, file, tas, etc...), à comprendre comment une machine traite et stocke la mémoire. Bref, les choses qui se passent "sous le capot".

Ce sont des concepts que tu n'aborderas pas si tu commences par un langage "haut niveau" comme Javascript/Python. Avec le C, tu acquerras des bases solides et des bonnes habitudes qui te seront utiles pour toute ta carrière. Ce sera ensuite + facile pour toi de changer de langage

Scénario 2: tu sais exactement ce que tu veux programmer. ➡️Apprends le langage le mieux adapté à ton besoin et qui soit à la fois demandé sur le marché et largement utilisé (Ex: Java si tu veux faire des applis Android, Python pour de l'IA etc...)

Scénario 3: tu n'as pas d'idée en tête et tu veux expérimenter la programmation: ➡️Apprends Python. Tu peux quasiment tout faire avec et c'est selon moi le langage le + accessible pour les débutants par sa syntaxe et sa facilité d'apprentissage.

In fine, il y'a 2 approches: APPROCHE 1: commencer par un langage + "difficile" où tu vas affronter des bugs terribles qui te donneront envie de péter ton clavier MAIS qui va te forger et t'apporter ENORMEMENT sur le long terme.

APPROCHE 2: commencer par un langage + "facile" avec lequel tu pourra coder des choses intéressantes rapidement en ayant moins de frustration MAIS avec lequel tu rateras certains concepts clés.

Une fois que tu auras choisi ton langage, prends n'importe quelle ressource (livre, Youtube, site web...) et lance-toi. Peu importe le langage que tu choisiras en premier: tu n'es pas marié avec et une fois que tu en auras appris un, ce sera + facile d'en apprendre d'autres.

Les langages évoluent vite, et tu seras amené à utiliser des nouveaux langages aux fur et à mesure de ta carrière.

N'oublie pas de retweet + like ce thread pour que ça puisse aider le maximum de personnes ! Follow moi: @CoderNoLimit pour ne rien rater. Si tu as la moindre question, mets-la en commentaire ou contacte-moi directement en DM 😃


Follow us on Twitter

to be informed of the latest developments and updates!


You can easily use to @tivitikothread bot for create more readable thread!
Donate 💲

You can keep this app free of charge by supporting 😊

for server charges...