Domaines de l’informatique

Introduction

Les ordinateurs sont partout de nos jours. Peu de technologies ont révolutionné notre monde comme l’ont fait les ordinateurs. De votre machine à café aux superordinateurs en passant par les rovers sur Mars, ils ont contribué à l’une des plus grandes transformations de notre mode de vie.

Dans cet article, je vais vous présenter les différents domaines de l’informatique. Je ne pourrai pas vous fournir une liste exhaustive de tous ces domaines, mais j’espère vous donner une idée de ce dont il s’agit.

L’informatique théorique

Avant le métal, les bits et les pixels, il y a les mathématiques. J’ai tendance à considérer l’informatique comme des mathématiques appliquées, car c’est tout ce que fait un ordinateur : il calcule. Des théories fondamentales au fonctionnement de l’ordinateur, les mathématiques sont partout.

L’algèbre de Boole est une des théories fondamental en informatique. Introduite par George Boole en 1847, elle définit un langage mathématique qui sert désormais de base à la modélisation du comportement des circuits électroniques. En booléen, tout est soit activé (1), soit désactivé (0). Une machine à café simplifiée pourrait fonctionner de la manière suivante : verser du café SI suffisamment d’eau ET le type de café est sélectionné ET le bouton de démarrage pressé. Votre café ne sortira de la machine que si ces trois conditions sont réunies; si elles sont activées. Dans la vie réelle, les circuits peuvent être assez compliqués, avec de nombreuses conditions et interactions entre elles.

Ce circuit peut ajouter deux nombres de 8 bits

L’algèbre binaire est une extension de l’algèbre booléenne simple qui permet d’effectuer des opérations arithmétiques classiques à l’aide de nombres binaires. Les nombres binaires sont vraiment simples ; ils sont comme les nombres décimaux, sauf qu’il n’y a que deux chiffres, 0 et 1. Ainsi, lorsqu’on compte en binaire, on commence par 0, puis 1, puis … 10, car on ne peut pas utiliser 2. Ensuite, vous pouvez continuer, 11, 100, 101, 110, 111, … En décimal, les nombres sont définis avec des puissances de 10 (1,10,100,1000, …) donc :

56752 = 5*10000 + 6*1000 + 7*100 + 5*10 + 2*1. 

En binaire, on utilise des puissances de 2 (1,2,4,8,16,32,…) donc :

1001001 en binaire = 1*64 + 0*32 + 0*16 + 1*8 + 0*4 + 0*2 + 1*1 = 73 en décimal.

L’addition de deux nombres de 8 bits fonctionne comme en décimal.

Enfin, la cryptographie est un autre domaine théorique de l’informatique. Si les techniques de cryptographie existent depuis les Romains, ce n’est qu’avec les progrès de l’informatique que ce domaine a vraiment pris son essor. La cryptographie consiste à rendre l’accès à certaines informations impossible pour la mauvaise personne et très facile pour la bonne personne. Un exemple est la factorisation, la factorisation de 52022731 nous donne deux nombres premiers 7789 et 6679. Il est très difficile de trouver ces nombres, mais si je vous en donne un, vous pouvez facilement trouver l’autre en faisant 52022731/6679 = 7789. C’est ce type d’asymétrie en termes de difficulté qui rend la cryptographie possible ; il est facile d’ouvrir la serrure si vous avez la clé et très difficile sinon.

Exemple de cryptographie romaine

Ces cadres théoriques, et bien d’autres, constituent une base à partir de laquelle on peut construire des ordinateurs. Ce sont souvent les mathématiciens et les philosophes qui fournissent ces théories.

Le matériel informatique

Assez de mathématiques, passons aux choses tangible. Les ordinateurs sont des machines physiques et, en tant que telles, elles suivent les règles de l’univers. Ainsi, lors de la fabrication des ordinateurs, la physique joue un rôle important afin d’assurer que tout fonctionne. Les ordinateurs sont si rapides de nos jours que la vitesse limitée de la lumière devient problématique. En effet, lorsqu’un processeur fonctionne à 5 GHz, un fil de trop long peut causer un retard de l’information. De plus, les transistors sont devenus si petits qu’ils sont désormais constitués de quelques dizaines d’atomes. Il est impossible de comprendre à quel point les processeurs modernes sont petits et complexes.

Ce dédale dans le circuits allonge le ligne pour augmenter le temps de parcours du signal.

