Microsoft представила Project Reunion — единую платформу для разработки под Windows Статьи редакции

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

На конференции Build 2020 Microsoft анонсировала платформу для разработки Project Reunion, которая призвана упростить разработку приложений для Windows 10, рассказали vc.ru в компании.

Раньше разработчикам приходилось выбирать между классической архитектурой Win32, совместимой с прошлыми версиями Windows, и Universal Windows Platform, работающей на Windows 10. Новая платформа должна объединить программные интерфейсы Win32 и Universal Windows Platform и сохранить обратную совместимость.

Также разработчики с помощью Project Reunion смогут обновить уже существующие приложения независимо от того, на каком языке программирования они написаны — на C++, React Native или .NET. При этом API-интерфейсы будут отделены от системы, чтобы обеспечить корректную работу приложений независимо от версии Windows 10.

Один из первых компонентов Project Reunion — нативная библиотека интерфейса WinUI 3, с помощью которой приложение будет корректно адаптироваться и масштабироваться в зависимости от устройства.

Также в состав Project Reunion включен компонент WebView2 — с его помощью любое приложение Windows будет поддерживать веб-контент через встроенный Microsoft Edge и Chromium.

Примеры использования и подробности Project Reunion доступны на GitHub.

Также Microsoft анонсировала, что подсистема Windows для Linux получит поддержку видеокарт и возможность прямого запуска приложений Linux с графическим интерфейсом.

0
38 комментариев
Написать комментарий...
ILoveVC

Т.е. сначала сделали "Универсальную Windows-платформу", чтобы можно было разрабатывать приложения сразу для всех устройств на Windows 10. А теперь сделали "единую-универсальную-универсальную", чтобы можно было разрабатывать приложения сразу для всех устройств на Windows 10, и имеющую обратную совместимость с абсолютно всеми устройствами на Windows 10

Ответить
Развернуть ветку
Kelerius

А я как всегда буду выбирать в списке "Классическое WPF приложение".

Ответить
Развернуть ветку
Voin Mraka

да WPF это прошлый век, щас модно MFC :]

Ответить
Развернуть ветку
Michael Golovastikov

Да

Ответить
Развернуть ветку
Лунатик

Красавцы!

Ответить
Развернуть ветку
Anton Smets

Microsoft правит балом 🙃

Ответить
Развернуть ветку
ILoveVC

Microsoft плодит новые несовместимые сущности, чтобы потом с пафосом их объединить, по факту создав еще одну "объединенную" сущность, несовместимую с предыдущими

Ответить
Развернуть ветку
Anton Smets

Ну да, ну да. Когда они выпустили вскод все особо добрые писали "зачем нам ещё один редактор кода", когда они купили гитхаб, все писали "они убьют отличный сервис".

Ответить
Развернуть ветку
ILoveVC

Ну например сделали .Net Framework, потом "кроссплатформенный" .Net Core. Подумали подумали, и сделали еще один третий - .Net standard, якобы "to rule them all". По факту теперь при создании проекта приходится выбирать один из трех.

Ну или например выбор между Windows Forms, Universal Windows Platform, Windows Presentation Foundation. Что из этого выбрать нового проекта, что изучать? Кажется слово Universal говорит само за себя. АН нет. Идет только на WIn 10. Ну думаешь хер с ним. Потом например для твоего кейса надо разработанное приложение  запустить на серваке. Ну думаешь вроде Windows Server 2019 это та же десятка. Но НЕТ! UWP там без танцев с бубном не идет!!!

Ответить
Развернуть ветку
Андрей Захаров
Ну например сделали .Net Framework, потом "кроссплатформенный" .Net Core.

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

.Net Core кросс платформенный безо всяких кавычек. 

Подумали подумали, и сделали еще один третий - .Net standard,

Это не так. 

.Net standard - это не фреймворк, а просто набор спецификаций. Версия API, если угодно. Так что по факту фрейворков два:

1) .Net
2) .Net Core

По факту теперь при создании проекта приходится выбирать один из трех.

Не приходится и уже давно.

Скоро останется только один фреймворк, .Net будет легаси.

Для разработки сейчас нужно брать нужно .Net Core, в нём работает нынче даже десктопная разработка (WPF).

у или например выбор между Windows Forms, Universal Windows Platform, Windows Presentation Foundation.

Тут всё элементарно. Если хочешь в магазин то UWP, если хочешь совместимости со старыми версиями Windows или имеющимися компонентами - то WPF. 

WF выбирать смысла нет для изучения совсем, ну разве что для любителей компьютерной археологии))

Ответить
Развернуть ветку
ILoveVC

А WPF приложения заведутся на WIndows Server?

Ответить
Развернуть ветку
Андрей Захаров

Строго говоря, сервер серверу рознь. Есть ведь и Server Core, который вообще без графики (насколько я помню) - там вряд ли какой WPF заведётся, но если говорить про обычный сервер и WPF, то да - WPF заведётся.

WPF умеет работать даже на Windows 7 / Vista / XP SP2+

Ответить
Развернуть ветку
Sergey Vidyakin

А на WPF надо до сих пор XAML руками писать? Я забил на него лет 8 назад, там были размытые шрифты, тормоза компонентов и прочие хорошие вещи

Ответить
Развернуть ветку
Андрей Захаров
А на WPF надо до сих пор XAML руками писать?

