HTML5 能取代 Android 和 iOS 应用程序吗?

大量新生移动设备的兴起,改变了互联网的未来。在技术的发展上,HTML5会取代App应用吗?或者说能够在多大程度上取代呢?在HTML5规 范中,已经加入了相机、磁力罗盘、GPS信息的支持。很多新兴浏览器也已经开始支持这些新特性。能否用一个统一的HTML5来替代android和ios 并行开发的双重成本呢?以下译自Michael Mahemoff的一篇文章,详细分析了HTML5能否取代Android和iOS应用程序。

介绍

移动应用程序(App)和HTML5都是目前最火的技术,二者之间也有不少重叠之处。在移动设备浏览器里运行的html5的web页面,也可以重新打包 成不同平台上运行的app。目前很多浏览器都有很好的跨平台支持,(译注:firefox居然可以在android中使用和windows下同样的浏览器 内核),HTML5的web方案,对开发者来说更为方便。完成一次,即可多平台使用。但这确实可行吗?仍然有许多必要原因,使得开发者选择了app开发。 很明显,很多人已经在这么做了。本文将详细分析两种方案的优劣。

功能丰富

正方:App里可以开发出更丰富的功能

我们把移动功能分成两类。程序本身和程序与系统的结合。比如android里,加入widget图标或者通知提醒之类的。App对这两者都没问题。不用多说,这是肯定的。

反方:APP是挺强,但Web也正在迎头跟进

确实很多原生app实现的功能是HTML5望尘莫及的。不管你的web做的再牛,如果停留在一个没有摄像头支持的沙盒中,很多场合还是玩不转。幸运的 是,现在没有这样的沙盒限制了。如果你需要你的web照相片,可以做一个负责照像的app,再把你的web打包进这个应用里面。开源的PhoneGap框 架是这么干的。这样widget,手机提醒也都没问题了。

但这种混合开发的问题在于,增加了复杂性,而且不象传统web那样可以直接在 浏览器里运行。这个问题短时间内恐怕没辙。好在现在网络标准在不断的高速扩充,先进的浏览器也在一直跟进。Android 3.1已经支持camera了。iOS浏览器也支持WebSocket和设备方向检测了。

总得来说,移动设备在发展,而web也同样在快速变化。桌面浏览器本身,有5家主要浏览器开发商在改进现有标准,丰富新的功能。所以原生App在快速前进,同时,web也在缩小差距。

运行效率

正方:原生APP速度更快

原生APP没有瓶颈,而且可以直接调用GPU加速、使用多线程。

反方:现如今Web已经快多了,而且多数应用也用不着那么快。

这说法有点落伍了。Chrome发布之时带来的Javascript V8,给Web速度带来的飞跃。而现在,计算速度变得更快了:

图片处理引擎已经使用web加速。现在硬件加速也已经开始应用了。看看用上硬件加速的canvas(图表来源)

HTML5能取代Android和iOS应用程序吗?

要开发3D游戏的就不用抬杠了,但对于平而来说,新闻、邮件、时间管理、社交网络,这些用Web都够用了。试试Steve Souders的手机性能测试工具。 另外,越来越多的框架结合WebGL,可以发挥OpenGL的优势了。比如ImpactJS,帮助开发JS游戏。

HTML5能取代Android和iOS应用程序吗?

开发感受

正方:原生APP好写

原生APP使用强壮的程序语言(Java, Objective C, C++)。适合写复杂程序,经过历史验证,API丰富。在桌面环境可以方便的用模拟器测试。而Web程序的runtimes和乱七八糟的各路浏览器让人头大。

反方:一般都是Web更简单,特别是需要兼容不同设备的时候。

Web最初的功能只限于文档展示,而不是程序应用,貌似最近俩星期才有了JS。但有了JS后,web的世界马上就不一样了。更何况web不只是静止 的,HTML5,CSS3,EcmaScript Harmony(谁知道这是什么?)都给开发者极大帮助。你是喜欢C++,java, JavaScript,那你的个人爱好,也是基于你已经攒下的代码。但是现在没人能否认JavaScript也和前者站在同一擂台上。

