您的位置: 网界网 > 软件 > 正文

移动HTML5挑战何在?

2015年03月03日 13:04:25 | 作者:邹雅玲 翻译 | 来源:TechTarget中国 | 查看本文手机版

摘要:HTML5为交互引入了一个比以往版本的HTML更加结构化的方法,其中包括把对API定义的显式支持,以及在字段处理中对JavaScript处理的重大改进。

标签
API
HTML5
JavaScript

HTML5出现时,许多开发者和应用架构师视之为创建平台独立应用、简化你的设备支持以及当新的移动设备OS版本发布时减少应用相关问题的机会。HTML5当然是朝着正确方向迈出的一步,但它还没到那里。对细节的部分关注是必不可少的,如果要满足这些目标的任何一个的话。设计师应该意识到HTML5对于移动app的好处和限制,前瞻性地跟踪跨平台的过程支持,然后设计出将定制化需求最小化的应用。

HTML5为交互引入了一个比以往版本的HTML更加结构化的方法,其中包括把对API定义的显式支持,以及在字段处理中对JavaScript处理的重大改进。它还提供了改进的内容编码,当然商业对此的兴趣要比游戏开发者要低一点,因为后者会经常运用视频。总体而言,大多数开发者把HTML5视为一个更加结构化的办法来管理瘦客户端体验,甚至瘦客户端都可以访问定制化app。因为总体而言,HTML5相对于app开发语言更加平台独立,这是一个好处,很多不同的设备都支持。

这里的限制可以是非常有意义的,因为许多开发者说HTML5尚未完全成熟。不奇怪的是,某些网页渲染在一个浏览器是正确的,但换了一个浏览器就不对了;这一点对于以前版本的HTML来说好几年都是如此了。然而,HTML5的嗝打得更加频繁。很难找到一个集中的地方来为开发者审查保留差异性和难度,因此组织该方法是重要的。开发者还说HTML5开发是一种古怪的网页设计与开发的混合,最佳实践引领他们朝着Web设计前进,而与此同时,应用保证的需求又拉着他们往开发的方向走。

记住,移动app用的HTML 5还是HTML,不是JavaScript或其他的Web语言。除非开发者拥有大量的直接HTML5开发经验,也许以HTML4术语的方式思考HTML5是明智的:作为Web 2.0概念的一项演进,经常会添加附加的工具。HTML5并不采用同样的方式去处理这些扩展,它做的是HTML概念中“逻辑”方面的事情。因此,HTML5设计的一个好的起点是可以考虑做做表格和字段,并把HTML5视为增加流程灵活性以及集成到表格流程的一种手段。因为大多数规划移动app的企业架构师和开发者有可能按照兼容表格的方式思考,所以适应起来并不困难。

另一种更困难的适应是线性思考处理和字段的集成。开发者往往希望将脚本和处理集成归在一块,但将面向字段的处理分隔在表格中会产生时间问题,从而导致某些浏览器出现不正确的结果。相反,最好是将字段和字段处理放在一起来考虑。这意味着将脚本(在用到时)与使用脚本的页面放在一起。

哪怕仔细的应用规划和调优实践也并非永远都能解决浏览器兼容性的问题,尤其是对于使用复杂表格以及用HTML5的API定义工具等进行后端流程集成的开发者来说更是如此。供移动app使用的HTML5,相对于标准应用来说,至少目前还需要对应用生命周期管理赋予更多的注意。首先,大多数用户预期能更频繁地变更网页,所以也就会有更多的机会引入问题。其次,浏览器变更要比移动设备OS版本升级得更加频繁。往往很难知道此类改变何时发生。系统管理员可以从供应商那里获得浏览器的更新信息,在任何涉及HTML5渲染改变时评估这些更新并触发应用测试和验证周期是明智的。

用户经常报告说,相对于自己尝试将所有的开发流程元素组合到一起,用完整的HTML5框架工具包更容易支撑HTML5的开发。对于一般的HTML5工作来说,Aptana是一个流行选择(+本站微信networkworldweixin),而微软的Visual Studio则是ASP.NET应用的热门工具。无论选择了什么样的工具,他们都应该安装浏览器开发扩展来帮助他们解决兼容性问题。

对于整体HTML5设计的考虑是有效开发最后一个需要关心的问题。用户已经发现若干的一般技巧是有价值的。首先,在任何可能的地方可尝试使用CSS3来替代JavaScript进行表单级的交互。脚本编写是例外,可考虑主要用它来与后端应用交互。其次,明确设计每一个元素的样式,不仅仅是当时需要的元素。许多问题都是因为无法正确设计用途发生改变的元素的样式而形成的。最后,将样式表与网页分隔开来,而不是嵌入进去。这也有助于当移动浏览器不能正确支持样式时的“较少样式”读取。

移动app的HTML5需要有特殊的考虑。首席,移动设备上的内存和性能限制会对复杂HTML5应用产生重大影响。开发者和架构师也许必须仔细考虑页面流转及设计,一遍让应用保持在移动设备的约束之内。然而,如果内存并非要素,替代远程HTML存取的客户端数据库可改善效能。其次,要注意嵌入对象,脚本以及表格——这些东西在移动浏览器上未能得到一致的实现。第三,可尝试云存储而不是cookie;在移动设备上保存cookie也能会有问题,用户设置也会影响应用。第四,要避免第三方插件,因为那些插件可能会造成实现的脆弱。

开发者用HTML5可以做得更多,如果不依赖脚本和sprite的话,他们也应该如此。但至少现在HTML5的灵活性使得网页更像是应用而非表单,用户应该认真考虑正规的ALM来确保其移动HTML5应用能随着设备、浏览器及用户需求的演进得到一致的运行。

[责任编辑:软件频道 yu_xiang@cnw.com.cn]