首页 > 编程语言 >AI 编程:如何用好 Lovable

AI 编程:如何用好 Lovable

时间:2025-01-06 19:02:58浏览次数:3  
标签:AI 编程 Lovable 一个 上下文 我们

目前我最好的 AI 编程伙伴是 Lovable 和 Cursor 。 bolt.new 和 windsurf,也都很不错,选择前两个是因为上限足够高。

Lovable 的网址,没有 bolt.new 有名字,我推荐大家都试试,尤其是不懂代码的人。我刚刚看了以下,我用 lovable 一共创建了 40 个项目。

https://lovable.dev/

​今天的文章的主要内容来自 X 和 Lovable 的文档,是 Lovable 的 Prompt 的最佳实践,期间会加入我的思考。如果要直接看原文,在这里:

https://x.com/lovable_dev/status/1873078129469821044

正文开始。

使用上下文

提供更多的背景信息是有必要的。例如:

我们正在构建一个帮助团队追踪任务的项目管理工具。

这个工具应该具有以下功能:

- 用户认证
- 项目创建
- 任务分配
- 报告生成

现在,第一个任务是创建项目创建的用户界面。

这里有点像.cursorrules,把我要做的事情的上下文交代清楚。但不要忘记最后的明确,第一个任务是什么,后面会说,这是要一步一步来,不至于让 AI 偏离我们的预期太多。

例如:

我需要一个与Supabase集成并有安全认证流程的CRM(客户关系管理)应用。首先从搭建后端开始。

我们正在开发一个专注于环保产品的电商平台。需要生成一个带有类别和价格筛选功能的产品列表页面。

有一个上下文的信息,然后明确具体的任务。

任务分解

很多人在尝试 AI 编程的时候,给的一个需求都是:开发一个天气预报的应用,开发一个 2048 游戏。这也是的,我们从这个开始,获得惊艳的结果。

但我们开始真正工作的时候,不要让 AI 猜我们的需求。

对比:

不要这样:

构建一个包含所有功能的 CRM 系统



这样进行:

1. “设置后端”

2. "添加认证流程"

3. “添加导出功能”

这是很重要的,包括后面的“复杂功能规划”和“调试过程”都是对任务的分解:

复杂功能规划

分解思考:我们来规划认证:

1. 所需组件
2. 用户流程
3. 安全措施

调试过程:

遵循此结构:

1. 描述出了什么问题
2. 解释预期行为
3. 分享控制台错误

使用图像

这是一个重要的技巧,我们可以上传截图,尤其是针对不懂编程的用户,无法“精确描述”的时候,什么叫精确的描述?比如一个网页的布局,有导航栏、有 header 、有footer 这都是基本的,还有更复杂的专业词汇。

更好的是学会如何描述——这不难。其次是直接给参考图片,例如:

制作这个看板,支持列间拖放。使用 Pangea dnd 实现卡片在列间的移动。

截图大家自行想象。这里有一个奇怪的词汇:Pangea dnd。这是一个很专业的提出需求的方式,不仅提出了问题,还指出了解决的方向。编程这个行当里,这么多年积累了很多最佳实践。不懂编程没关系,可以知道一些词汇是什么意思。这在 AI 编程的时候很有帮助。

比如于我,包豪斯、孟菲斯、蒙德里安,我之前都没关注过,使用 AI 帮我工作之后,我需要给TA 明确的指令,就需要做一些学习。每一个专业,都有一个概念的体系,可以先弄清楚,照猫画虎。

这里还有技巧,就是往往 AI 比我们知道的都多、都深入,我们不知道怎么问,可以问 AI 。AI 给出答案,我们有一个更明确的学习方向。

有效反馈

我们在提需求的时候,不要说“让它更好”,而是说:“登录表单可以工作,但需要电子邮件验证,并在密码不匹配时提供更好的错误信息。”

本质上,还是怎么给AI更清晰的反馈。我们在和模型沟通的时候,可以抽象对抽象,具体对具体。有的时候,实在不知道问什么,可以说让交互更好,让视觉更好,但这个时候,要再次明确我们在做什么的上下文,通过上下文的关键词,模型可以关联出来至少平均线以上的水平,大概我们也知道了方向。

设置约束 & UI 更新

定义明确的边界:“创建一个仅限于显示 3 个可见任务的待办事项应用程序。在保持我们现有设计系统的同时,包含添加/编辑/删除功能。”

再比如:

仅更新视觉设计。保持所有功能和 API 调用不变。专注于改进移动布局。