浏览器/runtime的互不兼容(碎片),反过来看做APP也是一样。用Java写了Android app,然后又要面对iOS的Objective C。如果能写一个程序,马上能在Android和iOS上运行,多省事啊。这咱还没提WebOS, BlackBerry,Windows Mobile呢。当然,这是理论上的。要是想让程序在每个平台都跑得很漂亮,得做不少调试和妥协。这对很多原生APP也是一样的。不同OS版本,不同的设 备。。。

所谓的Web碎片化,一直都是如此。但好消息是现在已经有很多不错的解决办法。Modernizr库,用得好的话,可以帮你兼容一大批主流设备,不管是啥系统,哪个牌子的。看看我们2011年的Google IO演示。

用户体验

正方:原生APP更切合原有平台

操作感受的定义之一,就是用户希望在你的程序里,用与系统连贯统一的方式来操作。不同的平台,都有一些约定俗成的习惯。比如长按按钮会有啥反应。你不能指望用一套统一的HTML5 App去满足所有用户。

此外,整个平台的操作感受都由用平台自有的软件库协调。直接调用平台工具包就能直接免费获得完整支持。

反方:我们Web有自己的传统,你要特想做原有平台那种感觉的web,也一样能做出来

前面说了,Web开发的方式,是先做一个大体适合所有平台的版本,然后再针对不同平台不断改进。当这些改进主要是针对功能时,你可以选择几个你最关心的 平台做优化。类似于浏览器检测。技术论坛里的悲催技术员们,经常抱怨这事。太多不同的浏览器版本了。不过如果你优先关注两三种主流平台,是值得为他们多花 点时间做做优化。

web本来就有自己的操作感受。我们也可以说,不同的默认浏览器以及运行环境造就了独特的”Web感受”。从更广的角 度看,这本身就是一种用户公认的方式。此外,还有很多成功的案例并不遵循移动设备的原生操作习惯,人家也成功了。想想你最喜欢的手机游戏的界面?很多更传 统的app也是一样,比如Twitter客户端。

传播途径

正方:原生应用更容易接触客户

象Google Play和Apple Store这样的app发布机制这几年势不可挡,推动了整个移动行业。每个程序员都能在市场里发布自己的应用。用户都挤在市场里浏览,搜索,接受推荐。不仅如此,只要你的程序够好,现有用户的打分会帮助你说服更多新的客户。

反方:其实web才容易接触到客户

通过web找到内容,这是经过论证的可靠途径。利用URL,每一项发布的内容都有一个独立的地址,包括在网站上发布的应用程序。搜索引擎帮助发现内容, 其他网站提供链接,还有一些类似应用市场的分类网站。用户还可以邮件、短信、在社交网站分享你的链接。你的应用链接可以直接在不同设备上直接打开。

web上还没有一个统一的评分系统,但这个情况也在发生改变。往下看。。。

收费

正方:App收费:应天意,顺民生

“六岁孩子午饭时做app,$3一个,卖出几百万”。最近常听看到这样的新闻。各种大小厂商也跟着蜂拥而至,等着圈钱。应用商点帮开发商直接收费。最简单的办法,一次性收费。也有在app里再另行收费或者做订阅收费的,这帮助开发商赢得长期稳定的回报。

此外,传统网站的广告、赞助,在app里也同样适用。

反方:网站赚钱,从来都不是问题。现在机会还越来越多

Web能成为现在社会的推动力,有能力用多种方式取得回报,这是基本条件。虽然使用付费并不普遍。但SaaS的模式已经相当普及了。成功案例包括 Google Apps,37Signals的系列产品,各类邮件的收费版。另外,直接收费并不是web应用的唯一模式。广告、会员链接,赞助,其他产品服务的交叉推广 都是可选的模式。

看着能在应用市场里直接赚钱而眼红的Web开发商们,你们不能直接把你的URL发进市场,但是做一个浏览web的 app的壳子来连到自己的web上怎么样?现在市场中如果不说数以千计,至少也有上百的app这么干了。有些包装的好的,你甚至察觉不到他是一个web程 序。

以后应用市场会直接支持web程序吗?这个现在还不好说,但去年Google已经建了个Chrome web store。虽然还只能从桌面电脑放问,但这已经挑起了浏览器厂商的兴趣。现在还只是个初步概念,但看起来挺有前途。

结论

