开发者调查结果:库和跨浏览器移动支持?

在 Mozilla,我们致力于保持网络的开放和独立于任何单一公司或技术。这意味着用户应该可以选择使用不同的浏览器和技术上网,并且不应因为无法负担特定设备或被禁止更换浏览器而被拒之门外。

在移动网页开发领域,目前正围绕着对各种浏览器的支持需求展开一场激烈的辩论,因为最成功的手机系统都使用相同的浏览器引擎。这很好,我们需要这场辩论。然而,当开发者为了专注于特定浏览器而将用户拒之门外时,这就不好了。有时,这不是开发者的选择——他们只是在使用会进行这种屏蔽的工具,而工具的实用性超过了开发者对这种做法的顾虑。

我们目前正在与库和工具开发者交流,帮助他们支持多个浏览器引擎来防止这种情况。作为该流程的起点,我们希望了解人们目前正在使用的工具,以便我们在提供帮助时能够产生最大的影响。这就是我们进行在线调查,询问开发者他们用于移动开发的工具的原因。

590 位开发者参与了调查,我们感谢他们花时间为我们提供许多思考和思考的素材。

我们非常清楚,这不是一项科学严谨的研究,应该谨慎看待(我们没有询问人们使用工具的频率,或者他们有多少工作是在构建移动应用程序),但它让我们对正在发生的事情有了很好的了解。

因此,让我们直接进入数据,以下是用图表显示的数字以及简短的评论。

平台

许多开发者在这项调查中表达了他们对网络的热爱,但这毕竟是 Mozilla 发起的调查。由苹果主导的调查很可能会有不同的结果。iOS 和 Android 排在第二位,而 Windows Phone 和黑莓对填写调查问卷的开发者来说并不那么重要。当然,如果我们针对不同的市场进行这项调查,结果可能会大不相同。有趣的是,在 Android 的情况下,“必须拥有”的数量高于“关注”——这是唯一一个出现这种情况的平台。

您可以在此处动态比较结果:此处

您的应用程序目标平台 - 网络
关注 370 63%
必须拥有 153 26%
支持 33 6%
有时 23 4%
从不 11 2%
您的应用程序目标平台 - iOS
关注 261 44%
必须拥有 207 35%
支持 53 9%
有时 28 5%
从不 41 7%
您的应用程序目标平台 - Android
关注 182 31%
必须拥有 221 37%
支持 102 17%
有时 47 8%
从不 38 6%
您的应用程序目标平台 - Windows Phone
关注 10 2%
必须拥有 46 8%
支持 131 22%
有时 173 29%
从不 230 39%
您的应用程序目标平台 - 黑莓
关注 8 1%
必须拥有 15 3%
支持 100 17%
有时 164 28%
从不 303 51%

用户可以选择多个复选框,因此百分比可能加起来超过 100%。

在库的世界中,jQuery 和 jQuery mobile 遥遥领先,使用次数比第二名 Zepto.js 多出 200 多次。许多反馈表明,开发者不喜欢库,而是选择在移动设备上使用自己的手工解决方案。虽然看到跨浏览器库的使用量最高(jQuery 刚刚 宣布他们非常乐意支持 Firefox 移动版),但 Sencha 用户数量之高令人担忧,我们将看看如何帮助他们改进跨浏览器支持。Sencha 也在“为什么只支持 Webkit”问题中被多次提及,这表明它对开发者来说是一个重要的工具。

您使用哪些库来构建移动 Web 应用程序/网站?
jQuery 437 74%
jQuery mobile 301 51%
Zepto.js 116 20%
JO 5 1%
XUI.js 23 4%
Sproutcore 9 2%
Sencha touch 88 15%
JQTouch 61 10%
Mootools mobile 16 3%
M 项目 1 0%
Nimblekit 2 0%
Lime.js 10 2%
Wink 2 0%
Uxebu Bikeshed 1 0%
其他 152 26%

用户可以选择多个复选框,因此百分比可能加起来超过 100%。

