网易首页 > 网易号 > 正文 申请入驻

用Claude Code开发Mac应用8小时实战:比想象中更复杂

0
分享至


在我多年的软件开发生涯中,我主要使用两种基本技术来构建软件。第一种技术是自己逐行编写代码。我很享受这个过程,尽管它可能非常耗时。如果你进入心流状态,你真的可以沉浸在这个过程中。

第二种技术是管理其他程序员。这通常是一个力量倍增器,因为那些开发人员在逐行编码方面往往比我更好、更快。我可以管理几个开发人员,让项目进展得更快。

但我并不那么享受这种做法。从来没有心流状态。更像是持续不断的规划、说服、哄劝、纠正,还有一点混乱。人就是人,如果你是经理,这就是你会遇到的情况。

使用Claude Code和AI构建Mac应用不会带来心流状态。如果你曾经管理过程序员,你就知道使用Claude Code的感觉。它是一个巨大的力量倍增器,但你将花费大部分时间去哄劝和纠正,还要花一些时间试图摆脱AI生成的混乱。

与管理人类程序员一样,如果你知道如何编码并且理解底层技术,你使用Claude Code会更加成功。这样,你可以在架构和设计决策以及简单的功能定义方面指导AI。

我的ZDNET同事Tiernan Ray最近尝试了vibe编程。他形容自己是"编程知识有限的新手"。他的结论是:"我会说使用这些工具让我对程序员有了更大的敬意。"

我告诉你这些是为了设定期望。我从木船铁程序员的时代就开始编程了。我以及任何有经验的开发人员从Claude Code这样的工具中获得的好处,也可能对那些渴望学习的非程序员有用。但不要指望仅仅因为使用AI就能挥舞魔法棒获得适合市场的应用。

话说回来,让我们深入我的Mac项目。

项目起始点和需求分析

我从之前使用Claude Code构建的iPhone应用开始。这个应用的目的是动态管理3D打印耗材卷。我有120个卷材,存放在四个存储架上,每个架子有五层。这些卷材不断在架子和八台3D打印机之间移动,其中五台可以同时使用四个卷材,一台可以使用八个卷材,两台仅限于一个卷材。

iPhone应用使用NFC标签,使跟踪这些卷材的移动变得非常容易,并使用内置摄像头抓取每个卷材的参考图像。我已经每天使用这个应用大约两个月了,它对我的工作流程来说是一个巨大的胜利。

但现在,我想让它在Mac上工作。我也想让它在Apple Watch上工作,但那是另一篇文章的故事。

我通过网络从Mac启动大部分打印作业,所以能够清楚地看到我有什么材料和颜色可用,以及已经分配了什么,会很有帮助。当然,我可以使用手机。但我希望能够在桌面上打开Mac应用程序并查看库存。

iPhone应用是在苹果的Xcode开发环境中使用Swift和SwiftUI构建的。我在终端中使用Claude Code,它与Xcode配合编写代码。

Mac的UI和iPhone UI之间有很多交叉,特别是在使用Swift时。幸运的是,移植到Mac不需要完全重写。但确实需要大量返工。

首先,有Mac限制的问题。我的Mac Studio没有摄像头,Mac不支持NFC扫描。所以虽然我想保留iPhone应用收集的NFC和照片数据,但Mac无法扫描或管理它。

我还希望Mac与iPhone应用即时完全同步。iPhone上存在的任何卷材数据都应该从Mac上可见。幸运的是,苹果已经构建了一个相当广泛的库来通过iCloud共享数据。

开发过程中的挑战与解决

当我开始iPhone应用时,我知道我要共享数据,所以从一开始就在iPhone应用中构建了iCloud架构。当我开始Mac应用时,只需要接入那些数据并将其带到计算机以及手机上。

这是我的起点。我确保对应用目录进行完整备份。我还将所有内容检入GitHub进行源代码控制和管理。

然后我启动Claude Code,告诉它我希望它分支我的本地Git仓库,并解释我想基于iPhone应用的工作构建Mac应用。作为第一个提示的一部分,我解释说NFC和摄像头功能不需要移植,但iCloud架构需要。

十分钟后,我有了一个Mac应用。它很糟糕。看起来很可怕。每次卷材列表出现时,填充都需要很长时间。但从零到第一次运行十分钟的时间,比我逐行完成要少用大约十天。

经过几轮运行Xcode的构建工具,等待不可避免的错误和警告,与Claude分享这些错误和警告,然后重复。但过了一段时间,应用功能正常了,尽管与我最终想要的结果相去甚远。

Claude最初有些困难的一个领域是协调Mac有可调整大小的窗口这一事实。因此,UI元素必须相应地缩放和调整大小。这就是构建Claude知识库变得极其重要的地方。

