使用Chat gpt提高Android开发效率

news/2025/2/22 22:45:36/

logo

简介

在过去几周里,我进行了一项令人大开眼界的实验,将 Chat-GPT(我使用的是 Bing Chat,它在后台使用了 GPT-4,并且可以免费使用)融入到我的日常 Android 开发工作流程中,以探索它是否能够提高我的工作效率。这实在是一个令人兴奋的实验!

几天以后,我对它加速我的开发工作流程的能力感到震撼!我能够以更快的速度完成更多任务!通过一段时间的尝试,我对其中的主要用例有了深入的了解,Chat-GPT 能够在您的开发工作中节省大量时间。因此,我将在本文中与大家分享这些内容。

请注意:我将在整篇文章中使用 Chat-GPT 来指代 Bing Chat,因为它们本质上是同一个工具。

适用于新手 Android 开发者的提示
首先,如果您是 Android 开发的新手,那么本文可能不太适合您。这篇文章更适合中级和高级的 Android 开发人员。

其次,不要仅仅依赖 Chat-GPT 这样的大型语言模型来盲目复制粘贴代码,而不去理解代码的作用。了解 Android 开发是一项比仅仅复制粘贴代码更有价值的技能。很多人可能没有意识到这一点,但是当您对 Android 开发的基础知识有了扎实的掌握后,您就能以更高效的方式利用语言模型,从而大大提升您的工作效率。

ChatGPT在哪些方面可提高Android开发者工作效率

生成文档

让我们从一个非常简单的用例开始。编写文档是您作为开发人员要做的最重要的事情之一。它不仅可以帮助其他人了解您的代码的作用,还可以帮助您提醒自己,当您在很长一段时间后回来重新访问时,您编写的代码正在执行什么操作。

传统上,它一直是许多程序员的祸根,因为它占用了宝贵的时间,无法实际编码您要构建的东西。在这里,Chat-GPT 可以节省大量时间!只需让它为您生成文档即可。但是,如果它没有传达您的想法,请确保校对和修改它生成的文档。这是一个超级有用的用例,它为我节省了大量时间!这是一个例子

// The function which needs to be documentedsuspend fun getPlacesSuggestionsForQuery(@Query("q") query: String,@Query("session_token") sessionToken: String,@Query("limit") @IntRange(1, 10) limit: Int = 10): Response<SuggestionsResponse>

提示:为以下方法生成 KDOC kotlin 文档 — “…”

为上面的代码片段生成的文档

生成映射函数

这是一个简单但非常有用的用例。如果您通过应用一些干净的架构原则来编写您的应用程序,您可能会编写很多映射器函数。在大多数情况下,这些是您必须编写的样板代码,以便将一个架构层中使用的对象转换为不同架构层中使用的对象。

同样,Chat-GPT 可以使编写所有这些映射器函数的工作变得轻而易举!只需添加两个类的定义,并要求它编写一个映射器函数即可。就这么简单!只需确保验证它生成的代码是正确的。这是一个例子。

// Class 1
data class WeatherDetails(val nameOfLocation: String,val temperature: Temperature,val wind: Wind,val weatherCondition: WeatherCondition,val humidity: String,val pressure: String
) {data class Temperature(val currentTemp: String,val minTemperature: String,val maxTemperature: String,)data class Wind(val speed: String, val direction: String)data class WeatherCondition(val oneWordDescription: String,@DrawableRes val currentWeatherConditionIcon: Int,)
}// Class 2
data class BriefWeatherDetails(val nameOfLocation: String,val currentTemperature: String,val shortDescription: String,@DrawableRes val shortDescriptionIcon: Int,
)

提示:为以下两个类编写一个映射器函数——“…”和“…”

两个类的 Generated Mapper 函数
但是,我希望映射器函数成为该类的扩展WeatherDetails。因此,我要求将其作为扩展功能。

提示:将其作为 WeatherDetails 类的扩展函数

对上述提示的回应要求将其作为扩展功能

用样本数据填充数据类

作为一名开发人员,您肯定遇到过这样一种情况:您需要创建一个带有样本数据的模型数据类的实例,以一时兴起来测试一些东西。好吧,这是 Chat-GPT 的完美用例。假设我想填充此类的所有属性以快速测试可组合函数。

