There are many ways to install an application on a Windows-based PC. Many older programs that are still in use are packaged in the ZIP format, while others may use Windows Installer and other methods. For "Modern" UI apps made for Windows 8, Microsoft decided to come up with a new installation package.
A new post on the official Windows 8 app blog goes into a ton of detail of how Microsoft came up with the app install package, which it calls APPX. Microsoft says that they wanted something simple so that app creators didnt have to use special tools and code to make installer packages. It added:
We created summaries of all known app packaging technologies that we found, scoured each, and weighed the tradeoffs of various features. After many discussions we resolved on a simple but popular starting base – ZIP.
Yes, ZIP, which launched in 1989, is the father of the APPX install package for Windows 8. However, thats not all of the story. Microsoft points out that ZIP has requirements for a number of PC technologies (floppy disks, anyone?) that no one really uses anymore. Also, while most everyone is familiar with ZIP, it was not a true open standard for install packages.
Microsoft said that in 2006, several of its divisions, including the Office team, proposed the Open Packaging Conventions (OPC) standard. It was later adopted in 2008 by the International Standards Organization. Microsoft says that OPC has "specific qualifications that it places on ZIP functionality." The public OPC APIs were then used to create the APPX tools and APIs that are now used in the Windows 8 SDK to make apps.
The blog then gets even more technical as it talks about how app makers can organize their files into the APPX standard, with a heavy emphasis on security. Microsoft adds:
As with many other packaging technologies, APPX packages use digital signatures to guard app security. A digital signature doesn’t prevent the signed app content from being altered, but a signature check will fail if any item in the signed content has changed.
Source: Windows 8 app developer blog | Image via Microsoft