För den som utvecklar eller använder gammal mjukvara är Microsofts ihållande stöd för gamla utvecklargränssnitt en uppskattad möjlighet. Mjukvara som utvecklats för äldre generationer av operativsystemet Windows använder ett utvecklargränssnitt vid namn Win32. Denna mjukvara kan köras på dagens operativsystem sida vid sida med mjukvara som utvecklats med det moderna gränssnittet UWP.

Att båda gränssnitten kan användas innebär dock inte att de har tillgång till samma utbud av funktioner. Under Microsofts pågående utvecklarmässa Build 2020 introducerar företaget en satsning vid namn Project Reunion där målet är att förena de båda gränssnitten, och ge äldre Win32-mjukvara tillgång till moderna funktioner. Tanken är att utvecklare inte ska tvingas anamma Microsofts nya gränssnitt för att kunna hålla mjukvaran aktuell.

Win32.jpg

Win32 är utvecklargränssnitt med flera årtionden gammalt arv.

UWP.jpg

UWP är mer moderna gränssnitt med högre säkerhet, men är också låsta till Microsofts mjukvarubutik.

En annan motivering till att vilja hålla sig kvar vid Win32-utveckling är att UWP-mjukvara är bunden till mjukvarubutiken Microsoft Store. Tanken med UWP är att applikationer ska kunna göras tillgängliga för en rad olika typer av enheter, med ökad säkerhet då Microsoft kontrollerar mjukvara som publiceras i butiken. En utvecklare som inte vill publicera i Microsoft Store har tidigare fått offra modern UWP-funktionalitet, något Project Reunion ska ändra på.

Enligt Microsofts beskrivning görs detta möjligt genom att utvecklargränssnitten Win32 och UWP kopplas loss från de underliggande operativsystemen och körs på en gemensam plattform. En utvecklare ska på så sätt kunna programmera i C++ mot Win32 eller C# mot .Net, och ändå ha tillgång ett flertal gemensamma funktioner. En av de gemensamma funktionerna är ramverket Win UI 3, som låter utvecklare lägga till moderna menyer och gränssnitt i gammal mjukvara.

ProjectReunion_Win32-UWP.jpg

Win UI 3 låter också mjukvaran anpassas efter om användaren interagerar via tryckkänsliga gränssnitt eller en muspekare. Detta är ett exempel på en funktion som UWP-mjukvara tidigare haft tillgång till, men som Win32-utveckling varit isolerad från. En annan funktion som blir tillgänglig för de båda via Project Reunion är Webview 2, som låter utvecklare bädda in visning av webbinnehåll i applikationer.

Webview 2 bygger på den nya Chromium-baserade webbläsaren Edge och låter då både Win32- och UWP-applikationer förhandsvisa webbinnehåll med Microsofts senaste webbläsare. Testversioner av både Win UI 3 och Webview 2 finns tillgängliga för utvecklare nu, och skarpa versioner väntas lanseras senare i år.

Utvecklarsessionerna under Build 2020 ska bland annat demonstrera hur en utvecklare kan ta en årtionden gammal Win32-applikation, skriven i C++, och konvertera den till en modern variant som kan användas med tryckbaserade gränssnitt på Windows 10-enheter eller mobila alternativ som Android och IOS. Microsoft nämner inte när samtliga delar i Project Reunion görs tillgängliga till utvecklare.

Microsoft Build 2020 pågår nu och registrering för den digitala tillställningen är kostnadsfri. Nyheter från tillställningen samlas på Microsofts mikrosida.