Qu’est-ce que .Net ? Que comprend-il principalement ? Cet article résume certains problèmes courants liés à .NET. Bien qu'il soit relativement récent et que la plate-forme .NET se soit développée rapidement au cours des dernières années, les concepts présentés dans cet article sont restés fondamentalement inchangés.
Cet article résume quelques questions et réponses courantes sur .NET. Ces questions fréquemment posées sur .NET seront utiles aux lecteurs qui souhaitent comprendre le concept global de .NET.
1. Qu’est-ce que .Net ? Que comprend-il principalement ?
.Net est une plate-forme informatique et de communication de nouvelle génération conçue pour simplifier le développement d'applications dans l'environnement hautement distribué de l'Internet de troisième génération. Elle est basée sur des normes et protocoles Internet ouverts et atteint une interactivité élevée avec des langages et des plates-formes hétérogènes.
.Net comprend principalement Common Language Runtime et la bibliothèque de classes d'architecture .Net.
2. Quels sont les principaux avantages de Net ?
Les principaux avantages de .Net sont le multilinguisme, le multiplateforme, la sécurité et la prise en charge des normes et protocoles Internet ouverts.
.Net prend en charge l'interopérabilité dans plusieurs langages, c'est-à-dire que les composants développés dans un langage peuvent être réutilisés dans un autre composant via l'héritage orienté objet. Actuellement, .Net prend en charge plus de 20 langages.
.Net réalise l'interopérabilité des objets sur des plates-formes hétérogènes en compilant d'abord chaque langage dans un langage intermédiaire (IL), puis en utilisant un compilateur juste à temps (Just In Time) pour le compiler dans le code de la plate-forme locale pendant l'exécution. Prise en charge de .Net La prise en charge de la plate-forme pour Windows, Linux et Unix est en cours de développement.
.Net implémente les objets de ressources et la sécurité des types via le Common Language Runtime.
.Net fournit une interface de programmation permettant d'obtenir des services à distance, de connecter des appareils distants et d'interagir avec des applications distantes dans des environnements réseau hétérogènes grâce à une prise en charge solide des normes Internet telles que HTTP, XML, SOAP et WSDL.
3. Que signifie le Common Language Runtime dans .Net ?
Le langage d'exécution commun CLR (Common Language Runtime) est le fondement de l'ensemble du framework .net et est la clé pour réaliser les fonctionnalités de base de .Net telles que la sécurité multiplateforme, multilingue et du code. Il s'agit en fait d'un morceau de code d'agent qui réside en mémoire et est responsable de la gestion du code pendant toute l'exécution de .net. Les exemples typiques incluent : la gestion de la mémoire, la gestion des threads, la gestion à distance, le type de sécurité obligatoire du code, etc. Ceux-ci peuvent être appelés la bouée de sauvetage du framework .net. En fait, le runtime en langage ordinaire délègue une partie des fonctions de gestion du système d’exploitation.
4. Qu'est-ce que la bibliothèque de classes d'architecture Net ?
La bibliothèque de classes d'architecture .Netl est construite sur la base des fonctionnalités orientées objet du runtime et constitue une collection de classes réutilisables étroitement intégrées au runtime du langage ordinaire. Il simplifie grandement le développement de logiciels et s'intègre facilement et de manière transparente avec des composants tiers.
La bibliothèque de classes d'architecture .Net inclut principalement la prise en charge des modèles de programmation suivants :
1. Application console.
2. Scripts et applications hôtes.
3. Application Windows Forms (application GUI de bureau Windows).
4. Application ASP.Net.
5. Applications de services Web.
6. Programme de service Windows
5. Quels sont les langages de développement pris en charge par .Net ? Que signifie l'interopérabilité du langage .Net ?
.Net prétend prendre en charge plus de 20 langages sur le marché, mais actuellement, seuls C#, Visual Basic.Net, Managed C++ et Jsript sont officiellement publiés par Microsoft. D'autres fabricants affirment que les outils de support en cours de développement incluent COBOL, Eiffel, Perl. , Smalltalk et Python .
L'interopérabilité du langage .Net fait référence à la prise en charge de l'héritage d'objets dans les langages qui suivent la spécification Common Language Runtime, c'est-à-dire que les classes développées sous la plate-forme .Net dans un langage peuvent être réutilisées dans un autre langage. quelque chose appelé Microsoft Intermediate Language MIL, c'est-à-dire que le compilateur de langage compile d'abord le langage en Microsoft Intermediate Language, puis compile le code natif sous la plate-forme correspondante. Tout cela est effectué selon les spécifications du runtime de langage ordinaire.
6. Quelles plateformes Net prend-il en charge ? Dans quelle mesure sa mise en œuvre multiplateforme est-elle efficace ?
Les plates-formes prenant actuellement en charge .Net incluent Windows 2000, NT4 SP6a, Windows Me et Windows 98. Les plates-formes qu'il prétend prendre en charge incluent Unix, Linux, etc. Il existe actuellement trois projets développant la plate-forme .Net sous Linux : le projet Mono de Ximian, DotGNU et Potable .NET.
7. Quelle est la relation entre .Net et COM ? .Net signifie-t-il la fin de COM ?
COM définit une norme binaire pour la communication entre les objets des composants. .Net fournit un mécanisme similaire via le système de types intégré du composant, qui fournit un autre moyen pour cela. .Net ne signifie pas la fin de COM, mais cela réduira considérablement la dépendance des développeurs à l'égard de COM. .Net prend en charge l'interopérabilité entre les composants COM et .Net. En fait, vous pouvez obtenir des composants COM dans .Net via Runtime Callable Wrapper (RCW) et obtenir .Net dans COM via des composants COM Callable Wrapper (CCW).
8. Qu'est-ce que le langage intermédiaire (IL) dans .Net ? Quel rôle joue-t-il dans la plate-forme .Net ? Les développeurs peuvent-ils programmer en langage intermédiaire (IL) ?
Le langage intermédiaire de .Net fait référence à un ensemble d'instructions qui peuvent être converties en code local via un compilateur juste à temps (Just In Time) selon la spécification d'exécution du langage ordinaire et est indépendant du processeur. Il s'agit d'un maillon essentiel pour réaliser l'interopérabilité des langages dans la plate-forme .Net. Tous les langages de la plate-forme .Net doivent d'abord être compilés en langage intermédiaire (IL). Les programmeurs peuvent également utiliser directement le langage intermédiaire (IL) pour programmer, mais cela n'est pas recommandé. Le langage intermédiaire est très utile pour comprendre certains comportements des objets .Net et des programmes de débogage.
9. Qu'est-ce que le garbage collection automatique dans .Net ? Quels changements apporte-t-il à la programmation sous la plateforme .Net ?
Le garbage collector .Net est responsable des tâches d’allocation de mémoire et de libération pour l’ensemble du code géré du runtime .Net. Il sélectionne les objets et le temps à collecter grâce à un certain algorithme d'optimisation. Les programmeurs ne peuvent effectuer un garbage collection forcé immédiat que lors de la libération d'un grand nombre de ressources gérées, utilisez l'opération Finalize pour les traiter. Celles qui doivent être libérées pendant l'exécution du programme doivent implémenter la méthode Dispose() et créer. c'est clair. À d’autres moments, le recyclage des ressources est confié au garbage collection .Net.
10. Que signifient le code géré et le code non géré de Net ? Quelle est la différence entre leur codage ?
Le code géré de .Net fait référence au code conforme à la spécification Common Language Runtime et est soumis aux agents de code d'exécution en mémoire pour la gestion de la mémoire, la gestion des threads, la gestion à distance et les types de sécurité appliqués par le code. Le code non géré fait référence au code qui fonctionne sur des ressources non gérées telles que la mémoire, les fichiers, les bases de données, etc. Ils ne sont généralement pas gérés par les agents de code d'exécution et ne sont pas sécurisés. Lors de la programmation du code managé, vous devez uniquement vous concentrer sur la logique de programmation, et la gestion des ressources telles que la mémoire est laissée au Common Language Runtime. Cependant, lors de la programmation du code non managé, les développeurs doivent prendre soin de chaque aspect. ressources non gérées.
J'espère qu'après avoir lu les dix questions fréquemment posées sur .NET ci-dessus, vous améliorerez votre compréhension de la plate-forme .NET.
Cet article provient du blog CSDN Veuillez indiquer la source lors de la réimpression : http://blog.csdn.net/thy822/archive/2009/12/23/5061127.aspx.
-