就像我对iPhone应用所做的那样,我指示Claude Code构建关于它工作的所有内容以及我们学到的经验教训的注释和状态更新。所以一旦Claude最终理解窗口会调整大小,这就成为嵌入在项目指令中的规则。

在iPhone上,你在屏幕之间转换,都是垂直方向的。但在Mac上,我选择制作三面板屏幕。左面板包含主要选项按钮,中间面板包含卷材列表,最右面板包含卷材数据。

让它工作并没有花太长时间,但需要大量来回提示才能让它看起来不错。我没有任何特别突出的提示可以与你分享,但我可以告诉你,我描述了我想看到的内容,让它移动和重新排列项目,并为显示部分添加样式。我经常与Claude这样做。

不幸的是,在Mac实现中添加三面板显示somehow破坏了iPhone应用。这就是作为程序员有帮助的地方,因为我最终发现Claude可能试图在应用之间共享屏幕。当我明确告诉它为Mac创建新的界面屏幕然后修复iPhone的屏幕时,事情运行得更好。

在架构上,我们必须处理速度问题。卷材列表很慢,因为它为每一行加载全分辨率照片。解决方案是缩略图缓存系统,它创建照片的128像素小版本,将它们存储在磁盘上,并在后台生成它们,这样即使有数百个卷材,列表也能平滑滚动。

我们还必须探索如何刷新该列表,减少图像创建的等待时间,并添加清除功能。

管理AI的体验感受

在本文开头,我提到了我的两种软件创建模式:编码和管理。在使用Claude Code时,我花费了大部分时间进行管理。

事实上,我能找到的最佳心态是将AI视为远程人类程序员。我给它分配任务。我问问题。我征求它的意见。我指出错误。我测试、测试、再测试。然后我再次测试。

Claude在产生这个项目方面做得与我过去分配工作的任何程序员一样好。有时Claude很迟钝和固执,但我的人类程序员也有类似的不配合时刻。

毫无疑问,管理AI的体验远不如自己编码那么愉快。另一方面,我们在大约一个月的实际时间内,用大约8小时的项目时间创建了一个完全符合我要求的Mac应用。

如果你正在考虑使用Claude Code或任何AI制作Mac应用,我的建议是慢慢工作,逐个添加功能,并进行完善。然后,一旦项目达到某种功能状态,将90%的注意力转向测试。不要假设任何东西都会按照你的要求构建。Claude遗漏了一些关键功能,直到我指出才实现它们。

但毫无疑问,生产力的好处是巨大的。现在我的iPhone和Mac上都有一个专门为我的工作流程设计的特殊定制应用。而且它有效。我仍然没有决定是否要把它变成产品,但即使我永远不卖它,在过去三个月里我在Claude Code Max上花费的几百美元绝对是值得的。

敬请期待。我的下一个项目是将我的应用移到Apple Watch上。

Q&A

Q1:使用Claude Code开发应用的体验如何?

A:使用Claude Code开发应用更像是管理程序员而不是编程。它是一个巨大的力量倍增器,能在8小时内创建功能完整的Mac应用,但需要花费大部分时间去指导、纠正AI的错误,处理AI生成的混乱。整个过程没有编程的心流状态,更多是持续的管理工作。

Q2:Claude Code适合什么样的人使用?

A:Claude Code更适合有编程经验的开发者使用。如果你知道如何编码并理解底层技术,就能更成功地使用Claude Code,可以在架构和设计决策方面指导AI。对于编程新手来说,不要指望仅仅因为使用AI就能轻松获得市场级的应用。

Q3:使用Claude Code开发应用需要注意什么?

A:建议慢慢工作,逐个添加功能并完善。一旦项目达到基本功能状态,要将90%注意力转向测试。不要假设AI会完全按要求构建,Claude可能会遗漏关键功能或产生意外错误。同时要做好备份和版本控制,像管理人类程序员一样给AI分配具体任务。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
中方收到邀请后特朗普翻脸,200%重税已锁定首个目标

中方收到邀请后特朗普翻脸,200%重税已锁定首个目标

像梦一场a
2026-01-21 16:09:57
维多利亚「臭脸瞪媳妇」影片疯传! 她杀人眼神超恐怖:气氛尴尬

维多利亚「臭脸瞪媳妇」影片疯传! 她杀人眼神超恐怖:气氛尴尬

ETtoday星光云
2026-01-21 13:30:16
可控核聚变,有明确订单的5家公司!

可控核聚变,有明确订单的5家公司!

Thurman在昆明
2026-01-21 10:36:35
器官捐献纳入见义勇为评定范围,从而挽救更多患者的生命

器官捐献纳入见义勇为评定范围,从而挽救更多患者的生命

