使用AI提升iOS开发效率

发一篇存货,本文编写时间为2023年07月07日

本次共调研了CursorIntegrated AI for XcodeCopilotForXcode三个比较热门的AI工具,总结下来AI支持如下三类能力:

  • Code Suggestion
  • Prompt to Code
  • Chat

业内对所支持的功能还没有统一的命名,以上命名来自CopilotForXcode

Code Suggestion

侧重于智能代码推荐

  • 实时/非实时根据当前代码逻辑,智能猜测、推荐后续将要编写的代码逻辑
  • 根据注释生成代码,比如编写一个验证邮箱的方法、为一个方法编写一个单元测试代码

实时代码推荐

以下为CopilotForXcode的实时代码推荐功能,右下角弹窗为根据上下文推荐的代码

让Cursor实现一个功能模块

Swift实现一个埋点框架,支持上报埋点事件和额外参数。同时,发送网络请求模块可以替换。积累10条埋点记录后发送网络请求上报一次。还要支持持久化存储,当程序意外中断时可以存储在磁盘上,下次启动时还要从磁盘中读取数据

Prompt to Code

侧重于基于成熟的设计原则、编码规范对已有代码的优化,比如

  • 分析已有代码潜在的bug,指出待改进的地方
  • 修改代码提高可读性,比如减少判断嵌套、检查变量命名、单词拼写等
  • 自动添加注释
  • 将大方法拆分为功能更加单一的多个子方法
  • 使用自然语言翻译代码逻辑

Cursor的代码解释功能演示

Cursor代码优化演示

Chat

无需赘述,大家都用过的ChatGPT

对比与总结

AI工具 特点 不足 配置难度 费用
Cursor - Prompt to Code - Chat(支持免费的GPT 4) - 无法集成到Xcode中 简单 - 免费版、个人付费版和企业付费版 - 日常使用,免费版够了
Integrated AI for Xcode - Prompt to Code - 集成到Xcode中 - 有处理字符数上限 - 速度慢 简单 免费
CopilotForXcode - Code Suggestion - Prompt to Code - Chat - 集成到Xcode中 - 配置复杂 - Code Suggestion实时推荐会导致卡顿 复杂 工具免费,Open AI key申请使用需收费

体验中的不足之处

  • 仅能对选中代码或当前文件上下文代码逻辑进行智能推荐,无法理解整个项目代码
    • 因此经常出现推荐的代码编译不过情况
  • 无法从本质上提高代码开发效率,或者说无法将开发效率提高一个数量级
    • 比如目前AI很难做到根据简单地描述,甚至通过一张UI设计稿,自动编写一个业务相关的代码出来(比如一个任务奖励弹窗)
  • 配置麻烦,因为Xcode官方并未提供AI工具,以上集成到Xcode都是通过extension方式,所以对于实时的功能来说使用起来卡顿,有的速度很慢(如gpt4和Integrated AI for Xcode),处理内容长度受限制

总结

  • 日常使用,推荐Cursor,配置简单,速度快,功能全
  • 目前阶段还无法使用AI工具从本质上大幅提高代码开发效率,仅是辅助工具
  • 对个人知识的盲点、总结概括调研类知识,AI可以给出相对准确的解答,反之,越详细的问题回答错误越多
  • 不同工具核心功能大都来自Open AI的模型,比如Cursor、Integrated AI for Xcode

Cursor

Cursor体验版本是0.2.33

一个类似VS Code,集成了ChatGPT的IDE工具

  • 像普通ChatGPT一样交流,也可以生成代码
  • 支持对已经生成的代码进行修改
  • 支持Swift、OC,以及更多语言
  • 集成了ChatGPT 3.5/4
  • 工具本身下载使用是免费的

不足

  • 免费版,ChatGPT 4每月限制50次,且慢;ChatGPT 3.5使用次数不受限
  • 个人收费版,ChatGPT4会变快,20刀每月
  • 企业版,费用未知

使用体验:

  • 生成的代码比较注意代码规范和设计原则
  • 对于解决一些因知识盲区产生的问题很有帮助
  • 可以轻松实现一个独立的功能模块

Integrated AI for Xcode

一个集成到Xcode中的,致力于用AI提升代码质量和开发效率的工具。测试版本为1.2

  • 集成到Xcode中(Xcode14.3.1版本测试可用,通过Xcode Source Editor Extension)
  • 仍使用Open AI的服务,但软件下载完就可直接使用,无需注册
  • 可以自动给代码添加注释
  • 可以给代码提出改进建议,并可以自动修改
  • 可以根据之前的代码,推测整个代码逻辑并自动编写
  • 可以对代码风格、命名规范进行修改,使之Swiftier
  • 免费

不足

  • 仅提供固定几个功能,无法根据问答生成或修改代码
  • 仅支持Swift代码

Codeium

测试版本为1.2.40

值得一提的是,该项目拥有自己的人工智能模型,并不是对OpenAI进行的包装

主要的功能是--AI Autocomplete,通过AI结合当前代码上下文,自动提示可能要编写的代码

  • 支持集成到Xcode中
  • 支持Swift、OC等70多种语言
  • 仅需在官方注册账号即可免费使用,并且官方承诺永久免费
  • 还提供Codeium Chat类似ChatGPT交互的功能,收费

CopilotForXcode

Copilot发音为/ˈkoʊˌpɑɪ·lət/

CopilotForXcode也是通过Xcode Source Editor Extension集成到Xcode的工具,该工具集成了CopilotCodeium和ChatGPT的能力

本次测试版本:0.19.2

不足

  • 由于集成了其他功能,安装配有点繁琐,需要注册Copilot、Codeium、Open AI等账号
  • 实时推荐的代码主要能节省编写重复、胶水代码的时间,推荐成功率并不高,且使用卡顿

参考

相关推荐
李昊哲小课1 分钟前
咖啡工坊 · FastAPI 22 章教程合集
服务器·人工智能·python·fastapi
学废了wuwu2 分钟前
从入门到实战:深入浅出模型压缩三大核心——剪枝、彩票假设与知识蒸馏
人工智能·算法·剪枝
Microvision维视智造11 分钟前
从“看见“到“看懂“——工业视觉的大模型时刻到了吗?
人工智能·计算机视觉·视觉检测·机器视觉
janeboe18 分钟前
抖音黑科技兵马俑总站源头简博科技 | 抖音锚点不合规挂载新规今日生效,短视频引流直播间迈入三端全链路监管时代
大数据·人工智能·科技
lialaka20 分钟前
「未来星途(Future_Odyssey)」——全语音_3D_AI_具身交互智能数字教官与全双工星际科普沉浸舱[1]
人工智能·3d·交互
hongmai66688821 分钟前
ESP32-C61-WROOM-1-N8R2:Wi-Fi 6与RISC-V融合的中坚力量
人工智能·单片机·嵌入式硬件·物联网·智能家居·risc-v
正在走向自律25 分钟前
用豆包Seed Evolving打造全功能【AI智能记账】小程序,开源可落地
人工智能·小程序·开源·智能记账
小保CPP33 分钟前
OpenCV C++提取webp动图里的图片
c++·人工智能·opencv·计算机视觉
B8017913Y33 分钟前
手动整理录音太慢错漏多?2026专业AI录音可高效整理内容
人工智能
梦想的颜色36 分钟前
AI Agent 可观测性:破解多步推理黑盒|从概念、架构、指标到生产落地图鉴
人工智能·ai agent 可观测性·llm 追踪 trace·llmops 硬核实战·agent 生产运维