亚马逊AWS官方博客

推出 Amazon Honeycode – 无需编写代码即可构建 Web 和移动应用程序

VisiCalc 于 1979 年推出,当时,我购买了一份在 Apple II 上使用(如右图所示)。它的电子表格模型非常整洁,而且易于使用,最重要的是易于教学。当时我在一家计算机零售商店工作,当客户开始要求购买软件,并询问运行该软件需要什么硬件时,我就意识到该产品意义重大。

如今的电子表格填补了量产的打包应用程序与由专门的开发人员团队创建的定制代码之间的巨大空白。然而,每种工具都有其局限性。与处理大量数据一样,在多个用户和多个电子表格之间共享数据非常困难。集成和自动化也具有挑战性,并且需要专业技能。很多情况下,定制应用程序是比电子表格更优越的解决方案,但如果开发人员或其他 IT 资源不足,就鲜少有机会构建这类应用程序。

推出 Amazon Honeycode
今天,我们隆重推出 Amazon Honeycode 的 Beta 版。这是一项全新的完全托管的 AWS 服务。利用该服务,您无需编写任何代码,即可构建强大的移动和 Web 应用程序。它使用熟悉的电子表格模型,让您在几分钟之内上手。如果您或您的团队成员熟悉电子表格和公式,您会很高兴地发现,大家已经掌握的关于表单、表格、值和公式的所有知识都仍然适用。

Amazon Honeycode 包含一些用于构建常见应用程序的模板,供您和团队其他成员直接使用:

您可以随时自定义这些应用程序,更改将立即部署。您还可以从一个空表开始,或者导入 CSV 格式的现有数据。使用 Honeycode 构建的应用程序可以利用丰富的用户界面对象,包括列表、按钮和输入字段:

Honeycode 还提供了由触发器驱动的内置动作,比如,生成电子邮件通知和修改表:

Honeycode 还包括大量内置函数。现有的电子表格用户已经对其中许多函数非常熟悉了,另外一些函数是 Honeycode 新推出的。例如,FindRow 是广为人知的 Vlookup 函数的增强版本。

Honeycode 入门
它非常容易上手。首先,访问 Honeycode Builder,并创建账户:

登录后,大家将看到我的网盘以及自己的工作簿和应用程序,还有多个搜索、筛选和查看选项:

可以打开并浏览现有项目,也可以单击创建工作簿来新建项目。我决定新建一个项目,然后选择简单待办事项模板:

随即将创建工作簿、表和应用程序,并可以立即使用。您可以简单地从表中清除示例数据并与用户分享应用程序,也可以进行检查和自定义。我们先来检查一下,然后就可以分享了!

在创建新工作簿后,将显示任务表,我们可以看到其中的示例数据:

虽然看起来与传统电子表格类似,但它背后隐藏着许多强大的功能。我们来逐列探索一下:

A (Task) – 纯文本。

B (Assignee) – 文本,设为“联系人”格式。

C (First Name) – 文本,由公式计算得出:

在该公式中,Assignee 代表 B 列,First Name 代表联系人的姓氏。

D (Due) – 日期,提供多种格式选项:

E (Done) – 从另一个表中提取值的选择列表,并且添加了 Honeycode 行链接格式。这两项功能将该列的值限制为另一个表中出现过的值(在本例中,Done 列中的值可以是 YesNo),同时,另一个表中的值在此表的上下文中可见:

F (Remind On) – 另一个选择列表,此列可以使用 ReminderOptions 表中的值:

G (Notification) – 另一个日期。

这个特定表只使用了几种可用的功能和选项。

我们可以使用左侧的图标来进一步探索工作簿:

我们可以看到一些表:

还可以看到应用程序。单个 Honeycode 工作簿可以包含使用相同表的多个应用程序:

在回到应用程序和 App Builder 部分之前,我们先来简单看一看“自动操作”:

再强调一次,工作簿中的所有表和应用程序可以使用工作簿中的任意自动操作。

Honeycode App Builder
下面我们来详细了解一下应用程序生成器。与上文对表的介绍一样,我将展示一些重点内容,其余的部分留给大家自己探索。当我们在生成器中打开简单待办事项应用程序时,我们将看到以下画面:

此应用程序包含四个屏幕(我的任务所有任务编辑添加任务)。所有屏幕都提供 Web 布局和移动应用布局。无论是新创建的屏幕还是此应用程序中已包含的屏幕,这两种布局都已经相互关联,因此,对一个布局进行的更改也会在另一个布局中反映出来。如果您想对控件、演示文稿进行更细致的控制,或者宁愿两者有所区别,则可以取消布局之间的关联:

屏幕内的对象可以引用表中的数据。例如,我的任务屏幕上的“列表”对象对任务表中的行进行筛选,选择了未完成的任务并按到期日期排序:

源表达式如下:

=Filter(Tasks,"Tasks[Done]<>% ORDER BY Tasks[Due]","Yes")

在对筛选求值时,筛选条件中的“%”由第二个参数 (“Yes”) 替换。这一替换机制使您可以轻松地使用 FILTER() 函数创建有趣而强大的筛选。

在应用程序运行时,“列表”中的对象会进行复制,每个任务都将有自己的对象:

屏幕上的对象可以开始运行自动操作和动作。例如,添加任务按钮将导航到添加任务屏幕:

添加任务屏幕会提示您输入指定新任务的值,添加按钮使用自动操作将这些值写入任务表:

自动操作可以通过四种方式触发。下面的自动操作为尚未标记为完成的任务生成提醒。该自动操作对任务表中的每一行运行一次:

只有在任务尚未标记为完成时才会发出通知,这里也可以使用 FILTER() 函数:

由于篇幅有限,我无法为大家展示如何从头开始构建应用程序,下面仅加以简要介绍。

单击创建工作簿,然后选择导入 CSV 文件从头开始构建

单击图标并创建参考和数据表:

单击应用程序图标并构建应用程序。您可以选择使用您的表作为起始点的向导,也可以完全从零开始。

单击自动操作图标并添加由时间触发或由数据触发的自动操作:

按照下一小节中介绍的步骤分享应用程序。

分享应用程序
在完成应用程序构建后,我们可以与团队中的其他成员分享它。每个 Honeycode 用户都可以是一个或多个团队的成员:

为了分享应用程序,我们单击分享应用程序

然后搜索希望与之分享应用程序的团队成员,并进行分享:

这些团队成员将收到一封包含链接的电子邮件,并通过该链接立即开始使用分享的应用程序。使用移动设备的用户可以安装 Honeycode Player(适用于 iOSAndroid 系统),并使用与之分享的任意应用程序。下面是“简单待办事项”应用程序:

Amazon Honeycode API
外部应用程序也可以使用 Honeycode API 与您通过 Honeycode 构建的应用程序进行交互。可以使用的函数如下:

GetScreenData – 从 Honeycode 应用程序的任意屏幕中检索数据。

InvokeScreenAutomation – 调用 Honeycode 应用程序的屏幕中定义的自动操作或动作。

先睹为快
如您所见,Amazon Honeycode 易于使用,功能强大,能够帮助您和您的团队更加高效地构建应用程序。快来试着构建一些炫酷的应用程序,然后告诉我您的想法吧!

Jeff

附注 – 您可以在 Amazon Honeycode 论坛提出问题、向其他用户学习并查找帮助您入门的教程和其他资源。

本篇作者

Jeff Barr

Jeff Barr 是 AWS 的首席宣传官。他于 2004 年创办本博客,此后几乎未间断地撰写文章。