总共我们收集了 66 个库(按受欢迎程度排序):jQuery、jQuery mobile、Zepto.js、Sencha Touch、JQTouch、XUI.js、Backbone、Mootools mobile、Lime.js、Sproutcore、Angular JS、Underscore、Bootstrap、Enyo、Modernizr、Dojo、handlebars、JO、Closure、Dojo Toolkit、GWT、Hammer.js、iScroll、require.js、YUI、Chibi、Ember.js、Kendo、Kinetic、Lungo.js、Nimblekit、Prototype、Wink、Adobe Air、Atto、Box2D、ChesterGL、Cobra、Crafty、Cujo、d3.js、Dart、Dojo Mobile、Dojo Mini、enhance.js、Eyebrow.js、fitml、gl-matrix、H5BP、JQMobi、Javelin、Jukebox、Knockout、MProject、Mootools、Openlayers、Path、Playcanvas、pointer.js、Raphael、Sugar.js、TerrificJS、Thorax、Titanium Mobile、Uxebu bikeshed、Wakanda

转换框架

毫无疑问,Phonegap / Cordova 在这个细分市场中占据主导地位,紧随其后的是 Appcelerator。许多反馈也表明,原生应用程序应该使用原生代码编写。作为一名 Web 传教士,我不同意这种观点,因为您无法从原生转换为 Web,但反过来可以,但有趣的是,开发者认为有必要在这里发表自己的意见。

您使用哪些框架将应用程序转换为原生应用程序?
PhoneGap 325 90%
Appcellerator 50 14%
MoSync 2 1%
其他 38 10%

用户可以选择多个复选框,因此百分比可能加起来超过 100%。

总共我们收集了 13 个转换工具(按受欢迎程度排序):Phonegap、Adobe Air、Apache Cordova、Cocoon.js、Brightcove App Cloud、Mosync、Sencha Native SDK、appMobi、Flex Mobile、Mobileweb、Monotouch 和 backbone。

可视化编辑器

似乎没有多少开发者使用可视化编辑器,这可能是因为大多数编辑器仍然处于“测试版”或“alpha 版”阶段。对 Flash 开发者进行相同的调查,看看他们迁移到 HTML5 后数字是否更高会很有趣。就目前而言,Adobe Edge 和 Sencha Animator 是明显的赢家,其中一些条目非常有趣,包括一个“你一定是在开玩笑吧”:)。

您是否使用任何可视化工具/转换器来构建应用程序?如果是,使用哪些?
Adobe Edge 19 36%
Sencha Animator 10 19%
其他 25 47%

用户可以选择多个复选框,因此百分比可能加起来超过 100%。

总共我们收集了 17 个编辑器(按受欢迎程度排序):Adobe Edge、Sencha Animator、Adobe Dreamweaver、Adobe Flash、Adobe Photoshop、Codiqua、Construct 2、Hype、Playcanvas、Radi、Rhodes、Telrik、Tiggzi、Tiler、Wakanda、Web Developer Add-on、WebMatrix

仅支持 Webkit?

71% 填写调查问卷的开发者表示他们在不止一个 Webkit 浏览器上进行测试,并且在调查的通用反馈部分,我们获得了大量关于人们如何进行测试以及什么可以使他们更容易进行测试的信息。这让我们很高兴。

您是否在非 Webkit 浏览器上进行测试?
421 71%
169 29%

只支持 Webkit 的原因

这里的主要原因是缺乏时间在其他平台上进行测试,这是可以理解的——我们可以假设,从规划的角度来看,许多项目都写满了 99% 的 iOS/Android 代码。此外,“缺乏激励”的比例也很高,这也是可以理解的——如果你无法展示数字,你就没有时间去支持。当然,“目标硬件不支持”的比例也很高,这是一个非常可以理解的原因,我们希望能够改变这种情况。

客户需求定义的固定环境 46 24%
缺乏时间支持更多浏览器平台 103 55%
缺乏激励——我不知道支持更多的好处 79 42%
缺乏关于如何在非 Webkit 浏览器上安装和调试的文档 43 23%
测试平台上其他浏览器的错误 31 16%
目标硬件不支持其他浏览器 68 36%
其他 20 11%

