Je ne vois vraiment pas bien la différence entre C #, C # .NET et la même chose pour ASP et les autres langages '.NET'.
D'après ce que j'ai compris, .NET est une bibliothèque / structure de ... choses. Je pense qu’ils ont essentiellement accès aux données Windows telles que les éléments de formulaire, etc., mais cela ne semble pas s’appliquer à ASP.NET.
De plus, je vois des gens s’appeler eux-mêmes des développeurs .NET. Est-ce que cela signifie qu'ils parlent couramment C #, ASP et d'autres langages?
Enfin, je ne vois jamais C # sans .NET attaché. C # est-il étroitement lié à .NET pour être inutilisable sans lui?
En résumé: que propose exactement .NET? Quel est le lien avec C # et ASP, etc.? Que veut dire "développeur .NET"? Et enfin, pourquoi ne voyez-vous jamais C # sans .NET?
[En passant, je me rends compte que ce sont des questions multiples, mais je pense qu'elles sont très liées (ou du moins c'est l'impression que la navigation parmi les programmeurs / SO etc. m'a donné)].
.NET est un framework de développement d’applications qui contient de nombreuses bibliothèques contenant de nombreuses fonctionnalités.
C # est un langage créé pour être utilisé avec .NET. Ce n'est pas le seul langage compatible .NET - les autres options incluent VB.NET, F #, Managed C ++, IronRuby et IronPython. Vous écrivez du code dans la langue de votre choix pour utiliser les fonctionnalités du framework .NET.
ASP.NET est une extension de .NET qui vous aide à écrire des applications et des sites Web. Une grande partie du cadre général est disponible (ou utile, dans le cas de WinForm par exemple) dans ce contexte.
[Classic] ASP est un framework Web plus ancien, également de Microsoft. Malgré les noms similaires, ASP et ASP.NET sont assez différents sous le capot. Une différence notable est que vos seules options de langage pour ASP sont VBScript et JScript. ASP est une technologie ancienne et obsolète, ne vous en faites pas.
la source
Tout d’abord, .Net est un framework de bytecode, similaire au bytecode Java. Cependant, Net n’est que BYTECODE. Il n'y a pas de langue officielle ".Net". Les deux langues principales ciblant .Net sont C # et VB.Net. ASP.Net est une extension de la bibliothèque .Net fournie pour permettre aux applications écrites en C # ou VB.Net (ou dans d’autres langues ciblées par .Net) de fonctionner en tant que site Web.
Les développeurs qui disent connaître .Net veulent généralement dire connaître C # ou VB.Net, ou les deux, et peuvent facilement apprendre celui qu'ils ne connaissent pas (C # et VB.Net sont des langages extrêmement similaires, hormis la syntaxe générale)
Enfin, ASP N'EST PAS le même qu'ASP.Net. Ils ont d'énormes différences
la source
Comme une seule réponse mentionne Mono sans entrer dans les détails:
Bien que C # en tant que langage ait été initialement développé par Microsoft dans le cadre de .NET Framework, il a ensuite été normalisé par ECMA , ce qui signifie que des implémentations indépendantes du langage, conformes aux normes, peuvent être développées. Le plus important d'entre eux est Mono .
Mono est une implémentation à source ouverte d'un ensemble d'outils conformes au standard ECMA compatible avec .NET Framework, notamment un compilateur C # et une implémentation CLI (Mono Runtime, l'équivalent du CLR de Microsoft - la machine virtuelle de .NET Framework). Son objectif est d'exécuter des applications .NET multiplates-formes. À ce jour, il prend en charge C # 4.0 et une partie substantielle des fonctionnalités de .NET Framework . En plus de refléter l’implémentation de Microsoft, l’équipe Mono innove elle aussi.
Donc, oui, il est possible et faisable de travailler en C # sans .NET. Il est toutefois peu probable que Mono puisse rivaliser avec la part de marché de Microsoft et la position de .NET Framework, pas maintenant, ni dans un avenir immédiat.
la source
Le livre de Jon Skeet, C # In Depth, décompose succinctement .NET. Il est souvent utilisé en relation avec
la source
les autres réponses expliquent bien chaque technologie, mais je pense qu’elles manquent l’un des principaux motifs de confusion. C # et C # .NET sont essentiellement synonymes, cependant VB.NET et VB sont différents, ainsi qu'ASP et ASP.NET sont également différents. VB fait généralement référence à VB6 et plus, et ASP à ASP classique. Ces technologies ont été radicalement repensées avec la publication du framework .NET et plutôt que de proposer de nouveaux noms pour les produits que Microsoft a ajouté .NET à peu près à tout, mais C # était également nouveau, de sorte que les deux noms font vraiment référence à la même chose.
la source
Vous devez différencier les langages, les frameworks, les CLR, les patterns et les méthodes de programmation.
ASP.Net utilise un modèle de programmation complètement différent du développement Winforms bien qu'ils partagent la même base. Vous pouvez programmer des applications ASP.net et .Net dans différentes langues.
Ensuite, il y a Mono et le langage C # utilisés dans le contexte Mono - cela mérite probablement des recherches.
Lisez ces liens:
http://en.wikipedia.org/wiki/Common_Language_Runtime
http://en.wikipedia.org/wiki/.NET_Framework#Alternative_implementations
http://en.wikipedia.org/wiki/File: Overview_of_the_Common_Language_Infrastructure.svg
la source