• 当前位置:首页资讯圈子圈事
  • 什么是 Web 应用程序?

  • 发表时间:2022-12-23 01:39:00  作者:企米科技  阅读资数:25
  • 顾名思义,Web 应用程序是存储在远程服务器上并通过互联网浏览器提供给用户的计算机程序,而不是安装在他们的设备上。他们的确切流程依赖于服务器端协议(如 PHP 和 ASP)和客户端脚本(如 JavaScript 和 HTML)的组合。前者控制信息的存储和检索,而后者用于传递和呈现信息。 

    这使用户能够通过在线表格、购物车等与品牌或公司互动。从这个意义上说,Web 应用程序类似于动态网页,因为它们具有很强的交互性和反应性。然而,Web 应用程序通过添加更多选项和交互性(例如在应用程序本身内创建、读取和更新数据)更进一步。Web 应用程序的高度复杂性意味着只有经验丰富的设计师团队才能制作它们。

    Web 应用程序用途广泛,有几种不同的形式,每种形式都有自己的一组功能。Web 应用程序的示例包括 Gmail 和 Yahoo 等电子邮件程序、照片编辑应用程序、购物车和文件转换工具。

    网络应用程序如何工作

    如前所述,Web 应用程序由于执行各种不同的功能而变得相当复杂。因此,它们的构建可能变得同样复杂,但所有网络应用程序都有一些共同的基本原则和方法。

    对于初学者来说,Web 应用程序是用典型的标准浏览器支持的脚本语言(即 JavaScript 或 Python)编码的。根据各个 Web 应用程序的特定功能,有些可能还需要服务器端处理,但有些则完全是静态的。

    无论如何,Web 应用程序还需要一个服务器来管理和控制客户端请求,一个应用程序服务器来执行这些请求,以及(通常)一个数据库来存储所有相关信息。 

    各个网络应用程序的确切机制可能会有所不同,但大多数都遵循一个简单的“流程”,可以细分如下: 

    1. 用户触发请求,这些请求通过 Internet 传输到 Web 服务器。这些请求是通过浏览器或网络应用程序的界面输入的。
    2. 然后,Web 服务器将客户端的请求转发到相关的 Web 应用程序服务器。
    3. Web 应用程序服务器完成请求并生成所需的结果。 
    4. 然后将这些结果发送回 Web 服务器。
    5. Web 服务器然后将结果发回给用户。结果通过浏览器或网络应用程序界面显示在屏幕上。

    当然,所有这些都是实时完成的,而且结果通常是即时交付的。大多数 Web 开发人员将使用 ReactJS 或 VueJS 来构建他们的 UI 组件,用户可以自由地与之交互。 

    此外,Web 应用程序通常使用 SPA(单页应用程序),一次加载一个 Web 文档,然后在需要新内容时更新内容 JavaScript API。这通常会提高网络应用程序的性能。 

    Web 应用程序与网站:Facebook 是 Web 应用程序吗?

    根据我迄今为止告诉您的有关 Web 应用程序的所有内容,您可能仍然不确定特定平台和服务是属于网站还是 Web 应用程序。以脸书为例。虽然它具有传统网站的所有功能,但它的功能更像是一个网络应用程序。 

    为此,虽然 Facebook 具有传统网站设计的元素,但它是为用户参与和交互而构建的。每个使用 Facebook 的人都会有自己独特的体验,这是网站无法做到的,即使是动态网站。

    Web App 与网站:Netflix 是 Web App 吗?

    与为所有用户提供完全独特体验的 Facebook 不同,Netflix 的内容是不可更改的。您可能认为这会立即使它成为一个动态网站,但实际上它更接近于网络应用程序。

    这是由于网站和网络应用程序之间的另一个关键区别。只要您具备网页设计知识,就可以高效地对网站(甚至是动态网站)进行编码。另一方面,开发网络应用程序不仅需要网络设计知识,还需要应用程序编程知识。简而言之,创建 Web 应用程序是一个复杂得多的过程。

    数百名开发人员正在 Netflix 上工作,以确保其正常运行。动态网站不需要那么大的团队来管理。此外,尽管不像 Facebook 那样具有互动性,Netflix 仍然在很大程度上依赖于用户的参与度和反应性。 

    Web 应用程序与其他应用程序

    在计算机技术圈内,Web 应用程序通常与本机(或可安装)应用程序进行比较。这些是为特定设备或平台开发的程序。本机应用程序可以利用特定于该平台的硬件和资源。例如,某些移动应用程序会使用设备的内置摄像头来实现特定功能。

    另一方面,无论平台或设备如何,网络应用程序通常都可以访问,但因此它们可以利用的要少得多。当然,这增加了它们的可访问性,同时显着降低了它们的功能。

    但是,这两种类型的应用程序之间存在一些交叉,一些应用程序同时利用了这两种应用程序。这些被称为“混合应用程序”。它们像本机应用程序一样直接安装在设备上,因此能够利用该设备的独特功能。但是,它们也具有网络应用程序中的在线元素,例如与网络服务器交互以处理特定请求。