所谓纯AJAX开发Web,其原理非常简单:所有界面(HTML)全部由javascript负责,服务器端代码只负责业务逻辑,并生成结构化的数据(json或xml)。
理论上来说,这种架构非常清晰,前后端开发完全分开。但在实际生产环境下,却存在不少的问题。下面是大家经常提到的问题:
(1)由于html完全有javascript动态生成,导致前台js代码量迅速增长。由于JS引擎在个浏览器的实现存在差异,所以调试异常困难,即使使用jquery等第三方库,问题仍然存在。
(2)由于目前搜素引擎不处理js代码,所以会导致无法搜索到网站内容,这对于门户型网站不可容忍;
(3)还是由于前台必须动态生成,导致无法预先生成静态页面,从而加重服务器负担;
(4)对于特色网站,UI也是智慧的结晶,而完全AJAX导致前台代码失去保护,容易被模仿,从而失去竞争力;
(5)大量的js代码,也会导致客户端首次访问速度变慢;
(6)很多移动平台,尚未完全支持ajax;
尽管存在诸多问题,纯AJAX在一些特定领取却非常适合:
(1)企业内部应用,通常用来取代传统的桌面软件。由于范围小,所以可以容易控制客户使用的浏览器版本;
(2)自动化控制与工控系统,与(1)类似;
看看WebOS等一些模仿桌面OS的Web应用,纯Ajax确实非常强大。
纯Ajax的绝大部分问题,都是Javascript引擎的不规范不统一造成的,一旦这个问题解决了,纯Ajax必将大放异彩。
中国人讲究“中庸之道”,凡事不能太极端,这也适用于纯Ajax网站,Ajax本身很好,但是单纯的使用它而抛弃传统的技术并非上策。
原文链接:https://www.f2er.com/ajax/163740.html