Accueil l'audio Ce que les gens peuvent apprendre de la philosophie Unix

Ce que les gens peuvent apprendre de la philosophie Unix

Table des matières:

Anonim

Unix, sous toutes ses formes, a eu un impact profond sur l'industrie informatique. Bien que la plupart des utilisateurs ordinaires ne le traitent pas directement, ce système d'exploitation alimente une bonne partie d'Internet et de presque tous les smartphones. Les programmeurs adorent ça, et pour une très bonne raison. Une grande partie de l'attrait d'Unix vient de certaines des décisions de conception originales prises par ses créateurs, dont beaucoup ont des leçons pour des personnes en dehors du monde de la programmation. Les programmeurs Unix adhèrent souvent à une philosophie de programmation mettant l'accent sur la simplicité et l'élégance, mais vous pouvez appliquer ces leçons au-delà du développement de logiciels. (Obtenez des informations sur ce système d'exploitation dans Qu'est-ce qui rend Unix spécial?)

Restez petit

Une chose qui surprend de nombreuses personnes habituées aux grands programmes monolithiques est le grand nombre de petits utilitaires fournis avec de nombreux systèmes Unix et Linux. Il existe des outils pour rechercher dans le texte, déplacer des fichiers, afficher des fichiers, modifier des fichiers et autres. La plupart d'entre eux ne font que quelques kilo-octets, à quelques exceptions près.


De plus, beaucoup de ces programmes n'ont tout simplement pas beaucoup de fonctionnalités. Un éditeur de texte, par exemple, n'aura généralement pas de correcteur orthographique. Les programmes Unix sont conçus pour fonctionner ensemble et faire plus d'une chose, des concepts qui seront expliqués plus en détail plus tard.


Selon un adage commun, «10% du travail résout 90% des problèmes». En d'autres termes, vous êtes probablement mieux avec un outil plus petit et plus simple qu'un programme complexe avec des fonctionnalités que vous n'utilisez probablement même pas.

Utiliser du texte

Une chose pour laquelle Unix est célèbre - ou peut-être tristement célèbre - est sa forte dépendance à l'égard du texte brut. Bien que cela puisse sembler grossier à l'ère des graphiques et des interfaces graphiques haute résolution, cela présente des avantages majeurs.


Presque tous les fichiers de configuration du système sont conservés en texte brut. Cela signifie qu'il est possible pour les utilisateurs d'afficher et de modifier ces fichiers (à condition qu'ils disposent des autorisations appropriées) sans outils spéciaux. L'éditeur de registre n'existe pas dans les versions Unix et Linux, car il n'existe pas de registre.


Le texte est le plus petit dénominateur commun pour les données, ce qui signifie que tout autre système pourra lire et écrire des fichiers texte. Non seulement cela permet un échange de fichiers facile, mais aussi des données "à l'épreuve du temps", en s'assurant qu'elles peuvent être lues par la prochaine génération de machines, et la génération de machines qui viennent après. Ce qui nous amène à …

Ne vous attachez pas trop à une seule plateforme

Les plates-formes matérielles sont cool. Les plateformes logicielles sont cool. Nous avons compris. Mais les plates-formes ont une durée de vie, comme le constatent de nombreuses personnes qui dépendent encore de Windows XP. (dans: Pourquoi est-il temps d'abandonner Windows XP.)


Les plates-formes vont et viennent, et si vous êtes enveloppé dans une seule, cela peut être douloureux lorsque vous devez vous déplacer.


Les concepteurs d'Unix ont fait un changement majeur en réécrivant le système en C, un langage de haut niveau, au lieu du langage d'assemblage PDP-7. C pourrait fonctionner sur différentes plates-formes matérielles, faisant d'Unix le premier système d'exploitation pouvant être porté sur différentes plates-formes matérielles avec relativement peu de changements.


Comparez cela avec l'ancien rival d'Unix, VMS, qui était étroitement lié à la première gamme de mini-ordinateurs VAX de Digital Equipment Corporation, puis au processeur Alpha et enfin au processeur Itanium. HP, l'actuel propriétaire des technologies de DEC, a enfin commencé à débrancher VMS.


Unix, sous ses différentes formes, est en plein essor, en particulier sous les différentes versions open-source, notamment Linux.

Bien faire une chose

Les programmes Unix sont conçus pour faire une chose et bien le faire, plutôt que d'essayer d'être tout pour tout le monde. La plupart des programmeurs Unix préfèrent travailler dans un éditeur de texte qui ne fait que modifier du texte, plutôt que dans un IDE complexe.


Les programmes Unix sont conçus comme des filtres pour faire quelque chose à un flux de texte et n'ajouter rien d'autre, formant un pipeline.


Ces applications mobiles fonctionnant sur des smartphones sous Unix? Ils font aussi une chose à la fois.

Donnez à votre public la liberté

La croissance de Linux a également popularisé ce qu'on appelle les mouvements open source et les logiciels libres. Si vous êtes un programmeur qualifié, vous pouvez modifier le code source pour obtenir ce que vous aimez. Mais Unix a toujours été spécial en ce qu'il vous donne la liberté de faire ce que vous voulez sur un ordinateur, même si vous finissez par vous tirer une balle dans le pied. (Certains disent que l'open source est trop beau pour être vrai. Est-ce vrai? Découvrez ici.)

Construire des choses pour travailler ensemble

L'une des caractéristiques distinctives d'Unix est la capacité des shells à rediriger l'entrée et la sortie des commandes vers des «pipelines» complexes. Cela explique l'orientation textuelle de nombreux programmes Unix et pourquoi leur sortie est si laconique.

Automatiser, automatiser, automatiser

Unix a également popularisé le concept de script avec les différents shells, d'abord le shell Bourne, puis le shell C, puis Bash. Un certain nombre de langages de script sont apparus, dont Perl et Python. Si vous automatisez les tâches simples, vous aurez plus de temps à consacrer à des tâches utiles.

Unix a résisté à l'épreuve du temps

Unix a persévéré sous une forme ou une autre depuis 1969 simplement parce que la philosophie qui le sous-tend est irrésistible. Même si vous n'êtes pas programmeur, vous pouvez adopter les vertus de la simplicité et de l'élégance dans n'importe quel projet, que ce soit la gestion, l'administration système ou même dans d'autres domaines de votre vie. Pour un aperçu complet de la philosophie Unix, consultez le livre de Mike Gancarz «Linux et la philosophie Unix». Il regorge de leçons que vous pouvez appliquer à votre travail informatique - et au-delà.

Ce que les gens peuvent apprendre de la philosophie Unix