移动web框架究竟能够做什么?——与传统移动应用之比较
2012-11-19 15:39
274 查看
Web移动框架究竟能做什么,就拿sencha touch来说明:
ST是一个js+html5+css3的框架,所以,ST所能够做的也就是js+html5+css3能够做的,当然,框架能够提供很多很好的已经封装好了的类与方法,这些可以简化开发,这些就跟native程序的部分api类似。
从2个方面来考虑ST的应用:
1、与本地数据源的联络。
2、与其他网络上其他数据源的联络;
一、与本地数据源的联络:
可以通过phonegap与本地的部分硬件进行交互,比如Camera等硬件。通过phonegap可以把程序打包到本地,所有数据的请求在本地就可以完成,这样就可以部分的调用本地硬件(被支持的)做一些应用程序,这部分应用程序都是本地应用(与网络无交互)。当然,也可以使用强大的js配合html5做一些完全独立于网络的应用。
二、与网络数据源的联络:
虽然说html5提出了websocket协议,但是目前支持的服务器比较少,所以需要实时更新的应用程序暂时不考虑,但是在支持websocket的服务器上是能够实现的。
那么,与网络数据源的联系就只能是传统的“客户端请求+服务器端响应”模式了,而基于js的ajax请求跨域访问数据有非常大的限制的,即便是解决方法里面也需要其他服务器来配合,或者提供了接口,而这样的接口是现在的服务器所普遍没有的。那么,能够跟网络数据交互的话,就只能是自己的服务器了。也就是说,如果要开发一套移动应用,那么必须要同时开发一套出服务器端的服务,这样才能实现数据的更新。(当然,其他非web应用程序如果要有自己的数据支持,也都需要自己的服务器),但是相比较以前的浏览器网页,页面可以少很多很多,而且页面可以被打包到本地,除了部分需要更新的页面,其他的可以不需要通过网络请求。那么,服务器端需要提供的页面内容将会比较少,主要是提供数据服务,这样就跟其他native应用程序比较类似了:可以完全离线操作,但是如果要数据更新之类,就必须连接服务器。
另外,基于html5的本地存储新功能,可以本地存储一些数据,但是数据量有上限(浏览器支持的一般是5M-10M,如果只是存储文本文件,那么这些一般都够用吧)。
所以说,html5在3方面要弱于传统的native应用程序:
1、实时更新不被普遍支持;
2、无法任意调用其他网络资源(主要是浏览器限制js的调用,而通过jsonp调用,则需要被请求资源是json格式,或者被请求资源和本地js回调函数生成js脚本,而其native应用可以直接请求其他网络资源);
3、一个是调用本地硬件不如传统native应用程序方便。
ST是一个js+html5+css3的框架,所以,ST所能够做的也就是js+html5+css3能够做的,当然,框架能够提供很多很好的已经封装好了的类与方法,这些可以简化开发,这些就跟native程序的部分api类似。
从2个方面来考虑ST的应用:
1、与本地数据源的联络。
2、与其他网络上其他数据源的联络;
一、与本地数据源的联络:
可以通过phonegap与本地的部分硬件进行交互,比如Camera等硬件。通过phonegap可以把程序打包到本地,所有数据的请求在本地就可以完成,这样就可以部分的调用本地硬件(被支持的)做一些应用程序,这部分应用程序都是本地应用(与网络无交互)。当然,也可以使用强大的js配合html5做一些完全独立于网络的应用。
二、与网络数据源的联络:
虽然说html5提出了websocket协议,但是目前支持的服务器比较少,所以需要实时更新的应用程序暂时不考虑,但是在支持websocket的服务器上是能够实现的。
那么,与网络数据源的联系就只能是传统的“客户端请求+服务器端响应”模式了,而基于js的ajax请求跨域访问数据有非常大的限制的,即便是解决方法里面也需要其他服务器来配合,或者提供了接口,而这样的接口是现在的服务器所普遍没有的。那么,能够跟网络数据交互的话,就只能是自己的服务器了。也就是说,如果要开发一套移动应用,那么必须要同时开发一套出服务器端的服务,这样才能实现数据的更新。(当然,其他非web应用程序如果要有自己的数据支持,也都需要自己的服务器),但是相比较以前的浏览器网页,页面可以少很多很多,而且页面可以被打包到本地,除了部分需要更新的页面,其他的可以不需要通过网络请求。那么,服务器端需要提供的页面内容将会比较少,主要是提供数据服务,这样就跟其他native应用程序比较类似了:可以完全离线操作,但是如果要数据更新之类,就必须连接服务器。
另外,基于html5的本地存储新功能,可以本地存储一些数据,但是数据量有上限(浏览器支持的一般是5M-10M,如果只是存储文本文件,那么这些一般都够用吧)。
所以说,html5在3方面要弱于传统的native应用程序:
1、实时更新不被普遍支持;
2、无法任意调用其他网络资源(主要是浏览器限制js的调用,而通过jsonp调用,则需要被请求资源是json格式,或者被请求资源和本地js回调函数生成js脚本,而其native应用可以直接请求其他网络资源);
3、一个是调用本地硬件不如传统native应用程序方便。
相关文章推荐
- 几种常用HTML5移动应用框架的比较
- 四种常用HTML5移动应用框架的比较
- 当前Javaweb应用中应用比较多的技术有些什么
- WEB移动应用框架构想(转载)
- 机器人自主移动的秘密:实际应用中,SLAM究竟是如何实现的?(二)SLAM与路径规划有什么关系?(三)
- 几种常用 HTML5 移动应用框架的比较
- 常用的 HTML5 移动应用开发框架比较
- Tomcat(一) Tomcat是什么:Tomcat与Java技术 Tomcat与Web应用 以及 Tomcat基本框架及相关配置
- 移动app应用利用短信接口能够做什么
- Web移动应用框架构想
- Web移动应用框架构想
- 比较Titanium和PhoneGap两大iOS移动应用开发框架
- 几种常用HTML5移动应用框架的比较
- 技术收集 -Spring Mobile- 移动Web 应用框架
- 比较Titanium和PhoneGap两大iOS移动应用开发框架
- 几种常用HTML5移动应用框架的比较
- 超棒的Web和移动应用开发框架(三)
- Tomcat(一) Tomcat是什么: Tomcat与Java技术 Tomcat与Web应用 以及 Tomcat基本框架及相关配置
- Titanium和PhoneGap两大iOS移动应用开发框架比较
- 常用四种HTML5移动应用框架的比较