Ich glaube nicht, dass Sie der einzige sind, der nicht weiß, was .Net ist. Es gibt bereits andere Antworten, die Sie abdecken sollten, aber ich werde diesen Leckerbissen an Informationen für andere herauswerfen.
Um zu sehen, was .Net "wirklich" ist, gehen Sie einfach zu c: \Windows\Microsoft.Net\Framework
Dort finden Sie Ordner, die für die von Ihnen installierte(n) Version(en) spezifisch sind. Gehen Sie zum Beispiel in den Ordner v2.0.xxxxx, wenn Sie diese Version installiert haben.
In diesem Ordner befindet sich das Framework. Sie werden im Wesentlichen eine Reihe von .exe-Dateien und .dll-Dateien sehen. Alle DLL-Dateien, die mit System.*.dll beginnen, sind im Wesentlichen das .Net-Framework.
Die .exe-Dateien, die Sie in diesem Ordner sehen, sind Dienstprogramme für Entwickler und Compiler. Sie haben C# erwähnt. Suchen Sie die Datei csc.exe. Das ist Ihr C#-Compiler.
Die Erstellung eines Programms ist wirklich einfach. Fügen Sie den folgenden Code in eine hello.cs-Datei ein.
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("hello world");
}
}
Geben Sie dann in der Befehlszeile> csc hello.cs ein
Dadurch erhalten Sie eine .exe-Datei. Führen Sie sie aus und sie wird offensichtlich "Hallo Welt" ausspucken.
Die Zeile, in der Console.WriteLine() steht, ruft das Framework auf. Console ist ein Objekt, das im Namensraum System lebt, und WriteLine() ist eine statische Methode.
Dies ist der disassemblierte Code für die Methode Console.WriteLine():
[HostProtection(SecurityAction.LinkDemand, UI=true)]
public static void WriteLine(string value)
{
Out.WriteLine(value);
}
Wenn Leute Dinge sagen wie: "Soll ich PHP oder .Net verwenden?" oder "Soll ich Python oder .Net verwenden", dann wird klar, dass das die falsche Diskussion ist. Sie vergleichen offensichtlich eine Sprache mit einem Framework. C# ist eine Sprache und nur eine der vielen Sprachen, die zum Schreiben von Code auf der .Net-Plattform verwendet werden können. Dieselbe Methode Console.WriteLine() kann von C#, VB.Net, Pascal, C++, Ruby, Python, F# und jeder anderen Sprache aufgerufen werden, die auf der .Net-Plattform läuft.
Ich hoffe, das hilft.
-Keith