关于Web App的个人理解

App的类型

App主要分为三类,分别是Native App(原生应用程序)、Web App(Web应用程序)、Hybrid App(混合型应用程序)


App的类型


  • Native App

    原生App是运行在设备操作系统上的应用程序,例如安装在电脑、手机上的各种软件。

    对于不同的操作系统(如Windows、IOS、安卓等)需要使用不同的语言进行独立开发,这使得它的开发速度较慢、开发成本较高。同时,对于不同操作系统的App进行独立维护,这增加了维护总成本。并且原生App要发布上线、供用户下载使用前需要经过一系列的审核流程,因此从开发到上线还需要一定的时间。

    但是原生App一般将资源放置在用户的设备本地,因此用户获取资源更加便捷。并且原生App可调用的终端硬件设备,如麦克风、摄像头等,从而实现更丰富的功能。交互性、用户体验度最好。

  • Web App

    Web App是运行在浏览器上的应用程序,是一个轻量级App。只需打开浏览器并输入相应网址即可访问。

    由于Web App不依赖于操作系统,因此对于不同的操作系统而言无需单独开发一套应用程序,通过一次开发,即可让不同设备的用户访问到该应用程序,开发时只需考虑浏览器的兼容问题,使得开发效率提高,开发成本降低。从而只需专注在一套代码程序的优化和维护上,也大大降低了维护成本。
    其资源一般存储在云端,使得用户可以实时访问到最新数据。并且用户可最快获取最新功能或版本。

    Web App也可调用终端的硬件设备,但其可调用的硬件设备功能相较于原生App来说受到一些限制。

  • Hybrid App

    混合型App是一个相当于在原生程序中伪造了浏览器,并运行Web App的半原生应用程序,运行在操作系统上。

    其资源可放置在本地或云端。交互性和用户体验度次于原生App。

Web App工作过程

Web APP是B/S架构的软件,其运行主要涉及的终端设备、客户终端的浏览器以及服务器。用户访问App,并获取相应返回数据的过程如下图所示:


Web App工作过程


①访问网址:用户在终端浏览器中栏输入URL路径向相应的服务器请求页面

②连接过程:Web服务器与浏览器间建立连接

③请求过程:浏览器用http协议描述,并封装为TCP/IP数据包寻址,发送http请求

④应答过程:服务器接收和分析http请求,按照用户请求内容执行相应处理,生成返回的HTML页面,并将结果打包成HTTP响应

⑤显示输出:浏览器在客户端屏幕上渲染服务器处理后返回的HTML页面

⑥关闭连接:Web服务器和浏览器间断开连接