当前位置: 首页 > ai >正文

【HarmonyOS 5】鸿蒙CodeGenie AI辅助编程工具详解

【HarmonyOS 5】鸿蒙CodeGenie AI辅助编程工具详解

一、前言

1、CodeGenie是什么?
CodeGenie (代码精灵)作为鸿蒙DevEco IDE自带的AI辅助编码工具。

关于IDE版本和CodeGenie映射关系的问题:
建议使用 DevEco Studio 5.0.3.403 及以上版本来使用 CodeGenie。在 DevEco Studio 5.0.4 Release 版本中,CodeGenie 已经作为自带插件可用,说明在该版本时 CodeGenie 已能较好地满足开发需求。

若使用非最新版本的DevEco Studio,可通过插件下载中心获取并使用相关功能。调用效果和自带是一样的,只是多了手动安装插件的步骤。

2、CodeGenie有什么作用?
(1)智能知识问答:(详细步骤见章节三)
开发者在开发过程中遇到问题,可通过IDE自带的该工具,进行AI文化回答的形式,获取相关知识解答。
在这里插入图片描述

(2)ArkTS 代码生成:
帮助开发者生成 ArkTS 代码,提高编码效率,减少手动编写代码的工作量。

通过问答的形式,生成代码示例源码(详细步骤见章节三)。
在这里插入图片描述或者手动打开,代码生成功能,可以开发者编码时,自动提示。进入File > Settings >DevEco CodeGenie > Code Generation页面开启。在这里插入图片描述
根据快捷键操作,生成单行或者多行代码。开发者通过自动生成代码顶部的菜单栏进行确认或者取消操作。
在这里插入图片描述

操作macOSWindows
触发多行代码生成Enter、Option+CEnter、Alt+C
触发单行代码生成Option+XAlt+X
采纳生成的代码TabTab
忽略生成的代码EscEsc
查看上一个代码生成结果Option +[Alt + [
查看下一个代码生成结果Option + ]Alt + ]
重新生成代码内容(最多支持重新生成5次)Option + RAlt + R
展示CodeGenie面板Option + UAlt + U

(3)万能卡片生成:
具备生成万能卡片的能力,方便开发者在应用开发中实现相关功能。
这个功能其实是将上面两个功能进行了结合,通过回答的形式,一步一步将卡片需求,AI编码助手进行开发完善。
在这里插入图片描述

二、在IDE中使用CodeGenie的菜单View(智能问答/代码生成)详细步骤

1、首先下载对应IDE版本(建议使用目前最新的IDE版本)
2、打开DevEco IDE后,手动点击右边的CodeGenie菜单(或者使用快捷键 Alt + U,mac是Option + U)
3、菜单显示效果如下图所示,右边为中文翻译效果。我们在第一次使用AI辅助编码工具时,CodeGenie需要进行协议的确认。我们点击勾选已阅读后。再点击登录。这里的登录和IDE右上角的登录是一样的效果,都是跳转到浏览器使用网页登录华为开发者账号。
在这里插入图片描述
4、在我们登录之后,就会进入CodeGenie的主菜单界面。双击上方的标题栏,可以放大或者缩小菜单View布局。主界面主要由编码助手的介绍和知识问答与生成代码两个入门组成。

当我们点击两个入门其中一个后,最下方的输入栏位置就会显示对应的输入内容。此时我们在输入栏,输入对应的提示词后,AI就会生成对应的结果。是回答还是代码。切记要通过入门选择。

5、当我们的回答结束后,想切入到代码时,应该怎么办?只需要点击右下角的new chat(开启新会话即可)。代码切回答,同理。

在这里插入图片描述

三、在IDE中使用CodeGenie的编译报错智能分析与代码智能解读

1、编译报错智能分析
在这里插入图片描述
编译报错后,点击蓝色按钮提示,就会自动唤起AI编码助手的菜单View。对于编译错误信息进行解释。

2、代码智能解读
我使用的是DevEco Studio 5.0.5 Release。目前并没有官方文档提示:选中.ets文件或者.cpp文件中需要被解释的代码行或代码片段,右键选择CodeGeine > Explain Code,开始解读当前代码内容。

已经提工单了,后续有反馈结果在这里更新。
在这里插入图片描述

http://www.xdnf.cn/news/13162.html

相关文章:

  • 1、ZYNQ 开篇简介
  • 向量数据库Milvus在windows环境下的安装
  • SQL进阶之旅 Day 24:复杂业务场景SQL解决方案
  • Unity实现不倒翁
  • Dispatch PDI(DPDI)kettle调度管理平台稳定版本,正式登场!
  • Nuxt + Pinia + Element Plus 后台管理系统搭建教程(含源码)
  • CMake测试find_package()命令的相关原理
  • 10- AI大模型-LangChainV0.3应用(一) - 简介,模型调用,prompt模板,输出解析器
  • 6.10
  • Vue.js 中的 v-bind 指令详解
  • Vue 模板语法之指令语法详解
  • 深入解析 GitHub Token 与 NPM Token:自动化发布的完整指南
  • 医学图像分割最新进展
  • 苹果签名应用掉签频繁原因排查,以及如何避免
  • WebRTC 中 ICE 流程优化:SRS 轻量级部署与 NAT 类型检测实战
  • 项目管理三要素有哪些?如何实现项目管理的三要素平衡
  • 题单:归并排序
  • DSP——时钟树讲解
  • 使用联邦学习进行CIFAR-10分类任务
  • 消防车辆管理系统:为消防公车筑牢安全与效率防线
  • 磐维数据库的权限使用
  • spark数据处理练习题番外篇【下】
  • 统计学核心概念与现实应用精解(偏机器学习)
  • ios 26官宣:car play升级提升车载体验
  • 丝杆升降机的物联网与大数据应用的具体例子
  • React 19 新特性
  • VSCode中PHP使用Xdebug
  • IP 地址查询在证券交易中的应用方式
  • spark数据处理练习题番外篇【上】
  • ffmpeg windows 32位编译