强调改进视觉的同时,明确不需要更改的内容是有必要的。以此类推

无障碍的要求

具体说明需求:

生成一个带有 ARIA 标签、键盘导航和适当焦点管理的登录表单

——这也能需要我们有一定的这方面的知识。

道在屎溺,和 AI 一起工作很简单,我原本想把这些能力写得花里胡哨,但随着我用的越多,越有体验的时候,我觉得简简单单就好。

不必期望 lovable 完成所有的工作,当你试过以上的方法,Lovable 似乎无法改进的时候,Cursor 就要登场了。

标签:AI,编程,Lovable,一个,上下文,我们
From: https://blog.csdn.net/daiziguizhong/article/details/144969130

相关文章

  • 【花雕学编程】Arduino CNC 之支持加速度控制的G代码解析器
    Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用ArduinoIDE(集成开发环境)来编写、......
  • 【花雕学编程】Arduino CNC 之循环运动绘制正方形
    Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用ArduinoIDE(集成开发环境)来编写、......
  • web3与AI结合-Sahara AI 项目介绍
    背景介绍SaharaAI于2023年创立,是一个"区块链+AI"领域的项目。其项目愿景是,利用区块链和隐私技术将现有的AI商业模式去中心化,打造公平、透明、低门槛的“协作AI经济”体系,旨在重构新的利益分配机制以及交易、协作市场,在资产化和上链AI资源的同时,确保AI构建的每......
  • [读书日志]从零开始学习Chisel 第五篇:Scala面向对象编程——类继承(敏捷硬件开发语言Ch
    3.3类继承3.3.1Scala中的类继承为了节省代码量和反映实际各种类之间的联系,通常采取两种策略,包含和继承。包含是说明一个类中包含另一个类的对象,但两者之间没有必然联系。继承是从一个宽泛的类派生出更具体的类的过程,被继承的类称为“超类”或“父类”,而派生出来的类称为......
  • [读书日志]从零开始学习Chisel 第四篇:Scala面向对象编程——操作符即方法(敏捷硬件开发
    3.2操作符即方法3.2.1操作符在Scala中的解释在其它语言中,定义了一些基本的类型,但这些类型并不是我们在面向对象中所说的类。比如说1,这是一个int类型常量,但不能说它是int类型的对象。针对这些数据类型,存在一些基本操作符,比如算数操作符“+”。Scala所追求的是极致的面向对......
  • [读书日志]从零开始学习Chisel 第三篇:Scala面向对象编程——类和对象(敏捷硬件开发语言
    3.Scala面向对象编程3.1类和对象3.1.1类类是用class开头的代码定义,定义完成后可以用new+类名的方式构造一个对象,对象的类型是这个类。类中定义的var和val类型变量称为字段,用def定义的函数称为方法。字段也称为实例变量,因为每个被构造出来的对象都有自己的字段,但所有的对象公......
  • 2025首发版,自学AI大模型的正确顺序:最新最全学习路线全解析
    大模型学习路线图第一阶段:基础知识准备在这个阶段,您需要打下坚实的数学基础和编程基础,这是学习任何机器学习和深度学习技术所必需的。前排提示,文末有大模型AGI-CSDN独家资料包哦!1.数学基础线性代数:矩阵运算、向量空间、特征值与特征向量等。概率统计:随机变量、概率分......
  • 大小球最新智能分析模型:AI大模型预测分析系统
    一、引言在竞技体育领域,数据分析已成为预测比赛结果的重要手段。本文将详细介绍一种基于AI大模型的预测分析系统,该系统利用深度学习技术对大小球结果进行智能预测。以下内容将涵盖数据处理、模型构建、算法实现及评估优化等环节,旨在为专业编程师和数据分析爱好者提供一套严谨......
  • MongoDB的索引和查询分析(explain)
    •创建普通索引,使用命令db.collection.createIndex({key:1})•创建唯一索引,使用命令db.collection.createIndex({key:1},{unique:true})a.语法中Key值为你要创建的索引字段,b.1为指定按升序创建索引,如果你想按降序来创建索引指定为-1即可。• createIndex()接收可选参数,可......
  • AI对开发过程的替代性
    在过去一年投入人工智能辅助开发之后,虽然大家说使用了人工智能之后工作效率显着提高,但我们日常使用的实际软件似乎并没有明显改善。所以问题出现在哪里?使用场景目前团队AI使用主要在以下方面:代码补全和建议执行复杂的重构任务生成测试和文档作为“结对程序员”来解决问题......