Программирование для .NET Core: пошаговое руководство для начинающих

Курс asp net core для проектирования онлайн курсов научит вас этому ремеслу. Как сделать онлайн курс с нуля, привлекать платёжеспособных клиентов коучинг на автопилоте.

Курс доступен в конце статьи.

Программирование для .NET Core

С момента своего первого появления в 2002 году, платформа .NET framework была крупным успехом для Windows. По пути он породил .NET Compact Framework на Windows CE, а также .NET Micro Framework (предназначенный для встроенных устройств с ограниченными ресурсами).

Mono, версия Общеязыковой среды выполнения (виртуальной машины, на которой выполняется .NET-код), и ее компилятор C# были разработаны для операционных систем Linux и Mac. Некоторые разработчики опасались, что Microsoft будет использовать свои патенты, чтобы раздавить Mono (который является частью некоммерческого .NET Foundation), но эти подозрения оказались беспочвенными (по крайней мере, до сих пор). Microsoft купила Xamarin, компанию, которая разработала Mono, и включила его в .NET Core.

Действительно, за последние семнадцать лет был отмечен рост многих проектов с открытым исходным кодом .NET, таких как ASP .NET MVC, ASP .NET Core, Entity Framework, MSBuild, NuGet, .NET Core и другие. Другими словами, это здоровая экосистема для изучения. Давайте кратко рассмотрим .NET Core, в том числе его скорость на различных платформах. Данную среду особенно стоит изучить, учитывая его кросс-платформенные возможности при разработке приложений для ряда устройств и форм-факторов.

Стандарт .NET

Стандарт .NET

Поскольку существует так много различных комбинаций API .NET (включая .NET Framework и Данную среду), Microsoft разработала стандарт, называемый .NET Standard. Это помогает в создании приложений для различных версий .NET. (Нет ничего хуже, чем пытаться переместить приложение, построенное на .Чистые рамки .NET Core на базе Linux и обнаружить, что ты использовал функция, которая не доступна на другой платформе — если вы получаете эту проблему, попробуйте запустить его под моно, который поддерживает множество функций, вплоть до .Чистый рамках 4.7.2.)

Linux курсы

 

 

В таблице на веб-странице .NET Standard перечислены версии .NET Standard (от 1,0 до 2,0) и показано, какие версии платформы совместимы. Если вы хотите написать приложение, которое может быть нацелено на .NET Standard 1.6, это приравнивается к .NET Core 1.0, .NET Framework 4.61, Xamarin.iOS 10.0 и др. Прежде чем начать работу в этой среде, вы обязательно должны прочитать онлайн-документы в первую очередь.

В настоящее время самой высокой стабильной версией .NET Core является 2.2, но с запуском Visual Studio 2019 в начале апреля, корона была взята .NET Core 3.0 , который включает в себя C# 8.0, WPF и WinForms, и многое другое.

Для целей этой статьи я использовал .NET Core 2.2. Вы можете скачать его для своей платформы по выбору (Windows, Ubuntu, Red Hat и др.); просто начните здесь. Я недавно обновил свой Ubuntu до 18.04 LTS и установил на него. Однако, если вы находитесь на Windows, вы также можете установить Данную среду бок о бок с .NET Framework.

В зависимости от вашего вкуса Linux, вам придется добавить команды экспорта, чтобы путь к dotnet работал из любой папки. Инструкции объясняют, что делать (я добавил две строки .bashrc в моей домашней папке).

После установки, быстрый dotnet-h в новом терминале подтвердит, что все работает.

Некоторое осложнение

Любопытно, что я установил Visual Studio 2019 Community Edition на Windows; это предварительная версия, которая поддерживает .NET Core 3.0. Я создал проект, чтобы запустить его на своем ПК с Windows, но я изначально не был успешным с этим, поэтому переключился на 2.2.

Чтобы сравнить скорости (Windows 10 против Ubuntu), я создал программу, используя алгоритм. Он вычисляет Pi на сколько бы цифр вы не указали; я пошел с 10 000 цифр. Я вырезал эту функцию, но просто скопируйте ее из первого ответа на этой ссылке Stack 0verflow:

