谷歌发布多平台应用开发神器:背靠 AI 编程神器 Codey,支持 React、Vue 等框架,还能代码补全

news2024/12/29 18:35:25

一、概述

8 月 8 日,谷歌宣布推出 AI 代码编辑器 IDX,旨在提供基于浏览器的人工智能开发环境,用于构建全栈网络和多平台应用程序。谷歌在创建 IDX 时并没有构建新的 IDE(集成开发环境),而是使用 VS Code 作为其项目的基础。目前,IDX 支持 Angular、Flutter、Next.js、React、Svelte 和 Vue 等框架以及 JavaScript 和 Dart 等语言,后续还将支持 Python、Go 和其他语言。

据了解,IDX 是基于 Google Cloud 构建的一整套浏览器开发体验,由 Codey 提供支持。IDX 项目还以 Code OSS 编辑器为基础。当前,IDX 还未大面积开放,只有少数指定测试人员能够亲身参与体验。不过 IDX 团队透露,在即将召开的 Google Cloud Next 大会上,可能会有更多 Codey 现有成果及未来发展计划的消息与广大开发者见面。IDX 团队表示:

我们花费了大量时间编写代码,AI 的最新进展则创造了巨大的机会空间,能让我们更高效地利用时间。通过 IDX 项目,我们正探索谷歌在 AI 领域的创新成果(包括为 Android Studio 中的 Studio Bot 提供支持的 Codey 与 PaLM 2 模型、Google Cloud 中的 Duet 等)如何帮助开发者加快代码编写速度、提高代码编写质量。

二、谷歌发布 AI 代码编辑器 IDX

IDX 团队在博文中提到,时至今日,从零开始构建应用(特别是能在移动、Web 和桌面平台上良好运行的应用)的难度简直不逊于制造鲁布·戈德堡机械(Rube Goldberg machine,一种被设计得过度复杂的机械组合)。开发者需要在无尽的复杂性之海中航行,将种种技术栈粘合起来,奋力摸索出一条能够正确引导、编译、测试、部署和监控应用的路线。

