Модернизация классических приложений для Windows 10 с помощью .NET 5

Снимок экрана, на котором показана обложка электронной книги, посвященной модернизации классических приложений.

Редакция 1.0.1 — обновлено для соответствия .NET 5

Обновления книги и вклад сообщества см. в журнале изменений.

ИЗДАТЕЛЬ

Подразделение Microsoft Developer Division, команды разработки .NET и Visual Studio

Подразделение корпорации Майкрософт

One Microsoft Way

Redmond, Washington 98052-6399

© Корпорация Майкрософт (Microsoft Corporation), 2021.

Все права защищены. Запрещается полное или частичное воспроизведение или передача настоящей книги в любом виде или любыми средствами без письменного разрешения издателя.

Эта книга предоставляется на условиях "как есть" и выражает взгляды и мнения автора. Взгляды, мнения и сведения, содержащиеся в этой книге, включая URL-адреса и другие ссылки на веб-сайты, могут изменяться без уведомления.

Некоторые приведенные в книге примеры служат только для иллюстрации и являются вымышленными. Все совпадения с реальными наименованиями, людьми и любыми другими предметами являются непреднамеренными и случайными.

Microsoft и товарные знаки, перечисленные на странице "Товарные знаки" на сайте https://www.microsoft.com, являются товарными знаками группы компаний Майкрософт.

Mac и macOS являются товарными знаками Apple Inc.

Все другие наименования и логотипы являются собственностью своих законных владельцев.

Соавторы:

Олия Гавриш (Olia Gavrysh) , руководитель программ, команда .NET, корпорация Майкрософт

Мигель Анхель Кастехон Домингес (Miguel Angel Castejón Dominguez) , архитектор инновационных продуктов, Kabel

Участники и рецензенты:

Майра Вензел (Maira Wenzel) , старший руководитель программ, команда .NET, корпорация Майкрософт

Энди де Горже (Andy De Gorge) , старший разработчик содержимого, группа разработчиков документации по .NET, корпорация Майкрософт

Мигель Рамос (Miguel Ramos) , старший руководитель программ, команда по платформе разработчиков Windows, корпорация Майкрософт

Адам Браден (Adam Braden) , главный руководитель программ, команда платформы разработчиков Windows, корпорация Майкрософт

Рикардо Мингес Паблос (Ricardo Minguez Pablos) , старший руководитель программ, команда Azure IoT, корпорация Майкрософт

Ниш Анил (Nish Anil) , старший менеджер программ, команда .NET, корпорация Майкрософт

Бет Масси (Beth Massi) , старший менеджер по маркетингу продукции, корпорация Майкрософт

Скотт Хантер (Scott Hunter) , помощник главного руководителя программ, команда .NET, корпорация Майкрософт

Марта Фуэнтес Лара (Marta Fuentes Lara) , Kabel

Рауль Фернандес де Кордоба (Raúl Fernández de Córdoba) , Kabel

Сан Антонио Мануэль Фернáндес Кантос (Antonio Manuel Fernández Cantos) , Kabel

Вступление

Эта книга посвящена стратегиям, которые можно реализовать в целях модернизации существующих классических настольных приложений и внедрения новейших возможностей среды выполнения, языка и платформы. Вы поймете, что уникальной методики нет, так как каждое приложение имеет свои особенности, а у вас есть собственные требования и предпочтения. Хорошо, что существуют общие подходы, которые можно применять для добавления новых функций и возможностей в приложения. Для внедрения некоторых из них даже не потребуется вносить значительные изменения в код. В этой книге мы расскажем о работе всех этих функций в фоновом режиме и объясним механизм их реализации. Кроме того, вы ознакомитесь с рядом стандартных сценариев модернизации существующих классических приложений, которые помогут вам совершенствовать ваши собственные проекты.

Подход корпорации Майкрософт к модернизации существующих приложений заключается в том, чтобы предоставить вам гибкие возможности для создания собственного настраиваемого решения. Все стратегии модернизации, описанные в этой книге, являются в основном независимыми. Вы можете выбрать те, которые подходят для вашего приложения, и не обращать внимания на другие. Иными словами, вы можете отобрать необходимые стратегии в нужном сочетании, которое лучше всего соответствует требованиям вашего приложения.

Для кого предназначена эта книга

Эта книга — для разработчиков и архитекторов решений, стремящихся модернизировать существующие приложения Windows Forms и классические приложения WPF, чтобы использовать преимущества .NET и Windows 10.

Эта книга также может оказаться полезной тем, кто принимает технические решения, например архитекторам корпоративных систем, ведущим разработчикам или руководителям, желающим получить представление о преимуществах обновления существующих классических приложений.

Как пользоваться книгой

Книга отвечает на вопрос о том, зачем модернизировать существующие приложения и какие конкретно преимущества вы получите при использовании NET и MSIX для этой цели. Содержимое книги предназначено для архитекторов и лиц, принимающих технические решения, которые хотят получить общие сведения, но не ставят перед собой задачу детального изучения вопросов реализации и технических особенностей.

В различных главах приводятся примеры фрагментов кода реализации и снимки экранов, а в главе 5 демонстрируется полный процесс миграции на примере нескольких приложений.

Темы, которые выходят за рамки этой книги

В этой книге рассматривается конкретное подмножество сценариев миграции по принципу lift-and-shift, а также определяется вариант получения преимуществ модернизации без переписывания кода.

Книга не посвящена разработке на .NET современных приложений с нуля или началу работы с Windows Forms и WPF. Она акцентируется на обновлении существующих классических приложений с помощью новейших технологий для разработки классических приложений.

Примеры, используемые в этой книге

Чтобы выделить необходимые этапы проведения модернизации, мы будем использовать пример приложения с именем eShopModernizing. У этого приложения есть два варианта — для Windows Forms и WPF, и мы пошагово продемонстрируем модернизацию каждого из них для .NET.

Кроме того, если вы решите пройти пошаговое руководство, вы сможете узнать результаты процесса в репозитории GitHub.

Отправить отзыв

Эта книга и примеры постоянно дополняются, поэтому мы ждем ваших отзывов. Если у вас есть комментарии о том, как можно улучшить эту книгу, используйте раздел отзывов в нижней части любой страницы, созданный на основе проблем GitHub.