Identifiant
Mot de passe
Loading...
Mot de passe oublié ?
Je m'inscris ! (gratuit)
Forums
Tutoriels
FAQ
Blogs
Chat
Newsletter
Emploi
Études
Droit
Club
DI/DSI Solutions d'entreprise
DI/DSI Solutions d'entreprise
Big Data
BPM
Business Intelligence
Data Science
ERP / PGI
CRM
SAS
SAP
Sécurité
Droit informatique et entreprise
OnlyOffice
Cloud
Cloud Computing
Oracle
Azure
IBM Cloud
IA
Intelligence artificielle
ALM
ALM
Agile
Merise
UML
Microsoft
Microsoft
.NET
Microsoft Office
Visual Studio
Windows
ASP.NET
TypeScript
C#
VB.NET
Azure
Java
Java
Java Web
Spring
Android
Eclipse
NetBeans
Dév. Web
Développement et hébergement Web
AJAX
Apache
ASP
CSS
Dart
Flash / Flex
JavaScript
NodeJS
PHP
Ruby & Rails
TypeScript
Web sémantique
Webmarketing
(X)HTML
EDI
EDI
4D
Delphi
Eclipse
JetBrains
LabVIEW
NetBeans
MATLAB
Scilab
Visual Studio
WinDev
Visual Basic 6
Lazarus
Qt Creator
Programmation
Programmation
Débuter - Algorithmique
2D - 3D - Jeux
Assembleur
C
C++
C#
D
Go
Kotlin
Objective C
Pascal
Perl
Python
Rust
Swift
Qt
XML
Autres
SGBD
SGBD & SQL
4D
Access
Big Data
Data Science
DB2
Firebird
InterBase
MySQL
NoSQL
PostgreSQL
Oracle
Sybase
SQL-Server
MongoDB
Office
Microsoft Office
Access
Excel
Word
Outlook
PowerPoint
SharePoint
Microsoft Project
OpenOffice & LibreOffice
OnlyOffice
Mobiles
Mobiles
Android
iOS
Systèmes
Systèmes
Windows
Linux
Arduino
Hardware
HPC
Mac
Raspberry Pi
Réseau
Green IT
Sécurité
Systèmes embarqués
Virtualisation
TUTORIELS
FAQ
WEBINAIRES
LIVRES
TÉLÉCHARGEMENTS
SOURCES
DÉBATS
WIKI
DICO
HUMOUR
Voir le texte source
De WikiDeveloppez.
pour
DotNet
Aller à :
Navigation
,
Rechercher
<rubrique id="20" /> [[Catégorie:Langages]] '''Microsoft .NET''' (aussi appelé DotNet) est une plateforme de développement capable de gérer plusieurs systèmes d'exploitations et plusieurs langages intéropérables. == Fonctionnement == Le principe, fortement inspiré de [[Java]], est assez simple. === Source === Chaque langage (C#, VB.NET, F#, J#, C++, JScript.NET et PHP.NET pour les plus connus) a sa propre syntaxe. Les fichiers sources sont ensuite compilés en un même langage de base, le Common Intermediate Language. A ce stade, on ne peut plus distinguer quel langage a été utilisé pour créer le code concerné (sauf en connaissant les habitudes des différents compilateurs). A ce stade, tous les langages sont donc égaux devant les fonctionnalités de DotNET. === Fichiers DLL & EXE === Cela permet de développer chaque partie d'une application avec le langage le plus adapté ou le mieux connu du programmeur, via un processus assez similaire à la jointure de fichiers .OBJ de sources différentes dans le monde du natif, et tout à fait transparent et automatique de la plateforme DotNET. Le passage Natif (API, Applications C++, COM, ...) <> Managé (Platorme .NET) se fait de manière automatique, soit via les interfaces COM, soit via P/Invoke. Ainsi, la compatibilité avec d'anciens systèmes est assurée. === Common Language Runtime === Chaque fichier exécuté invoque le compilateur à la volée (aussi appelé Just-in-time Compiler ou CLR) au démarrage et celui-ci se charge de compiler les parties intéressantes de l'application lorsque cela devient nécessaire. Ainsi, DotNET n'est pas interprété, ce qui serait trop lent, mais gagne en vitesse par rapport à la machine virtuelle de Java. Par ailleurs, il est possible de créer dans certains langages (C++, C#) des portions de code 'unsafe', c'est à dire non-managé. Cela permet, dans certains cas, des optimisations manuelles de certaines parties du code. == Gestion de la sécurité == Les assembly (nom donné aux fichiers DLL et EXE) peuvent être signés numériquement et versionné. Si tel est le cas, l'authenticité de chaque assembly (signé) chargé par votre application sera vérifiée avant le lancement. Ainsi, si un assembly était modifié par un tiers, il deviendrait impossible de lancer l'application. Seulement, il s'avère toujours possible de décompiler une application .NET et de la recompiler après, en ne lui attribuant plus de clé signée. Cela nécessite malgré tout la décompilation et recompilation de tous les assembly qui travaillent avec elle. Pour contrer cela, il faut utiliser des applications d'obfuscation, qui tranforme le CIL généré pour le rendre difficile voire impossible à décompiler. D'où l'importance pour les clients de bien vérifier que les assemblys sont signés avec la clé du fournisseur officiel, et n'ont pas été modifiés par la suite. Cela peut se faire via divers outils. == Performances == DotNET est plus performant que Java car il se base sur des technologies plus récentes et des optimisations plus poussées, mais il reste (en général) plus lent qu'une application native (C++, ...) car il nécessité des outils annexes (Garbage Collector, ...) et une compilation à la volée. .NET apporte par contre la performance pour les langages interprétés comme JScript ou PHP.
Revenir à la page
DotNet
.
Affichages
Page
Discussion
Voir le texte source
Historique
Outils personnels
Identification
Navigation
Accueil
Modifications récentes
Toutes les pages
Aide
Forum Wiki
Rechercher
Boîte à outils
Pages liées
Suivi des liens
Importer un fichier
Pages spéciales
Contacter
le responsable de la rubrique Accueil
Nous contacter
Participez
Hébergement
Publicité / Advertising
Informations légales
© 2000-2024 - www.developpez.com