Breakpoint#3 : gloire à la CLI !
lun, 14/10/2019 - 19:29
Comme beaucoup, j’avoue faire dans la facilité : les interfaces graphiques des OS et des logiciels. Elles existent, pourquoi s’en priver ? Elles ont un inconvénient, énorme même : les GUI ne proposent pas l’ensemble des fonctions, commandes et options du logiciel, particulièrement du système et des infrastructures !
Ce n’est pas un hasard si tous les outils pour gérer les conteneurs, les infrastructures, les services cloud et même certains langages possèdent leurs propres CLI que le développeur peut installer. Seule la CLI permet d’accéder à toutes les fonctions et commandes. Je dis : à toutes les fonctions !
Pourquoi seule la CLI permet un tel accès ? Aussi bonne soit la GUI, l’interface deviendrait extrêmement complexe si toutes les options étaient proposées et les erreurs potentielles de manipulations seraient très élevées. Et surtout, la maintenance d’une telle GUI se révélerait rapidement impossible. La GUI doit apporter l’essentielle aux utilisateurs.
L’interface même de la CLI permet cette souplesse que n’a pas la GUI : le mode textuel / ligne de commande. C’est simple, pas d’interface complexe et surtout très rapide. En effet, une CLI sera toujours plus rapide qu’une GUI ! Je garde toujours une Terminal ouvert en cas de problème…
Si vous êtes sur Linux, vous savez sans doute de quoi je parle. Les utilisateurs de Powershell aussi !
Deux exemples simples :
- Sous Windows 10 : l’outil diskpart permet de manipuler les disques, les partitions, les volumes beaucoup mieux qu’avec l’outil disponible sous Windows. La liste des commandes est longue et on peut réellement aller loin dans le bas niveau. Ou même pour gérer finement les piles réseaux de l’OS
- Sous macOS : nous avons récemment rencontré un gros problème d’espace disque. Impossible de trouver une solution depuis les utilitaires graphiques. Après quelques recherches, les commandes les plus intéressantes de Time Machine étaient uniquement accessibles via le Terminal, particulièrement pour purger les snapshots locales… Et même pour gérer les volumes, forcer un formatage avec partition système ou manipuler les commandes d’indexation…
Angular CLI permet aussi une grande rapidité pour le développeur : installer, créer, gérer des apps Angular. Mais comme il y a beaucoup de commandes, on peut utiliser Angular Console qui est à mi-chemin d’une CLI et d’une GUI. La Console fait moins peur que la CLI :-) L’intérêt de la Console est que l’on manipule tout de même la CLI.
Bref, tu vas aimer la CLI même si tu n’as pas envie !
François Tonic