虽然谷歌多年来一直致力降低多平台应用的开发难度,也先后推出了 Angular、Flutter、Google Cloud 乃至 Firebase 等成果,但似乎还能做得更好。毕竟当下的多平台应用开发还远远称不上快速、顺畅。所以几个月前,谷歌的几个小伙伴聚在一起开始尝试,而这场实验的早期成果就是 IDX 项目(http://idx.dev/)。

团队之所以决意构建 IDX 项目,一个重要原因就是希望听取广泛开发者社区的意见,了解哪些要素能帮助大家提升工作效率。

三、IDX特性

具体来说,IDX 项目当前主要可实现以下功能:

随时随地,快速工作

IDX 项目的核心是帮助开发者在任何位置、任何设备上进行开发,并且获得完全保真的本地开发体验。IDX 项目中的每个工作区都具备基于 Linux 虚拟机的全部功能,并配有托管在开发者邻近云数据中心的通用访问权限。
 
d75db0b7b53609374be50410bc82d76d.gif

可导入现有应用,也可创建新应用

IDX 项目允许开发者从 GitHub 处导入现有项目,随时从上次完成的位置继续开发。开发者也可以使用各类流行框架的预制模板创建新项目,包括 Angular、Flutter、Next.js、React、Svelte、Vue 以及 JavaScript 和 Dart,并即将推出对 Python 与 Go 语言的支持。此外,IDX 团队还在积极努力为更多项目类型和框架提供最佳支持。

跨平台实现应用预览

如今,构建成功应用意味着要对应用的设计和行为做跨平台优化,并以用户“所见即所得”的方式预览应用效果。为了降低这一切的实现门槛,IDX 项目提内置有 Web 预览功能,而且即将推出经过完善配置的 Android 模拟器与嵌入式 iOS 模拟器。所有这些,都可以在浏览器中直接使用。

eb347be36c43ed9e8531a07d058425c5.gif

结合 AI 技术

目前,IDX 项目的 AI 功能尚处于早期阶段,但已经拥有智能代码补全、辅助聊天机器人以及“添加注释”和“解释此代码”等结合上下文的代码操作。

借助 Firebase Hosting 实现 Web 发布

将应用投入生产的一大常见痛点就是部署流程。IDX 项目集成了 Firebase Hosting 以降低整个操作难度,只需单击几下,即可部署 Web 应用的可共享预览,或者使用快速、安全的全球托管平台将其部署至生产环境。由于 Firebase Hosting 能够支持基于 Cloud Functions 的动态后端,因此能够与 Next.js 等全栈框架良好配合。

IDX 团队表示,目前 IDX 项目才刚刚起步,距离最终的端到端开发流程改进还有很长的路要走。希望开发者可以注册成为首批 IDX 项目体验者,大家携手发现的问题将为项目的后续迭代方向、以及还需哪些新增功能以匹配应用团队的工作流程带来指引。

至于下一步计划,IDX 团队称,将不断努力添加新功能并解决开发者反馈的问题。“我们已经在研究新的协作功能,因为我们深知这项功能在如今混合办公时代下的重要意义。此外,更深入的框架集成和个性化/情境化 AI 选项也在筹备当中。期待听到大家提出的更多功能需求!”

IDX 背后的 AI 模型 Codey

在 Google I/O 2023 大会上,谷歌正式发布 Codey。这是一款新型 AI 驱动工具,能够编写并理解代码内容。这款新工具被外界视为谷歌对于 GitHub Copilot 的回应,属于同 Replit 结盟打造的成果。

Codey 基于谷歌的下一代大语言模型 PaLM 2,并采用谷歌自家产品代码及大量合法许可的源代码作为训练素材。更重要的是,Codey 仍在不断学习和发展,从谷歌服务生态系统的各个项目中持续汲取新的力量。

96b34eb2a659bbc71340f19aff2acc95.gif

Codey 支持 20 多种编程语言,包括 Go、谷歌标准 SQL、Java、JavaScript、Python 以及 TypeScript。开发者可以通过 Visual Studio Code、JetBrains IDE、Google Shell 编辑器以及 Google Cloud 托管工作站服务的扩展来访问 Codey。开发者能够直接在 IDE 的聊天框中与该模型交流(例如 Android Studio Bot),或者在文本文件中编写注释以指示其生成相关代码。它支持各种编码任务,通过以下方式帮助开发人员更快地工作并缩小技能差距:

  • 代码完成:Codey 根据提示中输入的代码上下文建议接下来的几行。
  • 代码生成:小程根据开发人员的自然语言提示生成代码。
  • 代码聊天:Codey 允许开发人员与机器人对话,以获得调试、文档、学习新概念和其他与代码相关问题的帮助。

Codey 在处理与编码相关的提示词方面接受了专门训练,谷歌还通过其他训练让该模型学会了处理关于 Google Cloud 的一般查询。

参考链接:

https://developers.googleblog.com/2023/08/introducing-project-idx-experiment-to-improve-full-stack-multiplatform-app-development.html

https://codeandhack.com/google-codey/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/868339.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络安全(黑客)自学路线/笔记

想自学网络安全(黑客技术)首先你得了解什么是网络安全!什么是黑客! 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全…

代码随想录算法训练营第55天|动态规划part12|309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费、总结

代码随想录算法训练营第55天|动态规划part12|309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费、总结 309.最佳买卖股票时机含冷冻期 309.最佳买卖股票时机含冷冻期 思路: 区别在第i天持有股票的当天买入的情况&#xff0c…

【Kubernetes】神乎其技的K8s到底是什么,为什么被越来越多人使用

🚀欢迎来到本文🚀 🍉个人简介:陈童学哦,目前学习C/C、算法、Python、Java等方向,一个正在慢慢前行的普通人。 🏀系列专栏:陈童学的日记 💡其他专栏:CSTL&…

户外骨传导耳机推荐,盘点最适合户外佩戴的五款耳机

现在天气越来越暖和了,很多人选择外出徒步、越野或者骑行,在这些活动中往往都会搭配一个骨传导耳机,来让运动过程变得更加有趣。在选购骨传导耳机时,人们通常会考虑音质、舒适性、价格等因素,为了让大家选到更适合自己…

Kafka API与SpringBoot调用

文章目录 首先需要命令行创建一个名为cities的主题,并且创建该主题的订阅者。 1、使用Kafka原生API1.1、创建spring工程1.2、创建发布者1.3、对生产者的优化1.4、批量发送消息1.5、创建消费者组1.6 消费者同步手动提交1.7、消费者异步手动提交1.8、消费者同异步手动…

yolov5目标检测多线程Qt界面

上一篇文章&#xff1a;yolov5目标检测多线程C部署 V1 基本功能实现 mainwindow.h #pragma once#include <iostream>#include <QMainWindow> #include <QFileDialog> #include <QThread>#include <opencv2/opencv.hpp>#include "yolov5.…

phpspreadsheet excel导入导出

单个sheet页Excel2003版最大行数是65536行。Excel2007开始的版本最大行数是1048576行。Excel2003的最大列数是256列&#xff0c;2007以上版本是16384列。 xlswriter xlswriter - PHP 高性能 Excel 扩展&#xff0c;功能类似phpspreadsheet。它能够处理非常大的文件&#xff0…

056B R包ENMeval教程-基于R包ENMeval对MaxEnt模型优化调参和结果评价制图(更新)

056B-1 资料下载 056B-2 R包ENMeval在MaxEnt模型优化调参中的经典案例解读 056B-3 R软件和R包ENMeval工具包安装 056B-4 R软件和R包ENMeval安装报错解决办法 056B-5 环境数据格式要求和处理流程 056B-6 分布数据格式要求和处理流程 056B-7 基于R包ENMeval对MaxEnt模型优化…

12.pod生命周期和存储卷

文章目录 pod生命周期pod启动阶段故障排除步骤&#xff1a; 存储卷emptyDir存储卷 hostPath存储卷nfs共享存储卷总结&#xff1a; pod生命周期 pod启动阶段 一般来说&#xff0c;pod 这个过程包含以下几个步骤&#xff1a; 调度到某台 node 上。kubernetes 根据一定的优先级算…

【C#】静默安装、SQL SERVER静默安装等

可以通过cmd命令行来执行&#xff0c;也可以通过代码来执行&#xff0c;一般都需要管理员权限运行 代码 /// <summary>/// 静默安装/// </summary>/// <param name"fileName">安装文件路径</param>/// <param name"arguments"…

Dubbo 2.7.0 CompletableFuture 异步

了解Java中Future演进历史的同学应该知道&#xff0c;Dubbo 2.6.x及之前版本中使用的Future是在java 5中引入的&#xff0c;所以存在以上一些功能设计上的问题&#xff0c;而在java 8中引入的CompletableFuture进一步丰富了Future接口&#xff0c;很好的解决了这些问题。 Dubb…

小内存嵌入式设备软件的差分升级设计(学习)

摘要 提出一种改进HDiffPatch算法并在复旦微单片机上实现小内存差分升级的方案&#xff0c;即使用单片机内的Flash空间替代算法占用的RAM空间&#xff0c;从而减少算法对单片机RAM空间的需求&#xff0c;以满足小内存微处理器的差分升级&#xff0c;同时对算法内存分配释放函数…

HashMap源码探究之底“库”看穿

前言&#xff1a; 本次的源码探究会以jdk1.7和jdk1.8对比进行探究二者在HashMap实现上有的差异性&#xff0c;除此之外&#xff0c;还会简单介绍HashMap的hash算法的设计细节、jdk1.8中HashMap添加功能的整个流程、什么情况下会树化等源码设计知识。 一、HashMap介绍 HashMap…

SpringBoot3数据库集成

标签&#xff1a;Jdbc.Druid.Mybatis.Plus&#xff1b; 一、简介 项目工程中&#xff0c;集成数据库实现对数据的增晒改查管理&#xff0c;是最基础的能力&#xff0c;而对于这个功能的实现&#xff0c;其组件选型也非常丰富&#xff1b; 通过如下几个组件来实现数据库的整合…

Spring Cloud 智慧工地源码(PC端+移动端)项目平台、监管平台、大数据平台

智慧工地源码 智慧工地云平台源码 智慧建筑源码 “智慧工地”是利用物联网、人工智能、云计算、大数据、移动互联网等新一代信息技术&#xff0c;彻底改变传统建筑施工现场参建各方现场管理的交互方式、工作方式和管理模式&#xff0c;实现对人、机、料、法、环的全方位实时监…

uniapp开发公众号,微信开发者工具进行本地调试

每次修改完内容都需要发行之后&#xff0c;再查看效果&#xff0c;很麻烦 &#xff01;&#xff01;&#xff01; 下述方法&#xff0c;可以一边在uniapp中修改内容&#xff0c;一边在微信开发者工具进行本地调试 修改hosts文件 在最后边添加如下内容 修改前端开发服务端口 …

Android 第一行代码学习 -- 聊天界面小练习

前言&#xff1a;最近在学习安卓&#xff0c;阅读入门书籍第一行代码&#xff0c;以后更新的知识可能大部分都会和安卓有关。 实现聊天界面 1.编写主界面 个人觉得界面编写刚开始学可能看着很乱&#xff0c;但是其中最重要的是层次&#xff0c;看懂了其中的层次&#xff0c;就…

论element-ui表格的合并行和列(巨细节)

论element-ui表格的合并行和列 0、前言 ​ 作为一个后端来写前端属实是痛苦、讲真的、刚开始我是真不想用饿了么的这个合并行和列、因为太语焉不详了、看着头疼、后来发现好像我没得选、只好硬着头皮上了。 1、element - ui 的合并行和列代码 效果图&#xff1a; 代码&…

SpringSecurity环境搭建

AOP思想&#xff1a;面向切面编程 导入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation&quo…

【算法题】螺旋矩阵II (求解n阶Z形矩阵)

一、问题的提出 n阶Z形矩阵的特点是按照之(Z)字形的方式排列元素。n阶Z形矩阵是指矩阵的大小为nn&#xff0c;其中n为正整数。 题目描述 一个 n 行 n 列的螺旋(Z形)矩阵如图1所示&#xff0c;观察并找出填数规律。 图1 7行7列和8行8列的螺旋(Z形)矩阵 现在给出矩阵大小 n&…