skillnaden mellan app och program i windows 10 [stängd]

Jag försöker förstå skillnaderna mellan en app och ett program i Windows 10.

Skillnaden mellan de två är i första hand programmeringsplattformen/plattformarna:

  • Appar använder Universal Windows Platform (UWP), som infördes i Windows 10.

  • Klassiska ”skrivbordsprogram” använder vanligtvis det traditionella Win32/COM API eller eventuellt det nyare .NET Framework (även om Microsoft tekniskt sett inkluderar UWP i den här listan).

Praktiska överväganden

Jämfört med appar är traditionella skrivbordsprogram generellt sett kraftfullare och mer obegränsade som helhet. Eftersom appar är avsedda att vara plattformsoberoende mellan Microsofts produkter (PC/Xbox/Tablet/Phone) och maskinvaran/säkerhetshänsynen är så olika mellan dessa enheter, finns det inbyggda begränsningar i UWP-plattformen som potentiellt begränsar vad appar kan göra och hur bra de kan göra det.

Detta spelar mindre roll för vissa typer av lättviktiga program och att vara plattformsoberoende kan till och med vara en fördel i vissa fall. Till exempel, när Microsoft tog död på desktop Gadgets i Windows återupplivades Pandora Radio Gadget i princip som en app avsedd för telefoner som också kunde användas i Windows 10.

Med mer ”seriösa” skrivbordsapplikationer (tänk PC-spel) börjar dock UWP förlora sina fördelar och kan till och med börja växa några törnen. Den nivå av kontroll och programmeringskraft som är tillgänglig för en specialiserad Win32-baserad spelmotor är inte lätt att replikera för en app eftersom UWP- och Win32-plattformarna implementeras så olika.

Därefter finns det också en potentiell fråga om app-”kompromisser”.

Appar som använder UWP kan ”utökas” för att dra nytta av kraften hos olika hårdvara… men detta är inte alltid önskvärt. Det är möjligt att få program som fungerar mycket annorlunda när de körs på t.ex. en stationär dator jämfört med en surfplatta, trots att de (enligt uppgift) är ”samma” program.

Som ett botemedel mot den här typen av saker är det ofta en prioritet att få ett program att fungera bra på den minst kraftfulla/mest begränsade hårdvaran. Ett program som implementeras som en app kan därför begränsa den grafiska kvaliteten generellt sett för att minimera de visuella skillnaderna. På samma sätt kanske en uppsättning kontroller på skärmen som är utformade för ett pekgränssnitt kanske inte fungerar så bra med en mus (hosta… Windows 8 Charms… hosta).

Desktop-tillämpningar står ofta inför färre av dessa problem eftersom PC-specifikationer (bärbara datorer eller andra) tenderar att variera mindre inom en viss generation av hårdvara.

Annat annat

Det finns ytterligare ett par saker som är värda att notera.

För det första är appar, trots att de finns tillgängliga på en traditionell dator eller till och med konsol, helt och hållet inriktade på det mobila området. Microsoft har gjort en gemensam ansträngning för att göra dem endast tillgängliga från sin butik, på samma sätt som Apple gör för sina produkter eller det de facto monopol som Google har på Android. Däremot är skrivbordsprogrammen fortfarande tillgängliga från en mängd olika källor.

För det andra, även om det kan verka litet, är ikonerna en skillnad. Inte bara med live tiles och var ikonerna naturligt bor, utan även möjligheten att ta bort dem under vissa omständigheter. Skrivbordsprogram kan få sina ikoner borttagna från menyn Alla appar, medan appar inte kan göra det. Om du vill ta bort en App-ikon från menyn Alla appar måste du avinstallera den.

Mer generellt sett installeras Appar i allmänhet i och lever i helt separata, fasta mappar som utan tvekan inte är avsedda att nås av användarna. Win32-programmen kan däremot installeras nästan var som helst och är mer lättillgängliga för den som använder en viss enhet.