Vous faites du Java et LINQ vous fait baver d’envie avec sa capacité à requêter une base SQL, du XML, des collections d’objets, des services REST, du CSV et même Google avec une seule et unique syntaxe claire et super simple? Bref, vous voulez faire du LINQ mais ne pouvez ou voulez pas faire du .NET?
Eh bien vous pouvez utiliser Quaere:
Integer[] numbers={5, 4, 1, 3, 9, 8, 7, 2, 0};
Iterable<Integer> lowNumbers=
from("n").in(numbers).
where(lt("n",5).
select("n");
Qui ressemble à son pendant LINQ:
int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
var lowNums =
from n in numbers
where n < 5
select n;
Ca ressemble à du LINQ, n’est-ce pas? Bon, d’accord, on passe des strings sans vérification à la compilation, on ne peut requêter que des tableaux en mémoire ou des bases de manière simple, et il n’y a pas d’IntelliSense pour vous aider à écrire la requête en introspectant les objets. Mais c’est déjà mieux que rien, ma p’tite dame. Parce que faire vraiment comme LINQ ça ne sera possible en Java que quand il y aura les closures, et ce n’est pas pour demain.
Sinon, il y a LINQ en .NET. J’en ai de la chance du faire du .NET.
Comments