公告:由于近期本站访问量增加,单核VPS不足以提供足够的性能为各位服务,网站访问速度较慢。请考虑向我们捐赠,帮助我们升级服务器!

应用程序架构

来自BetaWorld 百科
跳转到导航 跳转到搜索
可打印版不再被支持且可能有渲染错误。请更新您的浏览器书签并改用浏览器默认的打印功能。

Win32应用

Win32是“Microsoft Windows 32位操作系统API”的缩写形式,这意味着应用程序已编译为在32位版本的Microsoft Windows上运行。 用Win32 C++编写的程序同样是由C++版本编写并编译的,该版本将编译为32位Windows可执行文件或共享库(.DLL)。此代码可能能够从Windows 95以后的任何版本的Windows上运行,但大多数现代程序至少需要Windows XP Service Pack 3 才可以运行。

Win32应用程序是为使用Win32应用程序员接口(API)编写的程序。Win32 API是程序功能的集合,它允许程序触发几乎所有的操作系统操作—例如打开文件。 Win32程序通常在Windows操作系统下运行,但是Win32 API的仿真在其他平台上是可用的。

Win32 API仍是现在开发者最常用的开发Windows应用程序的API,Win32应用程序相较于UWP来说,更为稳定,并且更加实用。

Windows Presentation Foundation (WPF) 应用

WPF(Windows Presentation Foundation,开发代号 “Avalon”)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。

WPF比Win32更能为程序带来惊艳的视觉与图形效果。Windows Vista的大部分Aero对象的开发就得益于WPF。

WPF基于DirectX引擎,支持GPU硬件加速,支持更多完美丰富的视觉体验。

WPF的失败

WPF虽然带来了完美的视觉效果与崭新的功能。但是,它本身对于显卡的标准过高,内存占用过大,也让多数开发者和用户遗憾。

而Microsoft对于其应用的推广不力,也间接的导致了该应用平台在市场上的惨败。

Metro应用

为新型式的应用程序,在Metro界面中运行,为全屏幕操作。(Windows 8.1及以上版本支持至少1024x768分辨率窗口运行)设计上跟随Metro设计风格。Metro型的应用将同时兼容x86/64和基于ARM的Windows。

设计语言采用Microsoft Design Language,引入Charm栏等全新特性。

Universal Windows Platform (UWP) 应用

UWP旨在让所有设备运行在一个统一的Windows 10系统核心之上。这样的设计使得一款应用可以在所有Windows 10设备上运行,今后的Windows 10手机、平板电脑、笔记本电脑、PC、Xbox,甚至是3D全息眼镜HoloLens、巨屏触控Surface Hub,和物联网设备,例如Raspberry Pi 2等都不再有界限。新的通用平台允许新类型的Windows10通用应用真正实现一次编写、一套业务逻辑和统一的用户界面。应用在统一的Windows 商店中将只会有一个安装包,而它将适用于所有Windows 10设备。Windows 10 UWP将帮助Windows应用中更上一层楼。UWP会根据不同的设备类型使用相应的自适应UI控件,并使用运行Windows 10的所有设备上必须具有的通用API集。

PWA

PWA(Progressive Web App,渐进式网页应用)是一种理念,使用多种技术来增强web app的功能,可以让网站的体验变得更好,能够模拟一些原生功能,比如通知推送。在移动端利用标准化框架,让网页应用呈现和原生应用相似的体验。微信小程序就是基于PWA实现的。

PWA不能包含原生OS相关代码。PWA仍然是网站,只是在缓存、通知、后台功能等方面表现更好。Electron程序相当于包裹OS原生启动器(Launcher)的网站,未来,许多Electron程序可能转化为PWA。

微软目前已经支持PWA应用上架Microsoft Store,而Microsoft Edge(EdgeHTML)也有相关技术支持。

与本应用程序架构类似理念的还有Apple轻App,张小龙的微信小程序“简洁”的微信,QQ小程序等。