|
Was ist. Netto .Net selbst ist eine Plattform, die auf der unabhängigen Public Language Development Platform Common Language Infrastructure (CLI) basiert, aber seit der Einführung in die Spezifikation im Jahr 2006 unterstützt sie nur noch Windows selbst (außer Mono), einschließlich der Entwicklungssprachen C# und VB. Net usw. sowie CLI-Implementierungen, .Net Framework. Im Kern steht die Implementierung des Virtual Execution System (VES) auf Basis der Windows-CLI. Es sollte einer virtuellen Maschine für Java äquivalent sein. C#-Entwicklung. Warum kann Net App nicht plattformübergreifend sein? Die Common Language Infrastructure (CLI) selbst ist plattformübergreifend konzipiert. Aber anfangs hätte Microsoft aus den Windows-Monopolüberlegungen heraus sein müssen und keine Absicht gehabt, VES auf Basis eines anderen Betriebssystems zu implementieren, also sind C#-Entwickler im Grunde Windows-Entwickler. Das von C# entwickelte Anwendungssystem basiert im Wesentlichen auf der Windows-Plattform. Was ist .Net Core und wie funktioniert es plattformübergreifend? Tatsächlich können Anwendungen, die in C# entwickelt werden, auf Linux laufen, solange die CLI hauptsächlich auf Linux basiert, hauptsächlich auf dessen VES. Natürlich, wegen der Vergangenheit. Net Framework bietet viele UI-Frameworks, die speziell für Windows sind, wie WPF und Windows Forms, und auf diesen Frameworks basierende Apps können theoretisch nur unter Linux laufen, aber die tatsächlichen Kosten für deren Unterstützung werden relativ hoch und vielleicht gar nicht realistisch sein. So wurde .Net Core geboren. Net Core ist ein Ausschnitt des .Net Frameworks (wobei die oben genannten UI-bezogenen Frameworks entfernt werden), eine CLR ähnlich JRE implementiert wird und dann VES gleichzeitig für mehrere Betriebssysteme implementiert wird, wodurch plattformübergreifende Systeme erreicht werden. Warum braucht Microsoft . Net Core Der Grund, warum Microsoft dazu bereit ist, ist bis zu einem gewissen Grad erzwungen oder entspricht dem Trend der Geschichte. In der aktuellen "Cloud"-Umgebung hat sich Microsoft dank Azure nahtlos von einem geschwächten Windows-Unternehmen zu einem Cloud-Dienstleister entwickelt. Als eines der Cloud-Service-Modelle, die es anbietet, muss PaaS in der Lage sein, das Betriebssystem bereitzustellen, das Kunden benötigen, nicht nur Windows. Natürlich möchte es, dass die verschiedenen Betriebssysteme von Azure Anwendungen ausführen, die mit der bereitgestellten Entwicklungstechnologie entwickelt wurden. Wird .Net Core eine vielversprechende Zukunft sein? Die virtuelle Ausführungsumgebung ermöglicht jedoch den plattformübergreifenden Betrieb entwickelter Anwendungen, was JAVA seit seiner Gründung tut. Und heute konkurrieren viele Sprachanfänger um Schönheit, und JAVA, das von Oracle übernommen wurde, wird immer älter... C# kann sich wirklich darauf verlassen, um plattformübergreifend zu sein. Net Core leuchtet mit einer zweiten Feder? Referenz CLI-Spezifikation http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-335.pdf
|