Web应用程序的类型:从静态Web页面到渐进式Web应用程序

2020-05-04 11:26:01分类:Web应用开发12793

  在本文中,我们将介绍各种类型的Web应用程序,以帮助您确定哪种架构最适合您的下一个项目。

  随着Web应用程序开发技术的发展,在线体验的标准和要求也在不断发展。视觉呈现的变化现在是最明确的,但由于Web架构的转变,它们才成为可能。

  跟上各种类型的Web应用程序的所有缩写可能非常困难。毕竟,网络应用程序的进步也不是一个简单的过程:新的类型和方法不一定会与现有的类型和方法产生很大的差异,而是随着时间的推移稳步引起改进。

  尽管如此,游戏的名称通常会将选择范围缩小到适合个人业务需求的网络应用类型。希望我们的分类可以帮助您做到这一点。如果您不确定所描述的应用类型的可能用例,请随时参阅本文,深入研究企业Web应用,Web门户和其他类型的Web应用的功能。

  静态Web应用程序

  在技术实现方面,所有Web应用程序首先是静态的或动态的。然而,虽然“动态”是一大群子类型,但“静态”可以被视为一种架构类型。

  “静态”一词来自这些网络应用程序缺乏灵活性。静态Web应用程序的页面由服务器生成,几乎没有(没有使用JavaScript代码)交互性。通常,不存在个性化空间,任何可能的更改仅在完整页面重新加载后生效。

  静态网页通常难以维护,并且它们发送和接收的过多数据会产生性能不佳的风险。毋庸置疑,它们并不适合移动环境。尽管如此,当共享非常简洁的信息并且不需要交互时,静态Web应用程序可以是实际操作选择。


Web应用程序的类型:从静态Web页面到渐进式Web应用程序
 

  动态Web应用程序

  任何动态Web应用程序都基于框架 - 控制网页构建和便于维护的Web应用程序软件。这些Web应用程序在用户屏幕上显示的方式不是预先确定的,而是由应用程序逻辑在app的服务器端或客户端实现的动态形状。

  动态Web应用程序的工作方式不同,其用例决定了它们的开发方法和架构。

  多页面应用程序(MPA)

  在多页面Web应用程序中,逻辑几乎完全在后端。这意味着,要使任何更改生效,来自客户端的所有请求都将转到服务器并返回。除了使用框架之外,这个原则几乎与过去的静态Web应用程序相同。

  然而,现在,MPA利用AJAX技术,无需完整页面重新加载即可实现即时更改。如果设计为响应式,此类网络应用甚至可以适应移动环境。此外,由于用户无法访问逻辑,MPA非常安全,因此广泛用于Web门户和企业Web应用程序。

  富Internet应用程序(RIA)

  最初,RIA试图克服浏览器限制,并严重依赖客户端插件,如Flash,Shockwave和Silverlight。由用户安装和定期维护,这些插件应该解释Web应用程序页面的一些高度交互的部分,或者有时,Web应用程序的核心。

  问题在于插件的漏洞以及它们造成的一些不便:如果插件有点过时,Web应用程序的某些部分,或者有时整个应用程序,都没有机会正常运行。最终,在引入HTML5之后放弃了许多插件(当与JavaScript结合使用时,通常会在功能方面与Flash进行比较),因此RIA没有保留其初始形式,并且大部分已经变为其他类型的Web应用程序现在。

  JavaScript-Powered Web Apps

  随着诸如Angular,React,Meteor和Ember等前端JavaScript框架的出现,Web应用程序的逻辑已经开始向客户端转移,从而允许比偶尔嵌入的AJAX更好的灵活性。客户端逻辑已经开始接管服务器端处理用户请求和呈现响应的责任。

  使用JavaScript框架创建的Web应用程序显示出良好的性能,提供不同级别的用户交互,并且是移动和搜索引擎优化的。此类Web应用程序广泛用于各种行业,并用作电子商店,客户端门户和商业Web应用程序。

  单页应用(SPA)

  由于逻辑的客户端实现,SPA成功实现了他们的名字承诺:他们确实让用户可以从一个页面自由地与Web应用程序进行交互。而且,由于请求和响应在少量数据中进行通信并且几乎立即发生,因此交互更加快捷。

  通常,任何Web应用程序在成为SPA后都可以显着提高。然而,由于通用URL,单页应用程序与SEO规则不太兼容,因此将此类型用于电子商务可能会适得其反。然而,社交网络,在线视频/音频播放器和电子邮件服务通常会受益于此类Web应用程序及其敏捷性。

  渐进式网络应用程序(PWA)

  有人说PWA首先是一个发达的SPA,虽然理论上并不一定如此,但实际上这一点仍然适用。问题在于,渐进式网络应用程序不是关于架构中的新原则,而是提高任何Web应用程序的性能和移动适应性的功能。通过HTTP / 2进行兑现,主屏幕安装和更好的数据传输是关键的增强功能。

  与SPA不同,MPA或静态网络应用程序根本无法充分利用所有这些功能; 就其本身而言,MPA和静态Web应用程序在性能方面落后于SPA。此外,PWA理想之一是改善移动Web体验并使其可用于Internet连接速度慢或不良的用户。事实上,即使是具有响应式设计的MPA也难以进行优化以至于“渐进式”。

  尾注

  除了富Internet应用程序之外,任何类型的Web应用程序都不再相关是错误的。无论任何Web应用程序类型的可能性如何,它们都非常适合特定的解决方案。这就是为什么Web应用程序类型的选择应该始终只是逐案处理的结果。

上一篇:下一篇: