


Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework
Es ist fast 15 Jahre her, seit Microsoft im Jahr 2002 die .NET-Plattform auf den Markt gebracht hat. Im Zuge der schnellen Iteration des Internets wurden viele Sprachen eliminiert und weitere neue Sprachen entstanden, aber .Net ist es Steht immer noch fest auf der Systementwicklungsplattform Im First-Line-Lager steht mit der kommenden offiziellen Version von .NET Core (27. Juni 2016) eine neue Frühlingsrunde bevor.
A. NET Frameworks
Um .NET Core zu verstehen, ist es notwendig, die vielen Frameworks der vorherigen .NET-Plattform zu verstehen. Im Jahr 2002 veröffentlichte Microsoft das erste .NET Framework – .NET Framework. Kurz darauf veröffentlichte es .NET Compact Framework für die Verwendung auf kleineren mobilen Geräten (Windows Mobile), und .NET Compact Framework enthält auch ein .NET-ähnliches Framework Framework-System (Runtime, Framework, Application Model), eine vereinfachte Version des .NET Framework. In den letzten Jahren hat Microsoft kontinuierlich mehrere Frameworks eingeführt, die dem .NET Framework ähneln, um auf verschiedenen Geräten und Plattformen ausgeführt zu werden. Jedes Framework verfügt über ein ähnliches System, das jedoch nicht genau gleich ist. Daher gibt es immer mehr Frameworks. Für Entwickler müssen unterschiedliche Geräte mehrere Codesätze verwalten, selbst wenn sie über dieselben Funktionen verfügen, was die Komplexität der Entwicklung erhöht.
2. Die Einführung von .NET Core
Das Umdenken und die Verbesserung dieser Probleme durch Microsoft ermöglichte die Entstehung von .NET Core.
.NET Core ist ein modulares Open-Source-Framework. Unabhängig davon, ob Web- oder Mobilgeräte entwickelt werden, laufen alle unter demselben Framework (.NET Core) und .NET Core kann auch auf verschiedenen Betriebssystemen ausgeführt werden. einschließlich Windows, Linux, MacOS, um plattform- und geräteübergreifend zu arbeiten.
Was noch besser ist, ist, dass .NET Core das Framework beim Veröffentlichen des Programms nicht vorab installieren muss, sondern es über Nuget herunterlädt. Auf diese Weise ist bei der ersten Bereitstellung keine komplexe Installation erforderlich riesiges Framework, aber laden Sie es bei Bedarf herunter. Dieses Nuget-basierte On-Demand-Laden macht .NET Core plattformübergreifend.
Das .NET Core-Kompositionssystem ist wie folgt:
1. Laufzeit
In .NET sind zwei Arten von RunTime implementiert Core, NativeRuntime und CoreCLR. NativeRuntime konvertiert C#- oder VB.net-Code direkt in nativen Maschinencode. CoreCLR ist eine Open-Source-JIT-Laufzeitumgebung, die den Code in eine Zwischensprache (Intermediate Language, IL) kompiliert und ihn dann zur endgültigen Laufzeit in Maschinencode umwandelt.
2. Unified BCL
Basisklassenbibliothek ist die Basisklasse, wie Dateisystem, Konsole, XML-Operationen usw.
3. Windows Store AppModel & Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework Core 1.0
Bietet eine Reihe grundlegender Bibliotheken für die Entwicklung verschiedener Touchscreen-Geräte und Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework-Programme für Windows-Systeme.
Drei Die Beziehung zwischen .NET Core und anderen .NET Frameworks
1 .NET Core und .NET Framework
.NET Core und .NET Framework sind beide Implementierungen der NET-Standardbibliothek, die andere ist einzigartig für Windows. Zusätzlich zur Implementierung der NET-Standardbibliothek sind sowohl .NET Core als auch .NET implementiert Frameworks sind jeweils mit einer eigenen, einzigartigen Implementierung ausgestattet. Die .NET-Standardbibliothek ist der Schlüssel zu betriebssystemübergreifenden Funktionen. Sie definiert eine Reihe von Schnittstellen, und jedes Betriebssystem verfügt über eine eigene Implementierung. .NET Core kann die Implementierung des aktuellen Betriebssystems dynamisch über Nuget herunterladen und so eine betriebsübergreifende Funktionalität erreichen Systeme (mit gemeinsamer Codefreigabe über Betriebssysteme hinweg).
.NET Core basiert stärker auf Nuget und ermöglicht lokalen Anwendungen, erforderliche Klassenbibliotheken während der Bereitstellung dynamisch herunterzuladen. Das .NET Framework muss im System vorinstalliert sein. Auf diese Weise ist die Bereitstellung von .NET Core einfacher, schneller und leichter als die von .NET Framework.
2 .NET Core & Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework
Auf dem Bild oben können Sie sehen, dass Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework Core zwei Formen hat:
Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework Core Web Application (.NET Core)
Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework, das von .NET Core abhängt, kann nur die API von .NET Core aufrufen, die auf mehreren verwendet werden kann Betriebssysteme laufen. (可见下图下半部分的Reference Manager,在assemblies中没有.NET Framework 中的库)
Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework Core Web Application (.NET Framework)
Eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework, das von .NET Core und .NET Framework abhängt, kann .NET Core aufrufen& Die .NET Framework API kann nur unter Windows ausgeführt werden. (In der oberen Hälfte des Bildes unten sehen Sie den Referenzmanager, der alle Bibliotheken im .NET Framework in den Assemblys enthält)
3.NET Core & Mono
Mono ist eine Implementierung der Open-Source-Version von .NET Framework. In einigen Funktionen ist es .NET Core sehr ähnlich, z. B. Open Source und Cross-Operating Systeme. Derzeit wird .NET CORE von Monos Erfahrung lernen und sich weiterentwickeln und schließlich auch auf anderen Betriebssystemen als Windows besser laufen können. Darüber hinaus unterstützt Mone mehr App-Modelle als .NET Core (z. B. Windows Forms).
Zusammenfassung
Microsoft-CEO Satya Nadella hat klugerweise beschlossen, die PC-Konzentration aufzugeben, verschiedene Geräte und Plattformen zu nutzen und ein Software-Dienstleistungsunternehmen zu werden. Um diese Vision zu verwirklichen, muss eine neue Microsoft-Ökokette aufgebaut werden, die Windows, Linux, OS X und andere Betriebssysteme umfasst und Prozessoren wie X86/ARM und verschiedene Geräte (einschließlich PCs, Telefone, holografische Brillen und andere) abdeckt. Diese zeigen den „Ehrgeiz“ von Microsoft. Da die offizielle Veröffentlichung von .NET Core einen großen Schritt nach vorne macht, warten wir ab und warten auf den 27. Juni.
Das Obige ist eine kurze Analyse von .NET Core und seiner Beziehung zum .NET Framework. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn).

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Die Nutzungsmethoden von Symbolen in der C-Sprachabdeckung Arithmetik, Zuordnung, Bedingungen, Logik, Bitoperatoren usw. werden für grundlegende mathematische Operationen verwendet, Zuordnungsoperatoren werden zur Zuordnung und Addition verwendet, Subtraktion, Multiplikationszuordnung und Abteilungszuweisung, Zustandsbetreiber werden für Unterschiede verwendet. Logische Operationen werden verwendet. Logische Operationen werden verwendet. Logische Operationen werden verwendet. Zeiger, Markierungen am Ende der Datei und nicht numerische Werte.