用户可以选择多个复选框,因此百分比可能加起来超过 100%。

仅支持 Webkit 的技术

关于“您在 Webkit 浏览器上使用哪些对您至关重要且其他浏览器不可用的技术/功能?”的问题,135 位开发者回答了这个问题,但只回答了我们想知道的部分内容。许多答案不是 Webkit 的功能,而是依赖于操作系统和硬件的一般速度和可用性原因。许多答案也简单地说明,这些浏览器随硬件一起提供,这意味着最终用户拥有它们,开发者没有安装其他浏览器或工具的额外负担。然而,许多开发者称赞“单浏览器平台 Web”的可预测性,以及不必担心供应商前缀和 HTML5 支持差异。

Firefox 移动版可以改进什么?

关于“如果是,Firefox 移动版可以提供什么来让您的生活更轻松?”的问题,大约 230 人回答了这个问题,这对我们改进浏览器非常有帮助。明确的信息是需要 Firefox Android 的远程调试功能,该功能刚刚在 Hacks 博客上发布。显然,开发者不希望在编写代码和查看手机上的结果之间存在长时间的延迟——这一点非常可以理解。此外,对台式机原生模拟器的需求也很高,以避免使用手机的需要。另一个突出的问题是,支持更旧、更多硬件。

还有什么其他问题吗?

“还有什么你想听到的吗?”这个问题收到了 73 个答案,其中包含许多很棒的反馈,特别是对目前 Mozilla 正在发生的事情的赞赏,以及一些来自开发人员的非常详细的担忧。现在我们有充足的时间来仔细阅读这些答案,并将看看如何在下一版本的浏览器中加速满足其中一些需求。

查看结果

我们已将匿名答案上传到 Google Docs 中的电子表格,欢迎您随时阅读和深入研究:Mozilla 库调查

衷心感谢

最后但并非最不重要,我们想向所有参与的人说一声谢谢!。现在我们拥有了许多有见地的信息,可以将我们的推广重点放在对支持跨浏览器网络影响最大的框架、工具和库上。我们也对网络攻击和粉丝行为保持在最低限度感到非常惊喜,这表明这个主题对所有开发者来说确实很重要。

关于 Chris Heilmann

HTML5 和开放网络的布道者。让我们一起解决这个问题!

更多 Chris Heilmann 的文章…


5 个评论

  1. Bill King

    您是否可以对图表进行规范化,以便它们都显示例如 0-370?否则,它们在图表之间进行比较时毫无意义,并且仅在图表内部有用。

    谢谢。

    2012 年 8 月 14 日 晚上 11:52

  2. Chris

    在您的 66 个库列表中,您分别列出了 Dojo 和 Dojo Toolkit。这是一个错误吗?例如,不应该将它们合并在一起吗?此外,您能提供“其他”类别中库的数据吗?

    2012 年 8 月 15 日 上午 8:46

    1. Chris

      此外,Dojo Mobile 和 Dojo Mini 也分别列出。实际上,应该将它们作为 Dojo 和 Dojo Mobile 类别(类似于 JQuery/JQuery Mobile 和 ExtJS/Sencha Touch),否则将它们合并为一个 Dojo 类别,因为目前尚不清楚这些 Dojo 相关类别中的数字在本次调查中代表什么。根据当前数据,Dojo 的地位尚不清楚/具有误导性——我们知道,例如,Dojo Mobile 网站比 Wink 网站更多。

      2012 年 8 月 15 日 上午 8:53

    2. Kyle Hayes

      是的,我同意这里关于 Dojo 的缺乏清晰度。

      2012 年 8 月 18 日 上午 8:09

  3. George

    您是如何选择参与调查的人员的?

    我注意到 NSB/App Studio 没有被列出。下次,请告诉我们,我们会让我们的用户参与您的调查。

    您会听到更多使用可视化编辑器的人的声音。

    2012 年 8 月 20 日 下午 1:36

本文的评论已关闭。