|
Що є. Сітка .Net сам по собі є платформою, реалізованою на основі незалежної платформи розробки публічних мов Common Language Infrastructure (CLI), але з моменту її ставання специфікацією у 2006 році її підтримує лише сама Windows (окрім моно), включаючи мови розробки C#, VB. Net тощо, а також реалізації CLI, .Net Framework. У її основі лежить реалізація Virtual Execution System (VES) на базі Windows CLI. Це має бути еквівалентно віртуальній машині для Java. Розробка C#. Чому Net App не може бути кросплатформенним? Сама Спільна мовна інфраструктура (CLI) розроблена для кросплатформенної роботи. Але спочатку Microsoft мала б відійти від монополії Windows і не мати наміру реалізовувати VES на основі інших ОС, тому розробники C# — це фактично розробники Windows. Система додатків, розроблена C#, фактично базується на платформі Windows. Що таке .Net Core і як він працює на різних платформах? Насправді, поки CLI реалізований на Linux, головним образом на VES, додатки, розроблені на C#, можуть працювати на Linux. Звісно, через минуле. Net Framework надає багато UI-фреймворків, специфічних для Windows, таких як WPF і Windows Forms, і додатки, засновані на цих фреймворках, можуть працювати лише теоретично на Linux, але фактична вартість їх підтримки буде відносно високою, можливо, зовсім нереалістичною. Так народився .Net Core. Net Core — це обрізання .Net Framework (видалення згаданих UI-фреймворків), реалізації CLR, схожого на JRE, а потім VES для кількох операційних систем одночасно, таким чином досягаючи кросплатформенної роботи. Навіщо Microsoft . Net Core Причина, чому Microsoft готова це зробити, певною мірою вимушена або відповідає історичній тенденції. У нинішньому «хмарному» середовищі, завдяки Azure, Microsoft плавно перетворилася з ослабленого бізнесу Windows на постачальника хмарних послуг. Як одна з моделей хмарних сервісів, PaaS має надавати ту ОС, яка потрібна клієнтам, а не лише Windows. Звісно, вона хоче, щоб різні операційні системи Azure запускали додатки, розроблені з використанням наданих ним технологій розробки. Чи буде .Net Core світлим майбутнім? Однак середовище віртуального виконання дозволяє кросплатформенно працювати з розробленими додатками, що JAVA робить з моменту свого заснування. І сьогодні багато новачків у мовах змагаються за красу, а JAVA, яку придбала Oracle, старіє і старіє... C# може справді покладатися на нього для досягнення кросплатформенної гри. Net Core світиться з другою пружиною? Посилання Специфікація CLI http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-335.pdf
|