Streams

Qu’est-ce qu’une stream d’un point de vue pseudo-mathématique ? C’est une structure de données abstraite avec les opérateurs suivants :

  • append(bytes) → void? : utilisé pour ajouter une donnée ou un groupe de données.

  • readAt(int) → null | bytes : utilisé pour lire à une position donnée où il y a une donnée ou rien.

Soit la règle :

Images/eq05.PNG, pour une définition de ‘==‘
Images/eq06.PNG

Supposons que nous lisons, dans la structure, à une position donnée, et qu’il y a un élément (non vide). Alors si nous relisons à un autre moment, nous retrouvons le même élément.

Nous pouvons conceptualiser la stream comme une liste immuable infinie.

La stream peut donc être représentée schématiquement par un ensemble d’éléments.

Le concept est mis en lumière au XVe siècle par un moine franciscain, Luca Pacioli, ami de Léonard de Vinci. Il révolutionne la comptabilité en présentant en 1494, dans son ouvrage Summa de arithmetica, geometria, de proportioni et de proportionalita, la méthode vénitienne de tenue de compte, aujourd’hui appelée comptabilité à partie double. Cela consiste à faire apparaître une écriture comptable dans deux comptes pour enregistrer le flux comptable (son origine et sa destination), ce qui permet ensuite de créer...

Pour consulter la suite, découvrez le livre suivant :
couv_EPREAJASP.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Introduction
Suivant
Exemple de programmation fonctionnelle en Java