曾经被问到一个问题:用ChatGPT能不能写出一个完整的App。当时的回答是“应该可以”,但是我对这个问题越来越感兴趣,于是后来决定要做一个尝试。梳理了一下手头掌握的技术和自己的需求,决定做一个图像消除类的应用,最近发布的 OPPO Find X7 也让大家了解了这个功能,可以消除图片中不需要的物体、线条、水印、人物等。
经过 2 周与 ChatGPT 的对话,这个 App 终于做完了,并用 ChatGPT 给它起了个名字,叫做Smoothrase,Smoothly Erase 的合体单词,意为顺滑的擦除。主要功能,可以见下面的视频演示:
已经实现的主要功能:手指涂抹擦除,圈选擦除,框选擦除。
目前效果还是很不错的,可以说所有的代码都是靠 ChatGPT 完成的,接下来可以简单看一些 ChatGPT 写代码的问题与答案。
App 开发写代码的第一步,是需要一个首页的视图,从这里我就开始让 ChatGPT 开始写了:
![](https://cdnfile.sspai.com/2024/02/17/6b824cf0c8013c6f94dda2796a5a0b2d.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
![](https://cdnfile.sspai.com/2024/02/17/198d6ebd8c830896cb9c8a29d998b529.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
接下来,是想让 App 在首页显示所有图片,也可以一步步让 ChatGPT 来实现,首页得让它实现一个用来显示照片的列表
![](https://cdnfile.sspai.com/2024/02/17/3ef447c77ae448f0ac294ad0f68b719d.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
![](https://cdnfile.sspai.com/2024/02/17/f13714a5d69e7abbbef6a4f0db646000.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
![](https://cdnfile.sspai.com/2024/02/17/f2533dd95967658fdff88d0db6ae3f1b.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
创建于显示一个列表,ChatGPT 也可以完成的很好,有了列表,就可以继续显示手机里的所有图片了
![](https://cdnfile.sspai.com/2024/02/17/2714f5d70bb42c6b566f2e40841d0d2f.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
![](https://cdnfile.sspai.com/2024/02/17/554d4357bdd542cc4000b1906bfaca95.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
写的也没有什么问题,稍作修改就可以使用。这样,一个 App 首页显示左右照片的功能就可以完成,与纯手工写代码相比,非常高效。
除了上面演示的直接写代码,我还尝试用 ChatGPT 转换以前的 Objective-C 语言的文件到 Swift 语言,这样,以前写过的不同语言的功能也可以复用了。
![](https://cdnfile.sspai.com/2024/02/17/699ab1cc25541275b861c0d13664d9bf.jpg?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
总之,经过验证,让 ChatGPT 根据你的思路去写一个完整的 App,确实是可行的。
![](https://cdnfile.sspai.com/2024/02/17/12ec8b5f98ff207926ce112b31b00d61.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
![](https://cdnfile.sspai.com/2024/02/17/394dc4e1bcf0eba409cc37c6c56b54b1.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
App 的擦除效果个人觉得非常不错,欢迎体验。