专栏名称: 少数派
少数派帮你更好地运用数字产品,提升工作效率和生活品质。
目录
相关文章推荐
全球风口  ·  微信首个 AI ... ·  1小时前  
全球风口  ·  微信首个 AI ... ·  1小时前  
材料科学与工程  ·  华南理工大学顶刊:可耐3600℃的抗氧化高熵 ... ·  2 天前  
51好读  ›  专栏  ›  少数派

从 0 到 1,不会编程的我用 ChatGPT 写了一个地震警报 App

少数派  · 公众号  · 互联网短视频 科技自媒体  · 2024-11-13 12:21

主要观点总结

本文讲述了作者如何使用AI工具Claude开发iOS应用《震感》的经历,包括从构思、编码、后端架构、迭代到最终上架的过程。同时,作者还探讨了AI在开发中的作用以及未来的潜力。

关键观点总结

关键观点1: 作者使用AI工具Claude开发iOS应用《震感》的整个过程

包括从决定开发主题、选择编程语言、解决开发中的各种问题,以及与AI的合作方式等

关键观点2: AI在开发中的应用和挑战

作者通过实际经验,探讨了AI在开发中的优势,如解决具体问题的效率,以及面临的挑战,如需要细化问题、更新AI的知识库等

关键观点3: AI与人类的合作方式

作者提出将AI当做机器而非人类来对待的建议,并强调了与AI合作中身份转换的重要性,如将身份转变为测试工程师来提高问题解决效率

关键观点4: 项目的迭代和后续发展

作者介绍了如何使用AI进行项目迭代,以及震感app的后续更新和扩展,包括支持更多国家和地区、本地化语言、macOS和iPadOS版本等


正文

请到「今天看啥」查看全文


初步拟定目标之后,不意味着我就可以开始编写代码。主要是我也不会写。我需要先解决一些基本问题:
  1. 开发一款 iOS 应用,选择什么编程语言?

  2. 我需要下载什么软件来开发,如何开始?

  3. App 的界面设计,我需要哪些页面,如何设计?

  4. 预计的时间成本,我个人能接受的最大时间投入?

  5. App 的发布,如何提交到 App Store?
当然,除了这些很明显的问题,还有很多小问题就不再一一罗列了。于是,我通过询问 AI + 查询资料的方式,大致得出了一些结论:
  1. 我决定使用 Apple 推荐的 SwiftUI 来开发一款纯原生的 iOS app,不使用第三方框架,尽量减少依赖。也便于 AI 能尽量利用好 Apple 官方文档。

  2. 我需要下载 Xcode,这是 Apple 官方提供的开发工具。

  3. 我需要参考 Apple 提供的人机界面指南,尽量使用原生控件,省去界面设计。

  4. 我能接受累计投入 1 个月的周末时间来完成这个项目。

  5. 我需要每年交 688 元来开通 Apple Developer 账号,这是提交 app 到 App Store 的必要条件。
迈出第一步:梳理思路,从零开始
我注册好 Apple Developer 账号,下载了 Xcode。面对的第一个问题时,我该如何开始?
我对 iOS app 的项目结构、代码组织等一无所知。于是,我让 Claude 帮我生成一个 Hello World(编程领域面向初学者的项目)的 SwiftUI 项目,并步骤化地指导我运行起来。虽然我看不懂 SwiftUI 的代码,但它成功运行了起来。
接下来,我让 Claude 讲述了一遍 SwiftUI 的项目结构。例如 iOS app 的图标应该放在哪里,页面是如何组织的,需要哪些基础的配置等。经历了多轮对话,我初步了解了一款 iOS app 的基本结构。
一款最简单的 iOS App 结构
深入细节:与 AI 手挽手
和 AI 合作开发 iOS app,是一件不容易的事情。如果你直接对它说:请帮我开发一个地震信息 app。
毫无疑问,它会给你一坨 shit 代码,然后告诉你:完成了。
所以,你需要一步步引导它,让它帮你解决一些具体的问题,比如从创建一个 app 细化到创建一个新的页面,在细化到在页面上显示一个列表,再细化到这个列表的样式等。而实现的过程,则是反过来从最小粒度开始。
只有将问题细化,AI 才能真正帮助你。当然,细化问题的过程,你也可以和 AI 一起完成。完美闭环。
例如,震感 app 的主页面,主体是背景的地图和地震事件列表。
震感 App 主界面
你首先需要 Claude 来帮你创建主界面,并显示地图。在这个过程中,你的提示语可能是:
请在 App 主页面上显示地图,必须使用 iOS 原生组件,使用 SwiftUI 语法。需要输出新增或修改的代码文件路径和代码完整内容。

拿到 AI 的输出后,你需要复制到 Xcode 中,运行项目,看看效果。例如,你可能在界面上看到了地图,但只是局部的一块区域,此时可能就需要继续对话:
我希望地图占据整个屏幕,不包含任何边界。请仔细分析代码后,重新输出修改后的完整代码。






请到「今天看啥」查看全文


推荐文章
石榴婆报告  ·  推广 | 变美唯一可能,就是好好折腾
8 年前