Что значит "надо" ?
Что значит "до сих пор"?

Вообще-то с самого начала WPF можно было использовать без XAML вообще. 

XAML  для WPF - это опция, предназначенная для дизайнеров (для отделения представления от реализации/обрабтки)

XAML - это, грубо говоря, HTML/СSS (очень грубо, т.к. его возможности шире)

Если не хочется использовать XAML в WPF, то никто и не заставляет, объекты классов WPF создаются без XAML из кода легко и непринуждённо.

Если уж нужен XAML, то интерфейс с помощью него можно построить визуально (cм. картинку), в 99% случаев при быстрой разработке приложений так и делается. 

там были размытые шрифты, тормоза компонентов и прочие хорошие вещи

У WPF есть порог вхождения, надо уметь им пользоваться, судя по тому вопросу, который ты задал, уж извини, ты просто не осилил WPF))

По-хорошему, надо понимать как в WPF производится рендеринг, что такое сабпиксельный рендеринг (и сабпиксельное позиционирование, виртуальные координаты), что они дают, как их включить / выключить, если он мешает.  

Надо понимать что такое XAML)), что происходит при старте приложения WPF, если  оно построено с использованием XAML (как строится дерево, почему и за счет чего мы можем обращаться из кода к объекту, который представлен тегом в XAML)

Надо понимать что такое "зависмые свойства" (Dependency properties) и что такое "Отложенный способ отрисовки" ("Retained Mode")

На самом деле это несложно, многие концепции, как ни странно, есть в том же React или Angular))

А чтобы овладеть основами XAML/WPF, о которых я упоминал, достаточно почитать правильные книги типа "WPF Unleashed" или "Professional WPF Programming", хотя бы пару вводных глав))

Сейчас WPF не имеет смысла изучать, т.к. Микрософт анонсировала третью версию WinUI - в каком-то смысле, это правоприемник технологии WPF (ее UI части)

Мне WPF нравится, я им пользуюсь)), хотя до полного просветления я не дошёл.

Ответить
Развернуть ветку
Kelerius

.Net Standard это именно стандарт! Выбираете его только для создания кроссплатформенной библиотеки. И все. Будет у вас универсальное АПИ, которое поддержит старичок .net framework или модный .net core.

.core и .net это как раз платформы и есть.

Ответить
Развернуть ветку
Anton Smets

согласен, с дотнетом сильно их потрепало :)
Но в последнее время они делают стабильные продукты, может и с данной платформой также случится.

Ответить
Развернуть ветку
Макс Мухарёв

Каждый день радуюсь стабильному Скайпу и его новым приколам после обновления)

Ответить
Развернуть ветку
Anton Smets

Я всё же говорил про девелопмент :)

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Ruslan Umarkhanov

Народ когда выходит новая винда?

Ответить
Развернуть ветку
Евгений Делюкин
Автор

Майское обновление должно выйти 26-27 числа

Ответить
Развернуть ветку
Ruslan Umarkhanov

👍👍👍

Ответить
Развернуть ветку
vic buynoff

Все продукты разработки от Майкрософт - древнейшее зло. Какие-то виндовс формы, монструозные фреймворки... Переходите на сторону добра, юзайте легкий опен сорс!

Ответить
Развернуть ветку
ILoveVC

И не забывайте оплачивать мзду Jetbrains за их монструозные написанные на java IDE :)

Ответить
Развернуть ветку
vic buynoff

Ага, не забываем. Нам не жалко заплатить за хорошую вещь ;) 

Ответить
Развернуть ветку
ILoveVC

Которая не опен-сорс)

Ответить
Развернуть ветку
vic buynoff

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

Ответить
Развернуть ветку
ILoveVC

А как же VS Code?

Ответить
Развернуть ветку
vic buynoff

Фу

Ответить
Развернуть ветку
Yes, Your Grace
юзайте легкий опен сорс!
Вопрос не в опен сорсе

Биполяр очка?

Ответить
Развернуть ветку
Kelerius

А Microsoft и есть OpenSource!

Ответить
Развернуть ветку
vic buynoff

Да, а Земля плоская. Не стану спорить.

Ответить
Развернуть ветку
Kelerius

Вообще-то, Майки активно открывают свои продукты в опенсорс и туда коммитят.
А земля плоская,да.

Ответить
Развернуть ветку
vic buynoff

Есть свидетели Иеговы, есть косплееры Звездных Войн, а есть разработчики на продуктах Майкрософт. Все три типа - очень странные люди.

Ответить
Развернуть ветку
Андрей Захаров

.Net и так давно опен-соурс))

Ответить
Развернуть ветку
Илитный Иксперт

Далеко не первая "универсальная" windows-платформа на моей памяти.

Не удивлюсь если через пяток лет еще одну выпустят, а Win32 как работала так и будет

*картинка xkcd про 15 стандартов*
 

Ответить
Развернуть ветку
Андрей Захаров

Win32 будет работать до тех пор, пока требуется совместимость с существующим ПО, как только эта потребность исчезнет (допустим, весь софт переедет в облако/браузер), исчезнет и поддержка Win32

Ответить
Развернуть ветку
Денис Кравцов

Затестим

Ответить
Развернуть ветку
35 комментариев
Раскрывать всегда