b) Contexte d'utilisation du TS/JS & choix des outils
Contexte d'utilisation du TS/JS
Utilisation de TS/JS
TypeScript, c'est JavaScript avec une syntaxe pour les types. TS offre une meilleure expérience de développement que JS, notamment en permettant :
- de détecter beaucoup d'erreurs avant l'exécution au sein de son éditeur de code
- d'améliorer la productivité grâce à une meilleure autocomplétion et refactorisation,
- d'organiser le code de manière plus structurée et maintenable.
TypeScript est compatible avec JavaScript et transpile le code pour différents environnements, offrant ainsi une meilleure gestion des erreurs et une expérience de développement améliorée.
Il n'y a plus beaucoup d'entreprises qui utilisent du JS pur, TypeScript est devenu un standard pour le développement d'applications web modernes.
En 2023, suite au grand sondage annuel de StackOverflow, le JS est le langage le plus utilisé depuis plus de 11 ans !

Programming, scripting, and markup languages [R.1]
En apprenant le TS, vous apprenez à la fois le JS : vous pourrez donc travailler dans de nombreuses entreprises et sur de nombreux projets.
(Sur)Diversité de TS/JS
Applications frontend web classiques
Il existe une multitude de librairies & frameworks TS/JS pour aider à réaliser des d'Interfaces Homme-Machine (IHM) : React, Vue, AngularJS, JQuery, Phaser, Anime.js,…
En 2023, suite au grand sondage annuel de StackOverflow, voici les principaux frameworks web !

Web frameworks and technologies [R.1]
React est la librairie la plus utilisée actuellement pour le développement de frontend ! C'est pourquoi elle est utilisée dans ce cours.
Applications backend
Il existe aussi un nombre incroyable de librairies & frameworks JS permettant de réaliser des applications côté serveur, aussi appelées applications backend : Node.js, Express, Next.js...
Express reste actuellement le framework le plus utilisé pour le développement de services web côté serveur. C'est pourquoi il est utilisé dans ce cours.
Communication de données
Le JavaScript Object Notation (JSON) est notamment utilisé dans le cadre de communications entre applications, notamment afin de standardiser l'échange de message et de permettre une interopérabilité entre applications développées selon des technologies différentes.
Applications mobiles clientes / Cross Platform applications
Le TS/JS est utilisé pour réaliser des applications multi-plateformes. Il existe beaucoup de types d'architecture et de librairies & framework TS/JS pour écrire une base de code commune en TS/JS et permettre de générer des application qui s'exécuteront sous différentes plateformes (Android, iOS, Windows, Mac, Linux, Web...) :
- Progressive Web Applications (PWA).
- Hybrid Applications : Cordova, Ionic…
- Real Native Applications : React Native, NativeScript…
Embedded scripts
Le TS/JS sert aussi à intégrer des fonctionnalités, des plugins, à certains logiciels très connus. Par exemple :
- Chrome extensions
- Google Apps Script
- ...
Autres
Il existe encore d'autres contextes où le TS/JS est utilisé. C'est une belle motivation pour apprendre ce langage, il permet aux programmeurs de faire de nombreuses choses.