data class BriefWeatherDetails(val nameOfLocation: String,val currentTemperature: String,val shortDescription: String,@DrawableRes val shortDescriptionIcon: Int
)@Preview
@Composable
private fun Preview(){
.
.CompactWeatherCard(modifier = Modifier.padding(horizontal = 16.dp),briefWeatherDetails:BriefWeatherDetails = //need a fake instance here,onClick = { /*TODO*/ })
.
.}

我可以简单地要求 Chat-GPT 生成一个类的实例,其中填充了样本数据。

提示:使用样本数据创建此类的一个实例——“……”
上述类的生成实例,填充了示例数据

除了需要更改图标的资源 ID 之外,我还得到了一个充满示例数据的实例,我可以立即使用它!如果我提到了资源 ID,它可能也会正确添加它!

生成 composable previews

如果您使用 Jetpack Compose,那么这就是为您准备的!设置可组合预览可能是一项相对耗时的任务。您必须创建一个新的私有函数,用 注释它@Preview,用您的主题可组合项包围可组合项,并用示例数据填充可组合项的参数。光是查看可组合项的预览就需要做大量工作!

不用担心!你可能已经猜到了!Chat-GPT 支持您!只需让它为您完成所有工作!这是一个例子。

// Here's an overload of the previous composable that doesn't depend on any 
// domain object. Let's ask Chat-GPT to generate a preview for us.
fun CompactWeatherCard(nameOfLocation: String,shortDescription: String,@DrawableRes shortDescriptionIcon: Int,weatherInDegrees: String,onClick: () -> Unit,modifier: Modifier = Modifier
) {...}

提示:为以下可组合项创建一个预览可组合项 — “…”

生成的预览可组合项
它甚至自己用示例数据填充了可组合项的参数.
现在,我想用CompactWeatherCard一个主题可组合项和一个表面可组合项包围可组合项。所以,我要求它也这样做。

提示:使用名为 WeatherAppThemeComposable 的可组合项和 Surface 可组合项包裹预览中的可组合项

在theme和surface可组合项内生成的预览可组合项

我注意到主题可组合项具有后缀“Composable”,因为我在之前的提示中犯了一个错误。让我们纠正它。

提示:将 WeatherAppThemeComposable 重命名为 WeatherAppTheme

生成的预览可组合项“WeatherAppThemeComposable”重命名为“WeatherAppTheme”

结论

这篇博文到此结束 ,这些只是我发现 Chat-GPT 非常有用的几个用例。我相信我会发现更多,我使用它的次数越多。我会确保在找到它们时分享它们。


http://www.ppmy.cn/news/205691.html

相关文章

粉丝破千了,喊几个机器人跳个舞庆祝下

先看效果&#xff1a; 机器人跳舞 再看代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>机器人跳舞</title><style>body, html {position: absolute;margin: 0;padding:…

MIT6.042学习笔记(一)——强归纳法,数论(1)

如果学生在学校里学习的结果是使自己什么也不会创造&#xff0c;那他的一生永远是模仿和抄袭。——列夫托尔斯泰 文章目录 引言强归纳法例题&#xff1a;拆积木游戏证明 数论&#xff08;第一节&#xff09;整除运算例题&#xff1a;取水证明 公约数例题证明 Eucild算法 引言 …

华为不提示连接计算机,求告知为什么现在华为用usb连电脑手机不显示

清野璇水 回答数&#xff1a;23107 | 被采纳数&#xff1a;3 2016-12-30 09:13:40 你好&#xff1a; 一&#xff0c;手机数据线连接电脑&#xff0c;手机上提示“主机无反应”&#xff0c;这是因为使用的是电脑连接出来的USB接口接线或者机箱前置的USB接口&#xff0c;试一试…

鸿蒙手机华为meta 30 第一次链接电脑下载驱动

第一步下载 华为手机助手HiSuite官方下载 | 华为官网 usb连接电脑后要手机要开启 USB调试模式&#xff0c;具体开启方式点击手机设置-》关于手机-》快速点击五次HarmonyOs版本 然后就进入了开发者模式 &#xff0c;点击返回-》系统和更新-》开发人员选项-》开启并开启usb调试 …

华为p20如何连接计算机,华为P20 USB调试和开发人员选项的打开方法(EMUI8.1)

华为P20打开USB调试和开发人员选项的方法要来分享一下了; 华为P20 USB调试模式和华为P20开发者选项这两个功能是我们平时经常要用到的&#xff0c;只要我们连接上电脑想操作一些东西时&#xff0c;打开这个功能必不可少&#xff0c;但是对于很多华为P20手机用户来说&#xff0c…

【已解决】华为手机USB调试和监控ADB安装应用的选项变成了灰色如何解决 | 华为荣耀9手机USB调试和监控ADB安装应用选项变成了灰色怎么办

华为手机USB调试和监控ADB安装应用的选项变成了灰色无法点击是由于开启了生产模式导致的&#xff0c;如果想恢复正常&#xff0c;则需要把生产模式调回Google模式&#xff08;如果调回Google模式之后还没有恢复&#xff0c;则有可能是驱动没有安装好&#xff0c;这时可以考虑把…

Android Studio连接华为手机

以下操作在华为P8、荣耀9和荣耀9i中试了&#xff0c;均可以。 1&#xff1a;准备 首先确认电脑是否安装了华为助手&#xff0c;如果安装了&#xff0c;必须卸载清理干净后再继续操作。 2&#xff1a;设置 打开SDK Manager&#xff1a; 在SDK Tools中选中USB驱动&#xff1a; …

华为手机线刷工具_手机刷机、救砖教程

对于一个爱搞机的人来说,不会XP框架,不会刷机,都不能算是一个真正的玩机热爱者。虽然玩机过程中一不小心手机有可能变成尸体,但是这任然阻止不了我们对玩机的热爱与追求。 20今天的文章主要为大家介绍几种日常玩机中常见的手机问题,以及解决方法。 一,手机ROOT后开机假死…