Explicit Resource Management (using)
JavaScript 🔴 SeniorDefinition
Proposition TC39 Stage 3+ avec le mot-cle using qui appelle automatiquement [Symbol.dispose]() a la sortie du scope. Equivalent du try-with-resources de Java ou using de C#.
Analogie
Un robinet auto-coupant : il se ferme tout seul quand tu quittes la piece, pas besoin de penser a le fermer.
Exemple de code
class FileHandle {
[Symbol.dispose]() {
console.log('File closed');
}
}
{
using file = new FileHandle();
// utiliser file...
} // [Symbol.dispose]() appele automatiquement
Cas d'usage
Gestion de connexions DB, handles fichier, locks, tout ce qui necessite un cleanup garanti.