返回博客首页
← 所有帖子

2019 年春季 NativeScript 社区调查结果

2019 年 6 月 27 日 — 作者:Emil Tabakov

社区调查结束,我们有机会查看结果并进行分析,这是我们团队最激动人心的时刻之一。我们很高兴与大家分享我们的发现。

人口统计

我们的典型受访者在一家科技公司工作,该公司通常规模不超过 5 人,年收入低于100 万美元。他们很可能具有一定的前端背景,并且直接使用该技术。平均而言,他们拥有 3.3 年的移动开发经验,使用 NativeScript 不到一年。大多数情况下,他们之前使用过 Cordova/Ionic (34%)、React Native (24%) 或 Flutter (17%) 开发。

Vue.js 的使用量持续增长(几乎占用户的 1/3),而 Angular 用户群一直是我们最大的用户群体(占总数的 1/2)。

从 NativeScript 开发人员使用的操作系统来看,macOS 居于领先地位,其次是 Windows 用户。

超过 70% 的用户使用该框架不到一年,这清楚地表明我们看到了新用户和活跃用户的增长。

总体满意度

与前一年相比,我们的净推荐值 (NPS) 维持在 12.94 的稳定水平。这得益于大量的推广者(占总数的 1/3)和被动者(占总数的 1/2)。当我们按类别细分 NPS 结果时,我们发现 5% 以内的差异微不足道,这表明总体体验相当好。

当被问及“不推荐该框架的原因是什么?”时,最大的群体回答说他们还没有花足够的时间。这占了很大一部分受访者,他们仍在形成自己的意见或评估该框架。到目前为止,接下来的两个最大痛点是“开发人员体验差”和“性能问题”。这两个方面将在未来几个月成为我们的重点。

开始使用 NativeScript

与去年相比,入门体验有所改善,提高了 8%。我们很高兴地说,我们通过 NativeScript Playgroundtns preview 命令为用户提供快速上手体验所付出的努力得到了认可。一个有趣的发现是,超过一半的人通过某种形式的内容了解到 NativeScript。口碑也是新用户的强大驱动力,这三者加起来占新用户的 75% 以上。下次你想让 {N} 更加成功的时候,请记住这一点!

写一篇博客文章 并告诉你的朋友你如何使用它——这真的能产生很大影响。

入门体验的满意度提高了 5%。使用 {N} 的两种最常见方法是通过入门教程或直接跳到 CLI。数据显示,人们在通过教程开始时更容易找到自己的方向。这意味着,在接下来的几个月里,我们将投入更多精力,使 CLI 对初学者更友好。

谈到使用该技术的入门问题,我们看到了巨大的进步。“安装体验”长期以来一直是这场并不光彩的竞争中的赢家。这一次它跌到了第三位,我们很高兴看到团队在提供更流畅的入门体验方面付出的努力,使其在设置环境方面取得了良好的效果。这个领域接下来的优先事项将是“缺乏高质量文档”和“错误消息不明确”。

功能优先级

很高兴地说,8 个最受欢迎的功能中有 7 个已纳入我们未来几个版本的计划。这些功能围绕以下方面展开

  • 改进的 CSS 支持——我们的计划是通过支持更多属性来扩展 CSS 集成,加强与 Chrome Dev Tools 的“样式”选项卡的集成,并提供长期以来备受期待的功能,例如 box-shadow 支持、媒体查询等。我们将评估切换到另一种 CSS 解析器,这可能会提高性能并提供更多 CSS 功能,例如 CSS 变量。
  • 改进的测试故事——单元测试故事尤其重要。这是我们社区中测试移动应用程序的首选方法。我们计划投入时间来解决与单元测试相关的大量问题。此外,NativeScript 支持的 Mocha、Jasimne 或 QUnit 等可用单元测试框架并不特别适合测试移动应用程序。我们将使用移动友好的选择器和断言来补充这些框架。
  • 新的应用程序主题——我们都希望我们的应用程序美观时尚。当前的 核心主题 提供了一些基本原语来帮助你实现这一点。理想情况下,我们希望通过使其更容易应用于整个应用程序来改进它,它应该控制应用程序外观和感觉的各个方面,并且应该更容易进行自定义。此外,你可能已经听说过iOS 13 将推出暗黑模式——NativeScript 也将通过核心主题满足这一需求。很高兴地说,这些改进的第一部分将包含在即将发布的 6.0 版本中。