映射生活的身影
2026-01-21 11:37:12
两年了,为何许家印迟迟不判刑?真相比你想象的更复杂!

两年了,为何许家印迟迟不判刑?真相比你想象的更复杂!

李云飞Afey
2026-01-20 11:43:34
太适合中国男篮!CBA最强小外援打出身价,或被郭士强点名归化?

太适合中国男篮!CBA最强小外援打出身价,或被郭士强点名归化?

绯雨儿
2026-01-21 15:05:21
真是没想到,原来田朴珺没和王石睡在一起!她是单独睡一个房间…

真是没想到,原来田朴珺没和王石睡在一起!她是单独睡一个房间…

火山诗话
2026-01-20 06:43:44
贝克汉姆儿媳晒娘家5.3亿庄园,70岁超模母亲也很美,碾压了婆家

贝克汉姆儿媳晒娘家5.3亿庄园,70岁超模母亲也很美,碾压了婆家

笑傲春秋
2026-01-20 13:52:11
许家印案“掀翻天”,涉案人员可能远超当年赖昌星的特大走私案

许家印案“掀翻天”,涉案人员可能远超当年赖昌星的特大走私案

小莜读史
2026-01-15 20:44:16
马克龙涉华表态,中方回应

马克龙涉华表态,中方回应

环球时报国际
2026-01-21 16:20:45
那年我接嫂子回家,路过苞米地她突然对我说:你家香火得靠你了

那年我接嫂子回家,路过苞米地她突然对我说:你家香火得靠你了

云端小院
2026-01-21 10:36:14
美国急坏了:中国为什么遮住神舟20的舷窗?有什么不想让人看到?

美国急坏了:中国为什么遮住神舟20的舷窗?有什么不想让人看到?

军机Talk
2026-01-21 10:57:17
10万亿度需求也不买!中国摊牌,输电专线全叫停,国产电价教做人

10万亿度需求也不买!中国摊牌,输电专线全叫停,国产电价教做人

牛锅巴小钒
2026-01-21 09:09:57
瓦良格号送到中国后有多震撼?专家刮掉表面的锈迹:钢材品质极佳

瓦良格号送到中国后有多震撼?专家刮掉表面的锈迹:钢材品质极佳

古书记史
2026-01-06 16:31:56
没有邻居,我搬进“一梯一户”半年,真后悔没有早点买,太幸福了

没有邻居,我搬进“一梯一户”半年,真后悔没有早点买,太幸福了

室内设计师有料儿
2026-01-21 11:25:56
陪睡陪玩只是冰山一角!万达蒸发800亿后,王思聪再次传出大丑闻

陪睡陪玩只是冰山一角!万达蒸发800亿后,王思聪再次传出大丑闻

阿器谈史
2025-12-26 15:26:05
研究了1400多名百岁老人后发现:做到这5点,你也能活过100岁

研究了1400多名百岁老人后发现:做到这5点,你也能活过100岁

DrX说
2026-01-13 16:53:24
一万人中,能有多少人晚年还能健全走路?少坐多站的人,告诉实话

一万人中,能有多少人晚年还能健全走路?少坐多站的人,告诉实话

健康科普365
2026-01-18 16:35:03
博主说老公3次哭求她把帕金森婆婆接来家里!结果人一来博主就跑

博主说老公3次哭求她把帕金森婆婆接来家里!结果人一来博主就跑

夜深爱杂谈
2026-01-20 19:19:28
41岁嫁入豪门,44岁为81岁老公生下女儿,47岁又生下了二胎

41岁嫁入豪门,44岁为81岁老公生下女儿,47岁又生下了二胎

阿器谈史
2025-12-29 12:40:09
2026-01-21 21:47:00
至顶头条 incentive-icons
至顶头条
记录和推动数字化创新
15603文章数 49685关注度
往期回顾 全部

科技要闻

给机器人做仿真训练 这家创企年营收破亿

头条要闻

风波中的西贝股权发生变化 新荣记张勇对贾国龙伸援手

头条要闻

风波中的西贝股权发生变化 新荣记张勇对贾国龙伸援手

体育要闻

只会防守反击?不好意思,我们要踢决赛了

娱乐要闻

首位捐款的明星 苗圃现身嫣然医院捐款

财经要闻

丹麦打响第一枪 欧洲用资本保卫格陵兰岛

汽车要闻

2026款上汽大众朗逸正式上市 售价12.09万起

态度原创

房产
旅游
本地
游戏
公开课

房产要闻

那个砸下400亿的绿地,又要杀回海南了!

旅游要闻

请到广州过大年!广州11区花市等你来逛

本地新闻

云游辽宁|漫步千年小城晨昏,“康”复好心情

爆冲至畅销榜前10:一款二游用3年把春节做成了自己的招牌

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版