using System.Diagnostics;
using static System.Console;

        public static string CalculatePi(int digits)
        {...
		  snipped
      }      
        static void Main(string[] args)
        {
            var stw = new Stopwatch();
            stw.Start();
            var piStr = CalculatePi(10000);
            stw.Stop();
            WriteLine($"It took {stw.Elapsed} to calculate pi to 10000 digits");
            WriteLine(piStr);
        }

.

Я скопировал папку решения в Ubuntu, а затем скомпилировал его с терминала.

Для Windows 10 (работает в режиме выпуска), это заняло 5.11 секунд, чтобы запустить. На Ubuntu это заняло 13,67 секунды. Я попробовал его с .NET Core 3.0 на Ubuntu, компилируя решение из командной строки, но получил ошибку. Он составлен после того, как я отредактировал .csproj и изменил его с версии 3.0 на 2.2, а затем запустил компиляцию с sudo, чтобы повысить его.

sudo dotnet build ex3.sln
Microsoft (R) Build Engine version 15.9.20+g88f5fadfbe for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

  Restore completed in 78.9 ms for /home/david/sharedfolder/Code/ex3/ex3/ex3.csproj.
  ex3 -> /home/david/sharedfolder/Code/ex3/ex3/bin/Debug/netcoreapp2.2/ex3.dll

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:02.93

Но из курса .NET Core первые шаги, вам не грозят проблемы таких характеров. (По совпадению, я недавно прочитал статью, в которой предлагалось запускать код в виртуальной машине, такой как VirtualBox или Hyper-V, может повлечь за собой более серьезное наказание за обработку. Это определенно заслуживает дальнейшего изучения.)

Предостережения в .NET Core

Если вы привыкли к простоте ctrl-F5, чтобы дополнительно скомпилировать и запустить программу .NET на Windows, процесс немного fiddlier на Linux. Убедитесь, что проект создан с правильной структурой.

С этим языком команда dotnet terminal является вашим другом и предлагает широкий спектр команд для создания решений и проектов, добавления проектов в решения и, конечно же, компиляции и запуска кода. (Мой опыт работы с Ubuntu заключался в том, что мне почти всегда приходилось использовать sudo dotnet для сборки.)

Еще одна вещь, чтобы отметить: с этой средой, сборки производят.но это не так .примеры, которые выполняются командой dotnet. Из командной строки (на Windows, терминал на Linux) команда dotnet файл.dll будет запускать вашу программу.

Я очень впечатлен VS-кодом на Linux и намерен использовать его для разработки проектов, чтобы преодолеть случайные странности компиляции в терминалах.

Вывод

Я не уверен, что этот язык программирования будет отличным помощником и почему версия Linux работает 2.5 x медленнее; возможно, параметры компилятора различаются между теми, кто работает в Visual Studio и компиляторе командной строки на Ubuntu. Возможно, это имеет какое-то отношение к запуску Ubuntu в виртуальной машине.

Я строил приложения на .NET Core на raspberry-pi, а также запускал их из Mono, и казалось, что почти нет разницы во времени выполнения. Одна вещь, которую я еще не протестировал в microsoft net core — это WinForms на .NET Core 3.0; это первый раз, когда WinForms был развернут на платформах, отличных от Windows, поэтому будет интересно посмотреть. Примечание. хотя приложения WinForms можно компилировать в Visual Studio 2019, в настоящее время редактор WinForms не работает.

Скачать курс .NET Core Первые шаги

О курсе: http://top.sergeyzagorodnikov.ru/proekt-online-course/

После оплаты вас автоматом перекинет на страницу, для скачки.

Если вы вообще заинтересованы в .NET Core framework, подумайте о том, чтобы попробовать его. Это хорошо и стоит вашего времени.

5 3 голоса
Рейтинг статьи

Подписаться
Уведомить о
guest
1 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Владимир
Владимир
7 месяцев назад

Один из моих подписчиков соц. сети посоветовал мне этот курс. Очень хвалили его. Сказал, что очень доходчивый и конкретный, без лишней воды. Я его уже приобрёл и стал изучать и хочу сказать, что вполне достойное обучение.

1
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x