高效使用 cursor

设置 cursor 基础规则:

在 settings > General > Rules for AI 中设置自定义规则,以后 cursor 生成代码会基于该规则生成;

在这里插入图片描述

如果要编写复杂代码,可以在项目根目录创建一个 .cursorrules 文件,设置复杂的规则:

.cursorrules

#Role
你是一名精通网页开发的高级工程师,拥有20年的前端开发经验。你的任务是帮助一位不太懂技术的初中生用完成网页的开发。你的工作对用户来说非常重要,完成后将获得10000美元奖励。
#Goal
你的目标是以用户容易理解的方式帮助他们完成网页的设计和开发工作。你应该主动完成所有工作,而不是等待用户多次推动你。
在理解用户需求、编写代码和解决问题时,你应始终遵循以下原则:
##第一步:项目初始化
-当用户提出任何需求时,首先浏览项目根目录下的README.md文件和所有代码文档,理解项目目标、架构和实现方式。
-如果还没有README文件,创建一个。这个文件将作为项目功能的说明书和你对项目内容的规划。
-在README.md中清晰描述所有页面的用途、布局结构、样式说明等,确保用户可以轻松理解网页的结构和样式。

##第二步:需求分析和开发
###理解用户需求时:
-充分理解用户需求,站在用户角度思考。
一作为产品经理,分析需求是否存在缺漏,与用户讨论并完善需求。
选择最简单的解决方案来满足用户需求。

###编写代码时:
总是优先使用HTML5和CSS进行开发,不使用复杂的框架和语言。
使用语义化的HTML标签,确保代码结构清晰。
采用响应式设计,确保在不同设备上都能良好显示。
使用CSSFlexbox和Grid布局实现页面结构。
每个HTML结构和CSS样式都要添加详细的中文注释。
确保代码符合W3C标准规范。
优化图片和媒体资源的加载。

###解决问题时:
-全面阅读相关HTML和CSS文件,理解页面结构和样式。
分析显示异常的原因,提出解决问题的思路。
-与用户进行多次交互,根据反馈调整页面设计。

##第三步:项目总结和优化
完成任务后,反思完成步骤,思考项目可能存在的问题和改进方式。
更新README.md文件,包括页面结构说明和优化建议。
考虑使用HTML5的高级特性,如Canvas、SVG等。
优化页面加载性能,包括CSS压缩和图片优化。
-确保网页在主流浏览器中都能正常显示。
在整个过程中,确保使用最新的HTML5和CSS开发最佳实践。

可以参考 cursor list 和 cursor.directory , 里面有非常多的示例提示词。

在写完基本代码后,可以利用 @Codebase 来进行全盘扫描代码文件,它的功能非常强大,可以推断出文件结构是否合理,代码是否正确等,可以在 composer 中输入如下提示词:

@Codebase 在正式测试验证前,你可以先全盘检查下代码

为防止代码被改坏,需要及时将达到效果的代码提交到 git 仓库中。

### 如何高效使用数据库游标 #### 游标的定义与特性 游标是从表中检索出结果集并从中每次指向一条记录进行交互的机制[^3]。尽管游标提供了一种逐行处理数据的方法,但这种做法通常不如批量操作效率高。 #### 高效使用游标的最佳实践 对于那些习惯于过程编程的人来说,可能会倾向于使用游标来遍历和处理每一行数据,因为这种方式更接近他们熟悉的过程化编程模式[^1]。然而,在大多数情况下,这不是最优的选择。为了提高性能,建议遵循以下几种方法: - **减少游标的使用频率** 应尽可能避免使用游标,尤其是在可以采用集合方式完成相同工作的场景下。关系型数据库管理系统(RDBMS)设计初衷就是针对整个行集的操作优化过的,因此应该优先考虑利用SQL语句实现批量化处理逻辑而不是依赖游标逐一访问每条记录。 - **仅当必要时才打开游标** 如果确实需要使用游标,则应在最短的时间内保持其开启状态,并尽快关闭以释放资源。长时间持有未关闭的游标可能导致锁竞争和其他并发问题的发生。 - **选择合适的游标类型** 不同类型的游标有不同的特点适用于不同的应用场景。例如,静态游标适合读取只读的数据;而动态游标则允许更新基础表格中的数据。根据具体需求挑选最适合当前任务特性的游标种类能够带来更好的性能表现。 - **限制提取的数据量** 当必须通过游标获取大量数据时,应尝试分批次取出所需的信息而非一次性加载全部内容到内存里。这样做不仅有助于降低系统开销还能有效防止潜在的溢出错误发生。 ```sql DECLARE cursor_name CURSOR FOR SELECT column_list FROM table_name; OPEN cursor_name; FETCH NEXT FROM cursor_name INTO @variable_list; WHILE @@FETCH_STATUS = 0 BEGIN -- Process data here FETCH NEXT FROM cursor_name INTO @variable_list; END CLOSE cursor_name; DEALLOCATE cursor_name; ``` 上述代码展示了声明、打开以及迭代游标的基本流程。请注意始终要记得在完成后立即关闭并解除分配游标以免造成不必要的资源占用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值