Dans la terminologie de Microsoft, le managed code est un code source qui s'exécute sous le contrôle de la machine virtuelle CLR, ou d'une autre machine virtuelle. Ce terme est employé par opposition au unmanaged code (code non géré), qui est exécuté directement par le processeur.

Le « managed code » permet d'améliorer la sûreté de fonctionnement d'un programme informatique, et de simplifier le travail du programmeur. Ce terme fait partie de la terminologie Microsoft, mais le même concept existe pour le langage Java.

Le ramasse-miettes est un exemple d'avantage du « managed code » : si le programmeur oublie de libérer de l'espace-mémoire, le ramasse-miette s'en charge, ce qui évite de provoquer des fuites de mémoire invisibles.

Le « managed code » peut aussi permettre par exemple de vérifier que les variables sont bien du type attendu. Ceci ne simplifie pas nécessairement la tâche d'un programmeur, mais permet une meilleure sûreté de fonctionnement.

Les principaux langages de programmation pour écrire du managed code sont C# et Visual Basic .NET.

Analyse du plantage d'un programme

modifier

Le managed code évite des plantages des programmes, mais pas tous. Si, malgré tout, il y a un plantage, il est plus facile à analyser. Avec du code non géré, le plantage se produit bien longtemps après l'erreur (effet bombe à retardement), alors qu'avec du managed code, le plantage se produit plus près de l'emplacement de l'erreur[réf. nécessaire].

Comparatif avec Java

modifier

Le terme de managed code provenant de Microsoft ne fait pas partie de la terminologie Java, mais le même concept existe : du code exécuté dans la JVM bénéficie de plusieurs avantages, dont notamment le ramasse-miettes.

Articles connexes

modifier

Références externes

modifier


📚 Artikel Terkait di Wikipedia

Microsoft .NET

compilation à la volée du « managed code » ou encore à certains aspects de la CLR. Les langages compilés à la volée produisent du code qui peut être plus facilement

C Sharp

intermédiaire, le CIL, puis ce code CIL est transformé en code machine qui sera exécuté par la CLR. Ce code machine est appelé managed code parce que son exécution

Test unitaire

Tests for the .NET Framework with the Microsoft Unit Test Framework for Managed Code - Visual Studio », sur docs.microsoft.com (consulté le 4 septembre 2018)

Global Assembly Cache

Assembly Cache pour les rendre accessibles à COM Interop ou au code non managé (voir Managed code). Explorateur Windows#Cas particulier des répertoires assembly/*

P/Invoke

spécification de l'implémentation de CLI, qui permet au managed code d'appeler du code natif dans les DLL. Le code natif est référencé via les meta-données qui décrivent

Windows Forms

graphique qui est incluse dans le framework .NET, fournissant l'accès via du Managed code à l'API Windows. Depuis la sortie de .NET 3.0 en 2006, Windows Forms

Common Language Infrastructure

réécrire le code des architectures spécifiques. Le code répondant aux spécifications CLI est dit « managed code » en anglais, littéralement « code géré »,

.NET Framework

Processors » (consulté le 2 juin 2008). (en) « Parallel Performance: Optimize Managed Code For Multi-Core Machines » (consulté le 2 juin 2008). Programme d'installation