|
Vad är. Nät .Net är i sig en plattform implementerad baserat på den oberoende plattformen Common Language Infrastructure (CLI) för utveckling av offentliga språk, men sedan det blev en specifikation 2006 är det endast Windows som stöder det (förutom mono), inklusive utvecklingsspråken C#, VB. Net, etc., samt CLI-implementationer, .Net Framework. I kärnan är implementeringen av Virtual Execution System (VES) baserat på Windows CLI. Det borde vara likvärdigt med en virtuell maskin för Java. C#-utveckling. Varför kan inte Net App vara plattformsoberoende? Common Language Infrastructure (CLI) är i sig designad för plattformsoberoende samarbete. Men i början borde Microsoft ha varit utanför Windows-monopol och hade ingen avsikt att implementera VES baserat på andra operativsystem, så C#-utvecklare är i princip Windows-utvecklare. Applikationssystemet som utvecklats av C# baseras i princip på Windows-plattformen. Vad är .Net Core och hur fungerar det plattformsoberoende av plattform? Faktum är att så länge CLI är implementerad baserat på Linux, främst dess VES, kan appar utvecklade i C# köras på Linux. Självklart, på grund av det förflutna. Net Framework erbjuder många UI-ramverk specifika för Windows, såsom WPF och Windows Forms, och appar baserade på dessa ramverk kan teoretiskt bara köras på Linux, men den faktiska kostnaden för att stödja dem kommer att vara relativt hög, kanske inte alls realistisk. Så .Net Core föddes. Net Core är en beskärning av .Net Framework (där de UI-relaterade ramverk som nämnts ovan), implementeras en CLR liknande JRE, och sedan implementeras VES för flera operativsystem samtidigt, vilket möjliggör plattformsöverskridande nätverk. Varför behöver Microsoft . Net Core Anledningen till att Microsoft är villig att göra detta är, till viss del, påtvingad eller i linje med historiens trend. I den nuvarande "molnmiljön" har Microsoft, tack vare Azure, smidigt förvandlats från ett försvagat Windows-företag till en molntjänstleverantör. Som en av molntjänstmodellerna de tillhandahåller måste PaaS kunna tillhandahålla det operativsystem som kunderna behöver, inte bara Windows. Självklart vill de att de olika operativsystemen på Azure ska köra applikationer som utvecklats med den utvecklingsteknologi de tillhandahåller. Kommer .Net Core att bli en ljus framtid? Den virtuella exekveringsmiljön möjliggör dock plattformsoberoende drift av utvecklade applikationer, vilket JAVA har gjort sedan starten. Och idag konkurrerar många nybörjare inom språket om skönhet, och JAVA, som köptes upp av Oracle, blir äldre och äldre... C# kan verkligen förlita sig på det för att uppnå plattformsoberoende effekter. Net Core lyser med en andra fjäder? hänvisning CLI-specifikation http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-335.pdf
|