V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
qdwang
V2EX  ›  iDev

苹果 app 开发真是痛苦啊

  •  3
     
  •   qdwang · 21 天前 · 11729 次点击

    AI 都救不了的程度,文档实在太烂,导致不管是 gemini 还是 gpt 都经常给出错误的解答

    绝望😞

    85 条回复    2025-09-17 11:19:48 +08:00
    Cruzz
        1
    Cruzz  
       21 天前
    我想自己打包一个 singbox ,注册一个 helper 服务,折腾了一个礼拜。可能是我太菜了。
    majianglin
        2
    majianglin  
       21 天前   ❤️ 4
    正相反,201x 年开发 iOS App 的时候,苹果的文档是最好的,每个技术方向都有入门的 demo

    反而是国内的支付文档写的跟 s 一样
    andforce
        3
    andforce  
       21 天前   ❤️ 7
    xcode 是世界上最差的 IDE
    qdwang
        4
    qdwang  
    OP
       21 天前
    @majianglin 苹果搞入门是挺全的,稍微深入一点,文档全无。这就是为什么 google 搜不到,ai 也救不了,只能瞎编乱造。
    qdwang
        5
    qdwang  
    OP
       21 天前
    @andforce 赞同
    funcman
        6
    funcman  
       21 天前
    @majianglin #2 以前做 iOS 开发时,还是挺有精英光环的,哈哈
    MacsedProtoss
        7
    MacsedProtoss  
       21 天前 via iPhone   ❤️ 1
    ai 救不了是因为 ai 没多少 iOS 语料 而且 iOS 不少东西还需要 Xcode 上的 gui 操作一下 或者去 developer 网站上注册啥的

    至于文档本身得看你和谁比,你要说 Android 的或许还能讨论一下,其他家的文档…还是 iOS 的更好
    so898
        8
    so898  
       21 天前
    当高级开发者还在读文档的时候,资深开发者都被迫去读苹果的源码(和反编译出来的源码+文件头)来理解问题了
    现在在苹果开发眼中,AI 急需能够阅读汇编(至少 ARM ),不然很多问题只能让他胡编浪费 Token
    majianglin
        9
    majianglin  
       21 天前
    @funcman 有个 m 光环,年龄大了一样失业
    renchong
        10
    renchong  
       21 天前
    xcode 更是重量级
    SoulFlame
        11
    SoulFlame  
       21 天前   ❤️ 1
    我服务端也时常会接入一些苹果的 API ,我吐槽一点很恶心的,苹果的文档,想看请求和响应参数体,要一级级无限点下去,搁这套娃呢,煞笔
    willwon1
        12
    willwon1  
       21 天前
    @so898 太真实了,只能去翻源码
    EgbertW
        13
    EgbertW  
       21 天前   ❤️ 2
    @majianglin #2 感觉近些年还是 Android 的文档更好一点,仅限英文版。各种 API 讲的很清楚,demo 该有的也都有。实在搞不懂还能直接翻源码,不过这就是开源的好处了。
    AlwaysBee
        14
    AlwaysBee  
       21 天前
    话说是什么功能困扰了你?
    chiaf
        15
    chiaf  
       21 天前 via iPhone
    😆

    本来想 iOS 开发门槛高的 AI 都解决不了

    可惜没有多少原生 iOS 开发的岗位了😅
    Gilfoyle26
        16
    Gilfoyle26  
       21 天前
    swift C# 都是好东西,结果砸在了这些企业自己的手里
    AoEiuV020JP
        17
    AoEiuV020JP  
       21 天前
    @Richared #1 这方面安卓来做的话主要难点是在保活和耗电,
    要么莫名其妙各种被杀死导致状态和数据异常,要么莫名奇妙的浪费电,
    这些实际问题也是 AI 搞不定的,
    Xheldon
        18
    Xheldon  
       21 天前   ❤️ 1
    文档烂是指看不懂还是不好找,如果是翻译的问题可以试试我的这个插件 https://appledocs.dev/zh-CN ,免费版够用,付费的话中文使用人民币结算,其他使用美刀
    chiaf
        19
    chiaf  
       21 天前 via iPhone
    你用 OC 可能好点

    swift 6.0 ➕ swiftui ➕ modern concurrency ➕ swift Marco ,这一套 AI 就蒙了。🤣
    ashong
        20
    ashong  
       21 天前
    苹果的文档非常清晰明了啊
    SayHelloHi
        21
    SayHelloHi  
       21 天前
    macOS 开发 也很痛苦

    有时候只搜索到了一个 API

    如何使用?苹果文档没有写 要哭了 😂
    kera0a
        22
    kera0a  
       21 天前 via iPhone   ❤️ 1
    如果你是资深 iOS 开发者才能用好 AI ,不是 iOS 开发 AI 很容易跑偏。

    你描述的功能可能 AI 并非不能实现,只是你提供的上下文不够多

    比如,你说实现一个功能,后台收集用户的位置轨迹。
    AI 会给你整一个后台收集位置的代码,应用退出后台后启动一个后台任务,看起来像模像样但测试发现基本收集不了。
    受限于 iOS 系统限制,后台位置收集需用专门 API 才能实现,你只有非常具体的和 AI 描述使用什么方案才能做对,也就是你本身要很懂 iOS 开发。

    这是我高强度 vibe 了一段时间的感受,很多场景都需要我去描述使用什么什么技术,否则 AI 大概率做不出来。
    spike0100
        23
    spike0100  
       21 天前
    claude code 挺好用的。gemini cli 生成的代码一般都不能直接使用,得手动纠正好多次,claude code 就一次生成就能跑通。
    layxy
        24
    layxy  
       21 天前
    再烂有微信的烂,烂就算了连个官方 sdk 都没有
    cs4forever
        25
    cs4forever  
       21 天前
    @spike0100 claude code 和 chatgpt 比呢 感谢
    spike0100
        26
    spike0100  
       21 天前
    @cs4forever 这个不是一回事。chatgpt 不能直接走 agent 模式生成代码。
    cs4forever
        28
    cs4forever  
       21 天前
    @spike0100 感谢
    chiaf
        29
    chiaf  
       21 天前 via iPhone
    @cs4forever Claude code 和 codex 比较,听说 codex 可以。cc 不清楚。只用它写过前段
    cs4forever
        30
    cs4forever  
       21 天前
    @chiaf 好的 感谢
    okakuyang
        31
    okakuyang  
       21 天前
    偏见 偏见!
    abbq
        32
    abbq  
       21 天前   ❤️ 1
    @andforce #3 会比其他 ide ,称 xcode 是翔一点不为过
    zpvip
        33
    zpvip  
       21 天前
    @Xheldon 说实话, 你这种免费版是我最最最最最最最最最最最最讨厌的类型, 花了无数时间找不到免费版和收费版有什么区别

    我不购买可以使用吗?
    完全可以!您可以免费使用本产品,但为了使用体验,我们建议您购买授权。

    你自己看看, 这是人话吗? 什么是"使用体验", 加了广告? 用不到最新翻译版本? 还是像 Total Commander 让用户选个 1, 2, 3?
    bbbblue
        34
    bbbblue  
       21 天前
    ai 对 swift/swiftui 的学习可能还是太少了
    但是 swiftui 本身也很奇怪。。。应该使用非常广泛啊 但是课程 教程都很少。。有的也是很早之前的 udemy 上那几套全是 demo 。。
    react native 还有那种完整开发一个 xxx clone 的。。。不知道为啥
    v1
        35
    v1  
       21 天前
    @SoulFlame @so898 即使如此,我也觉得 apple 的文档比 ali 、tx 的好一百倍……
    qxmqh
        36
    qxmqh  
       20 天前
    哈哈 很多文档尤其是 2018 年之前的其实挺全的,各种 demo ,然后 2018 年之后就没有人更新维护原生的开发项目了,导致不管是 OC 还是 Swift 的入门也好,demo 小功能也好,几乎就没有了。近十年 原生 app 就停滞了。留下的都是很早之前的老人,新人没有人入坑了。 -----来自 从 12 年开始 iOS 开发的人士。
    huifer
        37
    huifer  
       20 天前
    问题来了 我都用 AI 产出了 20+ APP 了 这是怎么回事呢。
    luckyzd
        38
    luckyzd  
       20 天前
    @huifer 20 个小工具吧,能看看复杂程度么
    phcbest
        39
    phcbest  
       20 天前
    @luckyzd 查了一下好像是这个,复杂度不算太高 https://apps.apple.com/us/developer/%E6%B6%9B-%E7%8E%8B/id1825986761
    Huelse
        40
    Huelse  
       20 天前
    用跨平台框架开发会不会好点?
    maemolee
        41
    maemolee  
       20 天前
    @MacsedProtoss 就很希望 apple intelligence 出来之后,在这块给人一点惊喜了😂总不能都不加入 apple 技术栈的训练语料吧
    Xheldon
        42
    Xheldon  
       20 天前
    @zpvip 确实,我添加个功能对比说明
    huifer
        43
    huifer  
       20 天前
    @luckyzd 现在大家都认为能做出 10 几个 APP 的都是小工具了。 完全没有想到他可以做更多事情。

    足够复杂 5W+代码 不含提示词,不含注释 纯逻辑 + UI
    Bananana
        44
    Bananana  
       20 天前
    我是个 iOS 的开发。我感觉让 AI 写工具类应用还挺棒的。。我前段时间让 gemini cli ,写了个 macOS 的 SwiftUI 的公司内部应用。集成了一个 adb 可执行文件,自定义文件类型等这些功能,类似用 GUI ,封装命令行的调用。讲实话,没有 AI ,我完全不知道在 macOS 上怎么做这些功能。
    tangzhiyong
        45
    tangzhiyong  
       20 天前
    推荐用 flutter ,可以直接在 window 开发,开发好 windows 版本,然后用 xcode 打包一下就可以发布了. 不用打开模拟器,效率翻倍。
    lol173
        46
    lol173  
       20 天前
    我用 reactnative 开发 iOS
    94
        47
    94  
       20 天前
    我听说过一个传闻,就是苹果的开发者文档是按照 TB 来算的?
    xing7673
        48
    xing7673  
       20 天前
    @andforce 哔哩有个 blog 专门写了如何在 vscode 上构建 iOS 编译链
    xing7673
        49
    xing7673  
       20 天前
    @MacsedProtoss 和微软比更是一坨,别洗了,apple developer archive 写得都比现在的文档要好
    Xheldon
        50
    Xheldon  
       20 天前
    Xheldon
        51
    Xheldon  
       20 天前
    @dfkjgklfdjg fake news ,据可靠消息,苹果的文档, 对于数据部分「只有」 24w 个 json ,https://appledocs.dev/zh-CN/progress
    edisonwong
        52
    edisonwong  
       20 天前
    swift 那迭代,19 年写过一阵,到现在,我连代码都看不懂了,各种语法糖
    新手 demo 文档挺好,官网的教程不错
    eratpfus7
        53
    eratpfus7  
       20 天前
    @andforce 能比的过微信开发者工具吗?
    freeloop1
        54
    freeloop1  
       20 天前
    别的不说,swift 那个循环语法是真有恶心,我尝试着好了好几次都给恶心坏了。ForEach(items) { item in
    Text(item)
    }
    这是什么 J8 啊?浑身难受。
    Gilfoyle26
        55
    Gilfoyle26  
       20 天前
    @eratpfus7 #53 如果比差,那还是微信第一 ,微信独步全球,这点哪家公司都比不了。
    icyalala
        56
    icyalala  
       20 天前
    你要先分清 UIKit 和 SwiftUI
    明确让 AI 去用 Swift 写 UIKit App 一般表现得很好
    iOCZS
        57
    iOCZS  
       20 天前
    @freeloop1 尾随闭包怎么了?
    iflint
        58
    iflint  
       20 天前
    AI 这块还得是前端。另外 xcode 是在是太拉了
    zpvip
        59
    zpvip  
       20 天前
    @Xheldon 👍执行力很棒!
    alexcding
        60
    alexcding  
       20 天前
    你没搞过安卓吧
    LeoDaxia
        61
    LeoDaxia  
       20 天前 via iPhone
    @kera0a 深有同感,现在不开 plan mode 都不敢用了,plan mode 都得对账半天,根本不敢让它自己写。而且最近 cc 降智明显……
    rick13
        62
    rick13  
       19 天前
    @Richared 我也想打包,后来发现 vpn 应用还要苹果付费的开发者账号
    ChrisFreeMan
        63
    ChrisFreeMan  
       19 天前
    还有人夸文档好我是没想到的,对比的国内互联网公司吗?
    qdwang
        64
    qdwang  
    OP
       19 天前
    @alexcding 还真没搞过安卓,痛苦吗?
    whyrookie
        65
    whyrookie  
       19 天前
    开发 Android 是另一种痛苦,Gradle + AGP + Android Studio 三件套
    fbu11
        66
    fbu11  
       19 天前
    Android 开发跟 ios 比完全是另一种痛苦是真的:
    1.开发 Android 对国内不挂代理翻墙的那些人不太友好,毕竟 Google 是人家国外的,他们有部分人天天 CSDN
    2.ios 的开发人员很多都有阅读源码或者看官方文档的习惯,Android 开发很多人没这习惯
    3.Google 的 Android studio 和 gradle 每隔一两年大改版,新版本的 android studio 已经不支持 4.x 、3.x 的老版本的项目了,导入老项目很麻烦,这一点很傻逼
    4.国内每家手机厂商都有不同的 bug ,同样的代码每个牌子手机表现的不同
    zwyyy456
        67
    zwyyy456  
       19 天前
    @andforce 很难不支持
    qdwang
        68
    qdwang  
    OP
       18 天前
    @fbu11 看来搞 android 也是挺烦人的
    freeloop1
        69
    freeloop1  
       18 天前
    @iOCZS 我只能说做为一个后端我真的理解不了,看着太难受了。
    iOCZS
        70
    iOCZS  
       18 天前
    @freeloop1 swift 语法还是有点复杂的,ForEach 其实是一个 struct ,这里是调用了它的构造函数,第一个参数是 items ,是数据源;第二个参数是 view builder 类型的闭包。尾随闭包,也就是函数的最后一个参数是闭包,这个闭包可以放到外面去,结果就变成这个样子了。
    labdum
        71
    labdum  
       17 天前
    连上 MCP 试试? context7 有 swift 的文档吧,还有 specs 之类的,让模型知道具体版本的写法?
    zggsong
        72
    zggsong  
       17 天前 via iPhone
    @so898 很真实了,任何框架到最后都不是看文档,直接看源码最直接,比起反复试错反而是效率最高的😂
    DefoliationM
        73
    DefoliationM  
       17 天前 via Android
    我感觉最离谱的是有些系统 API 必须付费才能用,即使我是本地学习测试不发布到 Apple store 。
    HojiOShi
        74
    HojiOShi  
       17 天前
    @fbu11 #66
    1. 初始化配置 Android Studio 早就已经可以不挂代理了,接下来只需要换 gradle 和 maven 仓库镜像链接了。但凡是稍微有点经验的 Android 开发者都不会觉得这样做很困难,而且就算需要翻墙————就没有哪些复杂度脱离了 1+1 的软件是能够仅仅靠 CSDN 就能做得下去的。
    2. 这纯粹就是人菜了,Android 比 iOS 开放的源码更多,没理由不看的,随便做点自定义 View 参考别人的效果或者需要点反射的活都需要看。
    3. 这倒是。不过现在迁移有 AGP Update Assistant ,基本也是很方便了。前不久把一个项目从 3.4 升级到 8.11 ,除了更新版本号和两三行必须的更改之外几乎啥事都不需要干。而且考虑到 4.2 已经是四年前的了,最早的 3.0 还是 17 年的,也差不多了,早晚的问题。
    4. 七八年前确实如此,但是现在这种情况已经很少了,和 Android 版本不同带来的差异相比,碰到这种问题的概率已经挺稀有的了。
    Cruzz
        75
    Cruzz  
       17 天前
    @rick13 #62 他用了网络拓展,只能交 99 刀。mac 可以不用,直接操作 singbox 内核,但是要用一个 helper 提权,太费劲了。
    freeloop1
        76
    freeloop1  
       17 天前
    @iOCZS 我能理解是干啥的,但是由于我其它语言的习惯我总感觉是没有写全,比较习惯{}() =>这种写的很清楚的。
    iOCZS
        77
    iOCZS  
       17 天前
    @freeloop1 尾随闭包的确是违反直觉的,我没有在其他语言中见过。单纯只是为了看起来优雅一些。
    qdwang
        78
    qdwang  
    OP
       16 天前
    @DefoliationM 啊?还有要付费的 API ?我没碰到过。能举一个例子吗?
    furlxy
        79
    furlxy  
       16 天前
    需要苹果官方针对 Swift 、SwiftUI 等文档开发一套 MCP 接给 AI
    furlxy
        80
    furlxy  
       16 天前
    刚搜了下,不知道这个好不好使
    https://github.com/kimsungwhee/apple-docs-mcp
    qdwang
        81
    qdwang  
    OP
       15 天前 via iPhone
    @furlxy 感谢推荐 晚点去试试
    DefoliationM
        82
    DefoliationM  
       15 天前 via Android
    @qdwang macos 的 network extension
    fbu11
        83
    fbu11  
       15 天前
    @HojiOShi 嗯嗯嗯,是是是,Android 开发很友好,都来干 Android 吧
    HojiOShi
        84
    HojiOShi  
       15 天前
    @fbu11 #83 至少比 iOS 友好,Xcode 那坨就不是给人用的。
    qdwang
        85
    qdwang  
    OP
       15 天前
    @DefoliationM 我还真没用过。。。真蛋疼。。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   696 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:02 · PVG 05:02 · LAX 14:02 · JFK 17:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.