热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

有人说基于成熟后的HTML5移动web应用才是未来,因为省去了app移动应用在不同终端的开发时间。基于终端的移动应用也会走下舞台,各位怎么认为?

php中文网(www.php.cn)提供了最全的编程技术基础教程,介绍了HTML、CSS、Javascript、Python,Java,Ruby,C,PHP,MySQL等各种编程语言的基础知识。同时本站中也提供了大量的在线实例,通过实例,您可以更好的学习编程。..

回复内容:

因为执行效率,浏览器安全沙箱等一系列原因,native原生程序一时半会儿不会被淘汰。个人觉得将来可能根据应用的用途不同而在HTML5和Native2个方面做分化。比如注重信息和内容以及网络的应用可能更多放到浏览器采用HTML5。一些本地应用,最求执行效率或者系统相关的应用还是更多采用Native。甚至HTML5可以用于一些Native应用的前端显示。2者肯定是并存,互补,甚至互相嵌套 HTML5就是HTML的最新版本,是用来做网页的。网页能做什么,他也就能做什么,只不过效果更加丰富一些。
说HTML5才是未来的人,多半因为他自己只会HTML5, Javascript, 而且不愿意学习android和objective c.
以后多数应用这样发展:
1.依赖原有的web代码,改出一个html5的移动版,支持大部分手机;
2.开发一个ios版,做对ios的特别支持;或者外包出去
3.开发一个android版,努力适配不同的android手机;或者外包出去
视不同情况,有的公司会优先做ios, 有的会优先做html5, 有的会优先做android. 最近wp7听说不错,也许也是一个可以考虑的选择。

浏览器在PC上确实很重要,目前甚至可以说是最重要的程序。

从所谓Web2.0时代开始,浏览器代替本地应用的言论就不绝于耳,而且,在PC上,浏览器确实干掉了相当多的程序(如音乐视频类). 不过更多的程序还是没有办法替代,而且出于流量问题和安全性问题,大部分应用也不应该被替代。


现在手机上的浏览器要想做到PC浏览器的重要程度确实还有很大的距离,原因有很多。

1.手机浏览器还不能和PC浏览器完全兼容,导致手机浏览器的功能无法和PC相同,很多东西做不了(参见各种页游)。

2.手机用户更加的重视流量,效率(电池)等,做同样的事情,用定制的App比浏览器要省流量,提效率,速度会快很多(参见各种新闻网站类App)。

3.App可以给开发商更多的权限,让他们可以得到更多的用户数据等,实现更多的功能,浏览器做不到。

写给那些想要选择 HTML5 的同学:
1. 不要对跨平台有所期望,HTML5 在分裂得奇型异状的 Android 平台上,就是一场噩梦;
2. 选择 HTML5 等于放弃了 iOS 原生天然的、集中了绝大部分用户来源量的 App Store 这个重要的分发渠道。除非你是搜索引擎、微博等天然的流量平台,否则你得权衡一下,这个放弃是否值得。
3. (仅针对 iOS 平台)UIWebView 所能支撑的用户体验,是否会成为视觉/交互设计的限制。
4. 如果使用 PhoneGap 等封装 App 工具,要仔细调研(做实验而不仅仅是看文档)它的能力边界,如仅支持 single web view 这种大坑⋯⋯
5. 针对长页面、大素材(如大幅图片)、负责交互、重渲染(如阴影)等的优化,尤其是内存优化。
6. 不断的针对“仿原生”的用户体验进行优化,如:预加载、按钮的交互体验细节等等。
7. 如果非得兼容低版本的 iOS 或者低配置的机型(如较早期的 Touch),坑就更多了⋯⋯熟悉 UIWebview 是必须的⋯⋯
8. 如果可以的话,UI 尽可能 simple (不代表不好看不好用)也很重要⋯⋯⋯⋯⋯⋯

以上,根据经验(其实是教训居多)粗略写了些。记忆容量所限,恕未能穷举。
本人没有不支持 HTML5 的意思,只是想要告诉后来人:选任何一条没有太多人走过的路,总是有很多坑要克服的。

另外,凡事无绝对。除了纯 web 或者纯原生,还有混合(web * native)这条路可以走呢⋯⋯ 在3年内HTML5不会占领移动市场,5年后是否能占领移动市场还未可知。 最近有人让我回答silverlight 和html5的生命力。
我认为这两者是不适合对比的,首先html5更多是一种标记语言,而silverlight是一个集成开发工具。
html5的作用在于将很多插件公用的部分写成标准,交给浏览器来实现,相较silverlight 脱于成熟的.net 框架。其的设计还很稚嫩,也不是一发而就的。插件也不可能完全取消。
其次它用js作为开发语言,更多是面向过程,其不适合于开发大型的客户端系统软件。
我倒是认为移动应用使用html5, 大型的bS+CS架构使用silverlight比较合适。
如果只用HTML写应用就行了的话,那为什么不直接把浏览器当作系统?? 呵呵,很多年前,就有人说:PC只需要一个浏览器就够了,所有的客户端都可以卸载了。现状呢? 短期不可能,但是打包HTML内容的native混合架构是非常适合某些应用的,而且已经大行其道了 从小型机到PC到BS结构到移动应用一路看过来,觉得纠结这个问题没什么必要,如果我告诉你HTML 8才是未来,你是不是什么都不干坐等HTML 8啊?记得当初把一个vb应用改写成power builder bs结构也是很欢乐的一件事,不过在上司面前鼓吹bs节构的时候,遭到不以为然无动于衷,因为他老人家原来在小型机上工作的。
推荐阅读
  • 我们程序员为什么要关注 JavaScript ?_js
    受这周我在企业中看到的JS现状的启发,我写了这篇文章。10年之前,我从来没有想过现在的JavaScript竟然会变得几乎无处不在。下面是几个你之所以要关注Java ... [详细]
  • 在使用react-native-scrollable-tab-view这个组件。每一个tab嵌套了一个webview地图。安卓debug下每一个tab都可以都正常显示,打包apk之后有一点问题进 ... [详细]
  • 最近给公司做一个企业App,Android客户端+Java服务端,总共有十几个模块,其中有几个模块就是从服务端查询数据,手机上的功能有列表展示及下载附件。?我是做Java服 ... [详细]
  • App混合开发(英文名:HybridApp),是指在开发一款App产品的时候为了提高效率、节省成本即利用了原生的开发技术还应 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了预加载多个本地WebView相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 四十六、PhoneGapPhoneGap可能是Android最初的替代应用框架,于200 ... [详细]
  • 本文给大家讲解下如何在Ubuntu11.04环境下使用Eclipse,AndroidSDK和PhoneGap搭建Android开发环境。#1,安装Eclipse和AndroidSD ... [详细]
  • 如何用css,javascript创建一个圆圈? - How to create circles around a circle with css, javascript?
    Iwouldliketocreateacircle(withoutanyanimation)whichissurroundedbyothercircles,liket ... [详细]
author-avatar
PHP菜鸟
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有