Il existe une très grande variété de systèmes *nix (Unix ou Linux), on les nomme distributions.
Une distribution est un noyau (kernel) ET un ensemble de logiciels.
Le point commun est le noyau (Linux, BSD, ou autre Unix).
Les différences peuvent être:
La convivialité (facilité d’utilisation)
L’intégration (quantité de logiciels compatibles disponibles)
La notoriété (communauté disponible pour résoudre les problèmes)
L’interface graphique (Gnome, KDE)
Le type de paquet d’installation (rpm, deb, …)
L’éditeur (entreprise ou communauté)
Debian
Ubuntu (facile pour les débutants)
Redhat/Fedora
Centos
Mandriva
Suse
Gentoo
Slakware
…
Certaines distributions ont des rôles spécifiques:
PFSense : cette distribution est un pare-feu
CloudRouter : permet de faire du routage
Android : téléphones, tablettes
Avantages | Inconvénients |
---|---|
Très souvent le même environnement que la machine de production (surtout pour la portion serveur d’une application) | |
Très facile d’installer des nouveaux outils de développement:
|
|
Une bonne console (ligne de commande) est souvent un bon dépanneur pour un développeur (p.ex. les messages d’erreur sont souvent plus explicites à la ligne de commande que dans l’IDE) | Accès très limité aux outils Microsoft: pas de Visual Studio, seulement VS Code et un support minimal pour C# |
Plus facile d’automatiser des tâches de compilation et de tests | |
Systèmes plus léger qui laisse la place aux outils de développement (p.ex mon Linux prend moins de 1Go de mémoire, alors le reste est pour les outils, VM, etc.). Dans le cours Android p.ex. , l’environnement de développement prend 15Go de mémoire (pour l’IDE + deux émulateurs de téléphone). |
Selon les études et la façon de calculer, les chiffres peuvent varier mais tous donnent un grande majorité de serveur Linux.
Les chiffres varient entre 65% de Linux pour les études les plus conservatrices à plus de 90% si on regarde le cloud.
Finalement, les 500 plus gros superordinateurs au monde utilisent Linux.