现在还看不出完胜的一方。有些应用适合做app,有一些适合用html5。目前的情况,原生APP肯定是一个很重要的选择。上面提到的混合式开发,可能是一个不错的妥协方案。能用web的时候用app调用web。web实现不了的功能用app开发。

如果你选择web方式,要在web标准和不断的改进上用心。web技术本身的优点就是能兼容大批不同的操作系统和设备。消极的看,你也可以这是碎片,但web就是一切通吃。

刘强东邀李国庆1000万开赌:京东有60亿现金

京东商城CEO刘强东熬不住了,自重开微博回应“中戏女”传言之后,今日再次开炮,将矛头对准“老辩友”当当网CEO李国庆,誓与其开设“赌局”,1000万压住京东是否还存在资金链危机。近日来,有关京东商城的资金链压力流言颇多,京东方面此前一直采取不回应态度。但这显然有碍于刘强东的情感抒发。刘强东认为,关于京东资金链的坊间传言始作俑者就是当当网的CEO李国庆。

对此,刘强东特邀李国庆开始“赌局”,其誓言如下:

发 现国庆兄又是傻大黑粗,又是京东8月钱烧光,而且没完没了四处说。本不屑过问,今日太闲,东哥设一公开赌局:可以让质疑者查看京东帐户,低于60亿现金 (只是部分帐户)东哥个人向@爱心衣橱 捐1000万,否则造谣者只需捐500万。是个男人不仅敢说还要敢做!大家同让造谣者出来迎战吧!

在刘强东发出誓言的同时,李国庆正在“鞋城”泉州的鞋服行业电子商务峰会上发表激情盎然的演讲。显然,当当网CFO的离职以及昨日股价15%的下跌幅度并没有打消当当网CEO李国庆的宣讲热情。

李国庆尚不知刘强东针对自己言论所开设的“赌局”。

在演讲台上,李国庆表示,由于来自供应商的自消费电商零售总额中有30%水分。当当、京东毛利10%,能做到满200减100,满200减100,刺激了很多实体店从网上进货。但这一玩就形成了负毛利率销售。

同时他称,电商的品类是打出来的,明年“大家电”的格局将会出现,而经过价格战,今年电商图书品类的格局已经定型。当当网图书品类占图书零售总额的30%,占绝大优势。

腾讯科技

深圳:各行业平均工资

市人力资源和社会保障局昨日发布了2012年工资(税前总额)指导价位,其中2012年各行各业平均月薪为3892元,比2011年的3326元/月增长了17%。

变化:平均月薪涨17% 基层工资大幅提高

昨日,市人力资源和社会保障局制定并公布了《深圳市人力资源市场工资指导价位(2012年度)》和《深圳市技能人才工资指导价位(2012年度)》。今年纳入工资指导的总工种数量达到603个,其中,生产、运输设备操作人员及有关人员工种(职位)比上年增加了57个工种。

从总体情况看,市2012年工资指导价位较2011年呈平稳增长态势,高位数、中位数、低位数及平均数分别为:25830元/月、3087元/月、 1600元/月和3892元/月,分别比上年增长1.7%、3.9%、12.4%和17%。其中,平均高位数和低位数差距24230元。

根据数据,明显可看出低位数及平均数相比高位数、中位数相较往年有较大增长。深圳市人社局表示,其原因主要是深圳市委、市政府高度重视保障基层劳动者工资权益,连续几年加大最低工资调整力度,企业普通员工的工资水平均有较显著的提高。

指导工资价位之最:

金融行业蝉联冠军

记者在指导价位表上看到,在18类行业工资指导价位中, 金融业在平均数和高位数上依然“蝉联冠军”,分别是平均数8987元/月和最高数63799元/月,与2011年指导价位基本持平。记者发现,金融业低位 数是3500元/月,该行业高位数竟达到了低位数的18.2倍。

紧随其后的是科学研究、技术服务和地质勘察业,其平均数是6672元/月。勉强排在第三位的依然是信息传输、计算机服务和软件业,其平均数为4385元/月,但其金额已经是冠军金融业平均数的二分之一。

相较于令人羡慕的金融等行业,居民服务和其他服务业以平均数2894元/月继续拿下倒数第一,住宿和餐饮业也以平均数2957元/月紧随服务业,成为了18个行业中唯一两个平均指导月薪没过3000元的行业。

