作者 | Richard MacManus
译者 | 平川
策划 | Tina
IDX 项目是谷歌推出的一个面向开发者的“实验性”产品,目前处于公开预览阶段。该产品的描述比较模糊:“具有人工智能特性/加成的集成开发体验”。那么,它是云 IDE 吗?是 Copilot 吗?还是完全不同的东西?为了找出这些问题的答案,我采访了产品主管Kirupa Chinnathambi。
在8月份宣布IDX项目时,该团队(包括 Chinnathambi)表示,该产品是基于浏览器的,“旨在通过流行的框架和语言简化全栈 Web 和多平台应用程序的构建、管理和部署。”
这个产品描述过于宽泛,所以更具体点,我问 Chinnathambi,IDX 项目是否是一个云CDE,类似于 GitHub Codespaces?
他回答说:“它在云中,在浏览器中运行,但我们的目标是从许多方面解决开发者在开发应用(通常是移动应用)时所遇到的那些最大的问题。”例如,他说 IDX 可以帮助开发人员在各种移动设备上测试应用。
“全栈多平台”是 IDX 网站和宣传材料中经常出现的一个词,Chinnathambi 证实,这是指“应用开发人员正在开发移动和 Web 应用”。
IDX 项目是为了帮助开发人员开发既能在 Web 上运行又能在各种移动操作系统上运行的应用。它与 GitHub Codespaces 确实有相似之处,因为这两个产品都集成了微软 Visual Studio Code 的开源产品 Code OSS。但 Chinnathambi 表示,IDX“有其独到之处”。他举的一个例子是,它能够进行 Android 模拟和 iOS 模拟。
在第一次登录到 IDX 项目时,你会看到一个工作区,你可以从这里创建 Web 应用或 Flutter 应用,也有其他的选项。按照谷歌的说法,IDX 的工作空间“包含你的代码、代码编辑器(与你的项目相关的插件)以及支持应用开发的工具链。”
我选择了一个 Web 应用模板——从这里你可以选择自己创建代码或使用熟悉的框架,如 React 或 Angular。
我注意到的第一个“实验性”特性是启用Nix(跨平台包管理器)。在其文档中,谷歌说“IDX 使用 Nix 定义每个工作空间的环境配置”。
因为我个人并不熟悉 Nix,所以我决定取消这个选项,然后继续创建工作空间的下一步……这时出现了一个错误。我又尝试了几次,结果发现是我的工作空间实际上已经创建好了。于是我回到首页,删除了第二个工作区,并打开了第一个。最后,它开始了设置:
生成的工作空间显示了一个简单的 Web 应用程序,当然,我可以在这里做任何事情。
IDX 的 AI 功能相当隐蔽——在屏幕的右下方有一个小图标,当我点击它时,显示如下:
遗憾的是,我无法告诉你 IDX AI 到底有多好,因为我收到了以下消息:“IDX AI 在您的地区尚未启用。“(我的工作地点在英国)
IDX 项目产品负责人 Kirupa Chinnathambi 告诉我,到目前为止,使用 IDX 的主要是 Flutter 和 Web 开发人员。他说,他们从 Python 和 Go 开发人员那里得到的反馈是,该产品需要针对这两门语言做更多的事情,这一点 IDX 团队已经接受。
我可以理解为什么 Flutter 开发人员会想要使用 IDX,因为它是谷歌构建的跨平台开发工具包。所以使用谷歌 IDE 是有道理的。但我问 Chinnathambi,既然React开发人员有很多IDE可以选择,他们为什么要选择 IDX。
他认为,IDX 的易用性和测试特性是 React 开发人员应该选用 IDX 的主要原因。
他说,“React 开发人员是我们的一大受众,他们最喜欢的一件事就是拥有能够让他们在所有不同的移动设备上测试应用的云模拟器。”
在采访中我们发现,除了移动测试,IDX 的许多其他特性要么正在开发中,要么被谷歌称为“实验性”。所以我问他,是什么让 IDX 成为开发人员的创新性解决方案呢?
他提到,人工智能是另一个实验性特性,但更根本地讲,谷歌似乎希望与已经存在的广大的 Web 和移动开发生态系统紧密结合——从移动操作系统(Android)到Chrome Web浏览器,再到谷歌 App 开发工具(如Flutter和Firebase)。
Chinnathambi 说:“我们真正关注的是无障碍上手。你知道,我们的目标是让你可以非常简单地从‘我有一个想法’或‘我有一个项目’,快速进入到基于云环境启动并运行,跳过诸多在 iPad、Chromebook 或其他功能强大的机器上进行的环节。所以我们正积极解决的一件事便是在现代浏览器中登录谷歌帐户,以及如何缩短从输入 URL 到启动并运行应用的时间,然后你就可以开始开发了。”
至少对我来说,IDX 在谷歌开发者生态系统之外是否有用尚不清楚。不过,谷歌尝试构建一个适合自己的开发用户群的工具并没有什么坏处。但最大的问题是,IDX 会吸引 React 或其他 JavaScript 开发者吗?时间会告诉我们一切,但与此同时,你可以加入 IDX 项目等待列表,亲自尝试一下。
https://thenewstack.io/project-idx-googles-new-web-and-mobile-app-development-ide/