Próbálom megérteni, mi a különbség egy alkalmazás és egy program között Windows 10 alatt.
A kettő közötti különbség elsősorban a programozási platform(ok):
-
Az “alkalmazások” a Windows 10-ben bevezetett Universal Windows Platformot (UWP) használják.
-
A klasszikus “asztali” alkalmazások jellemzően a hagyományos Win32/COM API-t vagy esetleg az újabb .NET Frameworket használják (bár a Microsoft technikailag az UWP-t is ide sorolja).
gyakorlati megfontolások
A hagyományos asztali programok az Alkalmazásokhoz képest általában nagyobb teljesítményűek és korlátlanabbak összességükben. Mivel az Alkalmazások a Microsoft-termékek (PC/Xbox/Táblagép/Telefon) közötti keresztplatformos használatra készültek, és a hardveres/biztonsági megfontolások annyira eltérőek ezen eszközök között, az UWP-platformban beépített korlátozások vannak, amelyek potenciálisan korlátozzák, hogy az Alkalmazások mit és milyen jól tudnak csinálni.
Ez bizonyos típusú könnyű programok esetében kevésbé számít, és a keresztplatformosság egyes esetekben még előnyös is lehet. Például amikor a Microsoft megölte az asztali Gadgeteket a Windowsban, a Pandora Radio Gadget lényegében feltámadt, mint egy telefonokra szánt App, amely Windows 10-en is használható.
A “komolyabb” asztali alkalmazásoknál (gondoljunk csak a PC-s játékokra) azonban az UWP kezdi elveszíteni az előnyeit, sőt, talán még tüskéket is kezd növeszteni. Egy speciális Win32-alapú játékmotor számára elérhető szintű vezérlés és programozási erő nem könnyen reprodukálható egy App által, mivel az UWP és a Win32 platformok annyira eltérő módon vannak implementálva.
Aztán ott van még az App “kompromisszumok” potenciális problémája.
Az UWP-t használó alkalmazások “kibővíthetők”, hogy kihasználják a különböző hardverek teljesítményét… de ez nem mindig kívánatos. Lehetséges, hogy olyan programokat kapunk, amelyek sokkal másképp teljesítenek pl. egy asztali számítógépen vs. egy táblagépen futtatva, annak ellenére, hogy (vitathatóan) “ugyanarról” az alkalmazásról van szó.
Az ilyesmi orvoslására gyakran elsődleges szempont, hogy egy program jól működjön a legkevésbé erős/legkorlátozottabb hardveren. Így egy alkalmazásként megvalósított program összességében korlátozhatja a grafikai hűséget, hogy minimalizálja a vizuális különbségeket. Hasonlóképpen, talán egy érintőképernyős kezelőfelületre tervezett vezérlőkészlet nem működik olyan jól egérrel (köh… Windows 8 Charms… köh…).
Asztali alkalmazások gyakran kevesebb ilyen problémával szembesülnek, mivel a PC (laptop vagy más) specifikációi általában kevésbé változnak egy adott hardvergeneráción belül.
Más dolgok
Van még néhány dolog, amit érdemes megjegyezni.
Először is, annak ellenére, hogy hagyományos PC-n vagy akár konzolon is elérhetőek, az Alkalmazások egyenesen a mobil területet célozzák meg. A Microsoft összehangolt erőfeszítéseket tett annak érdekében, hogy csak a saját áruházából legyenek elérhetők, hasonlóan az Apple termékeihez vagy a Google de facto monopóliumához az Androidon. Ezzel szemben az asztali programok továbbra is számos forrásból elérhetők.
Második, bár apróságnak tűnhet, az ikonok mégis különbséget jelentenek. Nem csak az élő csempékkel és azzal, hogy az ikonok természetesen hol élnek, hanem azzal is, hogy bizonyos körülmények között eltávolíthatók. Az asztali alkalmazások ikonjait el lehet távolítani a Minden alkalmazás menüből, míg az alkalmazásokét nem. Ha el akar távolítani egy Alkalmazás ikonját a Minden alkalmazás menüből, akkor azt el kell távolítania.
Tágabb értelemben az Alkalmazások általában teljesen különálló, rögzített mappákba települnek és élnek, amelyekhez vitathatóan nem a felhasználóknak kell hozzáférniük. A Win32 programok ezzel szemben megtartják azt a képességüket, hogy szinte bárhová telepíthetők, és könnyebben elérhetőek az adott eszköz használója számára.