Nevim jestli jsem neco neprehledl, ale vetsinu obsahu na tom repository tvori tento animovany gif https://github.com/microsoft/ProjectReunion/blob/main/docs/images/projectreunion.gif ;-), je tam vubec nejaky kod nebo neco co se da nejak rozumne pouzit?
Obecne nejak nechapu tato ruzna nova API, ktera nastesti umiraji rychleji nez vznikaji dalsi. Jedno vysvetleni je, ze stoji za starou backoru. Druhe mozne je v tom, ze starnu a nestiham novou dobu.
Poznamka stranou, nasi uzivatele (Win32 app) maji aktualne Win7:Win10 asi 1:1.
Jo, je v tom zmatek, ono UWP mělo podmnožinu Win32, ale nějak se nechytlo (aplikace jen z Marketu atd.), nakonec pustili “desktop apps” do obchodu, čímž UWP utrpělo a teď je víceméně na kapačkách. K tomu totálně dodrbali .NET (aby odstranili roztříštěnost na .NET Framework, Standard a Core, vymysleli čtvrtou nekompatibilní alternativu - .NET 5.0). Někdy to vypadá jako špatný vtip.
Reunion taky vypadá podezřele, ale až budoucnost ukáže. Hodně známých se vrátilo k Win32.
Není UWP ta "killer featura" která měla sjednotit vývoj, tehdy hlavně pro desktop a Windows Phone 10 (který následně strategicky zabili - slovy Cimrmana všem uživatelům WP se verze WP10 líbila, jen jí nikdo nechtěl používat)?
To nie je pravda. .Net Framework je podporovany minimalne este dalsich 5 rokov.
.Net 5 je jeho evoluciou, takze povedzme 98% je rovnakeho, alebo vylepseneho, pricom platformovo specificke veci sa presunuli zo standardnej kniznice do oficianych nugetov.
O tom, ze to nastane vyvjari vedeli uz dva roky (aj tak uz vsetky aspon trochu vyznamne kniznice podporovali .netstandard, ktory ide spustit pod .Net5) a mohli sa pripravovat a na dalsi prechod maju dalsich 5.
V .NET jsem dlouho nedělal, ale není .NET 5 jen nová verze .NET Core?
Nominálně to má sjednotit těch několik vzájemně nekompatibilních větví. Nejčastější nová fíčura, na kterou stále narážím, je “internal compiler error.”
Kdyby radši vrátili OS/2 subsystém a pořádně implementovali POSIXový subsystém...
Hm, netuší někdo, v čem se teda podle MS se mají ofiiciálně dělat desktopové C++ aplikace tak, aby nevyžadovaly žádné knihovny/runtime? Mám v tom docela zmatek, co vím, tak asi
- máme UWP API, které jede bez runtimu
- máme low level C Win 32 API, které jede taky bez runtimu, ale dělat v tom je peklo
- je ve win světě něco ala Qt, co je nativní, nebo jsou aplikace dodávané s win psané s pomocí plain C API?
Si tam staticky nalinkujte nejake zkraslovadlo nad Win32 api. Nebo.. jak jste psal aplikace do Win7 ?
UWP má runtime (jmenuje se, překvapivě, Windows Runtime, zkráceně WinRT, a mají k němu i vlastní rozšíření C++, jehož syntax vychází z C++/CLI). Kdo nechce .NET, musí zůstat u Win32, hezky na nejnižší úrovni, a použít třeba nějakou objektovou nadstavbu. Vím, je to ostuda, ale MS v tom má fakt strašný brajgl.
Na obzoru se rýsuje Flutter, ten má svůj runtime včetně vlastního GUI a vůbec všeho - je to slepenec, ale mohlo by to aspoň fungovat bez ohledu na verzi Windows a zmatek v DLL knihovnách.
Je spousta knihoven na multiplatformní GUI (nejen různé verze Windows, ale i různé operační systémy). Mnohé dovolují slinkovat staticky, takže zvenku to bude jeden .exe "bez dalších knihoven".
Toto tomu konkuruje
There's Finally An Experimental Driver For Native Wayland Support Within Wine
on 15 December 2020
Wayland driver for Wine. This driver allows Windows GDI/OpenGL applications to run on Wayland compositors without any use of X11/XWayland.
https://www.phoronix.com/scan.php?page=news_item&px=Wayland-Wine-Driver
Kdysi jsem byl WIndows vývojář (msvc), pak jsem přešel na Linux (gcc) a teď je moje veškerá práce prezentovaná v prohlížeči s tím, že backend je v C++. Musel jsem se naučit javascript. Výhodou je, že platformu jsem přestal řešit (pro koncové uživatele)
Ale nevím, jestli se mi chce vracet k windows vývoj. Se zájmem sleduju, že se vývoj ve Win32 API moc nepohnul