另一方面,我们可能会将兴趣有限的功能暂时列入待办事项列表,例如可折叠手机支持、Angular CLI 集成以及将 NativeScript 集成到现有的原生 iOS/Android 应用程序中。

文档和自助支持

文档是另一个我们看到满意度提高的领域,提高了约 4%。对文档不满意最常见的原因是“缺少简洁的示例”和“缺少重要主题”。你的意见在此非常宝贵。如果你在文档中发现缺少内容,请在存储库中打开一个新问题。这将有助于我们更好地确定优先级,并将我们的努力投入到对你最有意义的地方。

如果你在文档中发现问题,请通过打开一个新问题来帮助我们!

我们最近决定关闭我们的论坛,并将所有此类问题重定向到 Stack Overflow。社区中已经可以看到这一点,Stack Overflow 是寻找帮助的第二大最常去的地方。

开发体验

卓越的开发体验是我们过去一年的重点,我们将继续投入其中。这是我们完全切换到 Webpack 用于开发工作流程的主要驱动力,因为我们看到了它可以带来的许多优势——更小、更快的应用程序、更快的调试周期,以及更可靠的工具。下面提到的许多问题领域将随着切换到纯 Webpack 工作流程并继续改进开发体验而得到改善。

性能

这也是我们看到显著改善的另一个领域。结果比去年提高了 4%。此外,曾经排名第一的痛点——“应用程序启动速度慢”现在已降至第三位。未来几个月,我们将重点关注“UI 交互延迟”和“页面切换速度慢”。

针对最后两个问题,我们的计划是继续改进启用 markingMode: none 时的框架行为。在 6.0 版本中,此标志将默认启用,这是朝着使其成为唯一选项迈出的一步,一旦我们看到足够的稳定性,就会这样做。对于基于 NativeScript Angular 的应用程序,另一个重要方面是切换到Angular Ivy 并最大程度地利用新渲染器的优势。预期 Ivy 将生成一个明显更小的对象图,这应该会减少对垃圾回收操作的影响——这是页面切换速度慢和 UI 交互延迟的主要原因。

其他

尽管大多数人通过优质内容了解到该框架——但这只是人们尝试为该框架做出贡献的第四种方式。排名第一的是构建插件,这是一个很棒的趋势,我们希望看到它进一步发展。但请考虑一下——如果你构建了一个插件,你可能有一个很棒的博客文章。你的插件可能填补了缺少的集成,在跨平台 API 中公开了一个原生功能,或者包装了某种自包含的功能——所有这些都将是非常有价值的故事。如果你需要支持,请务必与我们的团队联系。我们很高兴在 www.nativescript.org 上接待客座博主。

总结

该框架在各个重要领域都表现出满意度的提高——入门体验、性能和文档。我们很高兴看到一些最大的痛点感觉不像问题了,并且团队为解决这些问题所付出的努力得到了认可。

我们有一个明确的路线图,其中包含评分最高的特性请求和服务集成,事实上我们已经在着手开发其中的一部分。实际上,其中一些功能将在即将发布的 6.0 版本中推出,该版本将在几周内发布。

这些结果让我们对今年剩余时间的计划更加充满信心,并将成为我们构建长期愿景的基石。参与我们成功的最佳方式是传播该框架的信息,告诉世界你解决的技术问题、你构建的酷炫应用程序,或者你为什么喜欢该框架。当然,还要参加秋季举行的下一届社区调查!