Der Unterschied zwischen Multithreading und Asynchron besteht darin, dass Multithreading gleichzeitig mehrere Threads ausführt, während asynchron Operationen ausführt, ohne den aktuellen Thread zu blockieren. Multithreading wird für rechenintensive Aufgaben verwendet, während asynchron für die Benutzerinteraktion verwendet wird. Der Vorteil des Multi-Threading besteht darin, die Rechenleistung zu verbessern, während der Vorteil von Asynchron nicht darin besteht, UI-Threads zu blockieren. Die Auswahl von Multithreading oder Asynchron ist von der Art der Aufgabe abhängt: Berechnungsintensive Aufgaben verwenden Multithreading, Aufgaben, die mit externen Ressourcen interagieren und die UI-Reaktionsfähigkeit asynchron verwenden müssen.

In C wird der Zeichenentyp in Saiten verwendet: 1. Speichern Sie ein einzelnes Zeichen; 2. Verwenden Sie ein Array, um eine Zeichenfolge darzustellen und mit einem Null -Terminator zu enden. 3. Durch eine Saitenbetriebsfunktion arbeiten; 4. Lesen oder geben Sie eine Zeichenfolge von der Tastatur aus.

Das Char -Array speichert Zeichensequenzen in der C -Sprache und wird als char Array_name [Größe] deklariert. Das Zugriffselement wird durch den Einweisoperator weitergeleitet, und das Element endet mit dem Null -Terminator '\ 0', der den Endpunkt der Zeichenfolge darstellt. Die C -Sprache bietet eine Vielzahl von String -Manipulationsfunktionen wie Strlen (), Strcpy (), Strcat () und strcmp ().

In der C -Sprache werden Sonderzeichen durch Escape -Sequenzen verarbeitet, wie z. B.: \ n repräsentiert Linienbrüche. \ t bedeutet tab charakter. Verwenden Sie Escape -Sequenzen oder Zeichenkonstanten, um Sonderzeichen darzustellen, wie z. B. char c = '\ n'. Beachten Sie, dass der Backslash zweimal entkommen muss. Verschiedene Plattformen und Compiler haben möglicherweise unterschiedliche Fluchtsequenzen. Bitte wenden Sie sich an die Dokumentation.

In der C -Sprache kann die char -Typ -Konvertierung direkt in einen anderen Typ konvertiert werden, wenn: Casting: Verwenden von Casting -Zeichen. Automatische Konvertierung des Typs: Wenn ein Datentyp einen anderen Werttyp berücksichtigen kann, wandelt der Compiler diese automatisch um.

In der C -Sprache ist der Hauptunterschied zwischen char und wchar_t die Zeichencodierung: char verwendet ASCII oder erweitert ASCII, wchar_t Unicode; char nimmt 1-2 Bytes auf, wchar_t nimmt 2-4 Bytes auf; char ist für englischen Text geeignet. Wchar_t ist für mehrsprachige Text geeignet. char ist weithin unterstützt, wchar_t hängt davon ab, ob der Compiler und das Betriebssystem Unicode unterstützen. char ist in der Charakterbereich begrenzt, WCHAR_T hat einen größeren Charakterbereich und spezielle Funktionen werden für arithmetische Operationen verwendet.

Es gibt keine integrierte Summenfunktion in der C-Sprache, daher muss sie selbst geschrieben werden. Die Summe kann erreicht werden, indem das Array durchquert und Elemente akkumulieren: Schleifenversion: Die Summe wird für die Schleifen- und Arraylänge berechnet. Zeigerversion: Verwenden Sie Zeiger, um auf Array-Elemente zu verweisen, und eine effiziente Summierung wird durch Selbststillstandszeiger erzielt. Dynamisch Array -Array -Version zuweisen: Zuordnen Sie Arrays dynamisch und verwalten Sie selbst den Speicher selbst, um sicherzustellen, dass der zugewiesene Speicher befreit wird, um Speicherlecks zu verhindern.
