当前位置: 首页 > article >正文

小程序开发进阶之路-AI编程助手

之前,我独自一人开发了一个名为“心情追忆”的小程序,旨在帮助用户记录日常的心情变化及重要时刻。从项目的构思、设计、前端(小程序)开发、后端搭建到最终部署,所有环节都由我一人包办。经过一个月的努力,通过群聊分享等方式,用户量也有了将近200人。虽然取得了初步的成绩,但我希望小程序能够持续发展。

在个人开发小程序的过程中,最需要解决的一个问题就是编码效率。虽然我自己具备分析需求、编写前端和后端代码的能力,但一个人的速度毕竟有限。为了提高开发效率,我开始使用AI工具来辅助开发。

在我使用AI工具进行开发时,我一直认为有一点非常重要:你自己必须具备相关的技能。例如:

1. 在项目设计阶段,如果你自己不会设计,AI给你设计出来的方案你可能根本不知道会出什么问题。

2. 在后端开发中,如果你不了解业务逻辑,当测试出现问题时,你根本不知道该如何修改。

3. 在前端开发中,如果你不熟悉前端技术,样式乱了或API调用出错时,你无法描述清楚错误是什么,更不知道该如何修复。

4. 在运维方面,如果你不熟悉命令行操作,AI执行一个 rm -rf 你都不知道在做什么,可能会导致严重的后果。

因此,AI工具的作用是提升你的效率,而不是替代你的知识和技能。

1. 项目设计阶段

在项目设计阶段,我会使用国产的通义千问和智谱清言等大模型进行交流。这些AI工具能够帮助我快速生成设计方案,但最终的设计决策仍然由我来做。例如,当我需要设计数据库表和API接口时,我会详细描述我的需求,然后让AI帮我建表。有时候,AI的建议会超出我的预期,补全我没有考虑到的点。这样,我只需要快速审核和调整,大大节省了设计时间。

2. 后端开发阶段

作为一名多年的后端开发者,我对整体架构和逻辑设计非常熟悉。为了加快开发进度,我在IDE中使用了通义灵码。只需要在注释中描述清楚需求,通义灵码就能自动生成大部分代码。生成的代码我会进行快速审核,确保其符合项目需求。这种高效的代码生成方式极大地提高了我的开发效率,让我可以把更多的时间和精力放在优化和调试上。

3. 前端开发阶段

在前端开发方面,由于页面主要是常用的表单、按钮和动画特效(如nutUI框架),代码相对简单。为了进一步提升效率,我选择了Cursor。通过描述所需功能,Cursor能够自动分析并生成相应的表单内容。生成的代码我会进行快速审核,确保其符合设计要求。更重要的是,Cursor能够全局分析代码,确保样式的一致性。这种全局分析能力是我目前所知的通义灵码所不具备的,大大提升了我的前端开发效率。

我让AI参考首页写一个反馈页面, 这是AI自动写的部分代码

首页的样式

AI写的反馈页面, 我一个字都没改, 几乎能直接用

4. 运维阶段

运维方面,我有一个小缺点,就是比较懒,不喜欢记东西。虽然部署的步骤我都熟悉,但偶尔会忘记一些不常用的命令。这时候,我会直接问通义千问,它总能迅速给我提供准确的答案,帮助我顺利完成部署工作。生成的命令和配置文件我也会进行快速审核,确保其正确无误。

总结

通过使用这些AI工具,我在“心情追忆”小程序的开发过程中显著提高了效率。虽然这些工具不能完全替代我的工作,但它们在设计、后端开发、前端开发和运维方面提供了强大的支持,让我能够在短时间内完成更多的任务。我希望我的分享能对正在个人开发项目的朋友有所帮助,如果你也有类似的需求,不妨尝试一下这些AI工具,它们或许能为你带来意想不到的帮助。

最后分析一下通义灵码和cursor的区别

特性通义灵码Cursor
类型IDE 插件独立 IDE
主要功能行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、代码解释、研发智能问答、异常报错排查项目级全面 CodeBase 理解、更好的语言定制(包括中文支持)、项目级代码编辑、多模态理解能力(支持上传图片)、VScode 原始用户的无缝衔接
适用场景快速生成代码片段、代码优化与审查、单元测试生成、异常报错排查项目级代码辅助、跨语言代码生成、代码风格统一、图形界面设计辅助
中文支持优秀,适合中国开发者优秀,支持多语言定制
模型支持基于阿里云通义大模型支持多种大模型,如 Claude 3.5、GPT-4 等
安全性符合中国相关法规和标准需要联网使用,提供隐私保护选项
价格有免费和个人/企业付费版本订阅制,价格高于 GitHub Copilot
社区支持中国开发者社区支持较好国际开发者社区支持良好
安装方式作为 IDE 插件安装下载独立软件安装
特点专注于提高代码质量和效率、适用于多种编程语言项目级代码理解与编辑、多模态输入支持、无缝集成现有开发环境

http://www.kler.cn/a/387332.html

相关文章:

  • Qt 编写插件plugin,支持接口定义信号
  • 16008.行为树(五)-自定义数据指针在黑板中的传递
  • Python教程笔记(1)
  • 星期-时间范围选择器 滑动选择时间 最小粒度 vue3
  • C++实现用户分组--学习
  • el-dialog 设置 水平垂直居中 高度不固定
  • 配置多公钥在多平台使用Git
  • FOFA使用教程之从零到精通
  • javascript实现国密hash(sm3)算法(支持微信小程序),可分多次计算
  • 【论文复现】MSA+抑郁症模型总结(三)
  • 使用 Flask 和 ONLYOFFICE 实现文档在线编辑功能
  • 浏览器发起 HTTP 请求的典型场景
  • lua入门教程:pairs
  • 力扣 多数元素
  • Debezium系列之:Debezium3版本增量快照和只读增量快照应用的变化
  • javascript五子棋小游戏,基于div+canvas的五子棋小游戏
  • 智慧水库数字孪生系统解决方案
  • HTB:Sightless[WriteUP]
  • Science Robotics 综述揭示演化研究新范式,从机器人复活远古生物!
  • 蓝桥杯-网络安全比赛(6)基础学习-JavaScript 原型链污染
  • Golang进阶
  • 【数据结构】插入排序——直接插入排序 和 希尔排序
  • Java项目实战II基于Spring Boot的疗养院管理系统设计与实现(开发文档+数据库+源码)
  • 【详细 工程向】基于Smart3D的五镜头相机三维重建
  • phpstudy 使用php8.2.9版本报错问题
  • 基于物联网的公共街道照明系统设计与构建