对此,看到公示很多市民依然表示“钱不够用”。在TCL工作的廖宇告诉记者,她也算白领一族,月薪过万的同时也有丰厚的年终奖,但感觉生活越来越贵,“我希望涨薪的同时物价也不要再涨了。”

小贴士:

据悉,工资指导价位中的“工资”指税前工资总额,根据《深圳市员工工资支付条例》,是以货币形式支付的劳动报酬。包括:计时工资、计件工资、奖金、 津贴和补贴、加班加点工资、特殊情况下支付的工资,但不包括用人单位缴交的社会保险费。据了解,建立起一套人力资源市场工资指导价位制度,可以向社会公布 目前市场上招用较多的各工种(职位)人力资源工资价格信息。

文/广州日报

英特尔详解其 Windows 8 平板配置

intel-clover-trail-tablet-ces-2012-small

英特尔在北京举行的一次会议上详解了其Windows 8平板未来的硬件配置。目标是伟大,但是英特尔能在今年完成吗?这就难说了。

芯片将采用支持"burst mode"(在有需要的情况下可以快速提升性能)和超线程的双核Atom Z2760 "Clover Trail"。超线程可使双核芯片在某些情况下呈现出四核芯片的特性。

intel-z2760-clover-trail-tablet-small-2

  1. 两种尺寸:英特尔认为平板电脑可以分为两个尺寸:常规10英寸平板电脑和带物理键盘的11英寸混合型平板。
  2. 电池寿命:最低9小时,当然,现在还是纸上谈兵,具体情况还要看最终产品的实际效果。
  3. 3G/4G:这对平板是必须的。现在英特尔已经收购了英飞凌的无线部门,所以在必要时候英特尔还会推出自主研发的无线硅芯片。
  4. 重量和厚度:这个方面没什么看头,以the new iPad为基准:1.5磅以下,9毫米以下(the new iPad是1.44磅,9.4毫米)
  5. 其他功能:NFC(近场通讯)和Wi-Fi Direct。

上面所说这些也就意味着英特尔Windows 8平板将会在今年下半年商业化发布,现在的这些应该是英特尔的计划。

简化 PHP 开发的10个工具

本文介绍了可以帮助简化 PHP 开发的11个项目,包括框架,类库,工具,代码。

 

1. CakePHP Development Framework 

CakePHP 是一个 PHP 的快速开发框架。它提供了可扩展的架构,使用了常见的 MVC 和 ORM 模式。它遵循约定优于配置理念。

2. pChart

pChart 是一个用来创建图表的 PHP 框架。在大部分图表类库都收费的今天,pChart坚持免费。你可以用 SQL 查询、CSV 文件、或者手工输入数据。这个项目仍在前期开发中,每周都有更新。

3. PHP Filters

我们在用表单的时候总是需要数据验证。非法的输入会带来安全问题,也可能把你的网页弄乱。“filter_var”函数可以用来验证,或者移除飞叉字符。

4. Symfony

Symfony 是一个基于 PHP 的全功能框架。它提供了一些框架,组件和工具让开发更快速的开发复杂的 Web 应用。Symfony 是基于经验的一个项目。它并没有重复发明轮子,它利用了很多现有的最佳实践,并且集成了很多第三方的类库。

5. 把数据库备份到 XML 文件

备份数据是很重要的,而数据库往往是最重要的部分。丢失数据库的后果是灾难性的。上面的代码可以帮助你把数据库备份到 xml 文件。

6. 使用 PHP 压缩 CSS 文件

7. PHP 自动提示组件

对于很多新手来说,这也许是最简单的方式来实现自动提示功能。你只需要修改一些参数就可以了。

8. XAMPP

很多人都有安装开发环境的苦恼。XAMPP是一个可以帮你一次性安装 Apache,MySQL,PHP 和 Perl 的重发行包。它的使用超级简单,下载,解压,安装就搞定了!

9. CodeIgniter

CodeIgniter 是一个强大的 PHP 框架,但是它很小巧。它占用资源少,开发快速,文档全面。

10. pear.php.net

PEAR 是一个可重用 PHP 组件的分发系统和框架。它可以极大的简化你下载和安装开发包的工作。

11. 缓存动态 PHP 页面

原文链接OSChina.NET 编译