En outre, les ingénieurs pensent également à l’utilisation du materiel. Le circuit de votre machine à café et celui des rovers sur Mars diffèrent grandement dans la manière dont ils ont été construits et dans quel but. Par exemple, les ordinateurs quantiques expérimentaux de D-wave fonctionnent dans un environnement proche du zéro absolu et utilisent du niobium au lieu du cuivre pour câbler le système. En effet, le niobium agit comme un supraconducteur à des températures proches de 0K°, ce qui signifie qu’il ne produit que peu ou pas de chaleur due à l’électricité. Ce type d’ingénierie extrême nous conduira un jour à une nouvelle révolution dans le domaine de l’informatique.

À l’intérieur d’un ordinateur quantique D-Wave, le processeur est suspendu en l’air pour réduire le transfert de chaleur avec le monde extérieur.

Internet est en soi l’une des plus grandes inventions de l’humanité. La complexité qui se cache derrière nos écran est presque inimaginable. Des milliers de kilomètres de câbles sous les océans, des satellites, des routeurs, des centres de données, etc. Internet est une machine complexe de la taille de notre planète et avec les satellites Starlink d’Elon Musk, il n’y aura bientôt plus un seul endroit sur terre sans accès à l’internet.

Les câbles Internet sous les océans

La création de circuits, de processeurs et de réseaux est une tâche complexe qui exige de nombreuses connaissances pratiques sur les matériaux, l’électricité, la thermodynamique, etc. C’est le travail de l’ingénieur de créer ces outils.

[the_ad id= »1647″]

Les logiciels informatique

Une fois que vous avez la théorie et le matériel, vous pouvez commencer à créer des programmes. Ainsi, une grande partie de l’informatique concerne le codage. Un programme est composé d’instructions, si vous cliquez sur ce bouton, ouvrez cette fenêtre, envoyez un e-mail, ou éteignez l’ordinateur. Les programmes peuvent être large comme les systèmes d’exploitation (Windows, IOS, Linux), moyens comme un navigateur ou un traitement de texte, ou petits comme le programme de votre machine à café. Cependant, ils fonctionnent tous selon un ensemble de règles définies par leur code source.

Exemple de code Python

Certains programmes peuvent être assez complexes et nécessite des connaissances avancées. Notamment les systèmes basé sur l’intelligence artificielle capables d’apprendre à partir d’exemples ou des systèmes de vision par ordinateur pour la reconnaissance faciale ou la reconstruction d’images. Le calcul scientifique est un cas particulier de programmation pour les superordinateurs. Il nécessite une coordination avancée entre de nombreuses unités de calcul. Ces programmes comprennent la simulation de l’univers ou la découverte de nouvelles interactions entre molécules.

Une simulation de la collision entre deux galaxies

Développer des programmes et écrire du code est une tâche complexe et abstraite. C’est le travail des programmeurs d’écrire du code.

Conception d’interface

La plupart des ordinateurs et des programmes sont conçus pour des personnes lambda; c’est pourquoi beaucoup d’efforts sont consacrés aux interactions homme-machine. Par exemple, en mettant en évidence les boutons lorsque vous les survolez avec la souris pour vous montrer que vous pouvez interagir avec eux, ou en utilisant des images ou des noms d’anciennes technologies pour aider les utilisateurs à comprendre ces nouveaux outils. Certaines icônes de votre smartphone ont probablement l’image d’un ancien téléphone. Concevoir des interfaces et des sites web faciles à comprendre est un travail difficile, mais le faire correctement peut être la différence entre une application ratée et une application réussie.

WhatsApp a toujours l’image d’un vieux téléphone dans son logo.

La création d’une interface dont l’utilisation est intuitive pour la plupart des utilisateurs exige une compréhension de la psychologie humaine et la capacité de dessiner de manière professionnelle. C’est le travail des designers de concevoir des interfaces.

Conclusion

Dans cet article, je vous ai présenté quatre couches de l’informatique, en commençant par les mathématiques sous-jacentes et en terminant par l’étude des interactions homme-machine. L’informatique est un sujet vaste et complexe et deux personnes travaillant dans ce domaine partagent souvent peu de compétences communes. Il existe de nombreux autres sujets que nous n’avons pas abordés, comme la modélisation 3D, la réalité virtuelle, la sécurité informatique, la science des données, etc.

Judicael Poumay (Ph.D.)