【裸辞修炼AI编程】研究出AI编程新定义(求锤求指导)

目录

引言

1、直接看我们让AI生成的效果

1.1、前端生成展示

1.2、后端生成展示

2、产品介绍

2.1、项目功能介绍

2.2、教程功能介绍

2.3、社区功能介绍

3、产品能力演示(炸裂到尖叫!!!)

3.1、前端功能演示

3.1.1、快速生成

3.1.2、精准生成

3.2、后端功能演示

4、结语


引言

自从GPT在2022年11月4日横空出世以来,我作为一名资浅AI使用员,几乎是第一时间成为了它的用户——那是2022年11月6日。当时的感觉就像是脑袋里放了一场烟花,震撼无比!虽然我一直预感着人工智能终有一天会降临,但没想到它来得如此迅猛!

对于我这个“老程序员baby”来说,最让我关心的自然是AI在编程方面的表现。不过在实际开发应用过程中,GPT的能力就让我有点一言难尽:

  1. 生成速度很快,要改的内容也很多
  2. GPT的理解能力有限,答非所问
  3. 只能碎片化生成,幅度有限
  4. 老是省略简写
  5. 前端生成出来的东西都是一坨坨的
  6. 综合来说:能用,但效果帮助不大

这种既爱又恨的纠结激发了我的探索欲,我开始尝试用各种方法去引导GPT当牛马(毕竟谁不想早点下班呢?)。

经过对大语言模型的底层研究及结合以往多年的项目经验,我总结出一套基于GPT大语言模型协助编程的有效解决方案,解决了目前AI编程存在的所有问题!并将这些经验打磨成了一款实用的产品,这款产品(支持vue、java-springboot框架、uniapp、小程序)可以大大提升大家开发效率(可能有点自卖自夸,但是以我的认知觉得真有可能用这个产品改变传统的编程方式)。今天,我很高兴能够与大家分享这一成果!同时产品也存在很多不足,希望大家可以帮忙指正,毕竟创业不易,谢谢彦祖亦菲们了(T_T)!

1、直接看我们让AI生成的效果

我们直接进入正题,向大家展示这个产品的部分开发能力,先让大家对其有一个直观的认识。也感谢大家对给我机会分享此事,话不多说,直接上干货。

1.1、前端生成展示

示例(Vue):随意做的首页

生成效果:

示例(uniapp):商城首页

生成效果:

示例(小程序):手机商城首页

生成效果:

1.2、后端生成展示

示例(java-springboot框架):

生成效果:

考虑到图片不能放大,我把MapperXml的代码放出来:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.java.ruoyi.mapper.MyOrderMapper">

    <!-- SQL fragments for reuse -->
    <sql id="orderColumns">order_no, order_time, user_id, amount, remark, address, contact_number, status</sql>
    <sql id="orderProductColumns">order_id, product_id, quantity, price</sql>
    <sql id="orderWhereClause">where id = #{id}</sql>

    <!-- Add a new order -->
    <insert id="addOrder" parameterType="com.java.ruoyi.entity.MyOrder">
        insert into my_order (order_no, order_time, user_id, amount, remark, address, contact_number, status)
        values (#{orderNo}, #{orderTime}, #{userId}, #{amount}, #{remark}, #{address}, #{contactNumber}, #{status})
    </insert>

    <!-- Add order product items -->
    <insert id="addOrderProductItems" parameterType="java.util.List">
        insert into order_product (order_id, product_id, quantity, price)
        <foreach collection="list" item="item" index="index" separator=",">
            values (#{item.orderId}, #{item.productId}, #{item.quantity}, #{item.price})
        </foreach>
    </insert>

    <!-- Delete an order by ID -->
    <delete id="deleteOrderById" parameterType="java.lang.Long">
        delete from my_order
        <include refid="orderWhereClause" />
    </delete>

    <!-- Delete order product items by order ID -->
    <delete id="deleteOrderProductItemsById" parameterType="java.lang.Long">
        delete from order_product
        <include refid="orderWhereClause" />
    </delete>

    <!-- Update an order -->
    <update id="updateOrder" parameterType="com.java.ruoyi.entity.MyOrder">
        update my_order
        set order_no = #{orderNo}, order_time = #{orderTime}, user_id = #{userId}, amount = #{amount},
            remark = #{remark}, address = #{address}, contact_number = #{contactNumber}, status = #{status}
        <include refid="orderWhereClause" />
    </update>

    <!-- Query order list -->
    <select id="queryOrderList" resultType="com.java.ruoyi.entity.MyOrder">
        select
            <include refid="orderColumns" />
        from my_order
        <if test="userId != null">
            where user_id = #{userId}
        </if>
    </select>

    <!-- Query an order by ID -->
    <select id="queryOrderByID" resultType="com.java.ruoyi.entity.MyOrder">
        select
            <include refid="orderColumns" />
        from my_order
        <include refid="orderWhereClause" />
    </select>

    <!-- Query order details including product items -->
    <select id="queryOrderDetails" resultType="com.java.ruoyi.entity.MyOrder">
        select
            <include refid="orderColumns" />,
            op.product_id, op.quantity, op.price
        from my_order o
        left join order_product op on o.id = op.order_id
        <if test="userId != null">
            where o.user_id = #{userId}
        </if>
    </select>

    <!-- Result map for order details -->
    <resultMap id="OrderDetailsResultMap" type="com.java.ruoyi.entity.MyOrder">
        <id property="id" column="id" />
        <result property="orderNo" column="order_no" />
        <result property="orderTime" column="order_time" />
        <result property="userId" column="user_id" />
        <result property="amount" column="amount" />
        <result property="remark" column="remark" />
        <result property="address" column="address" />
        <result property="contactNumber" column="contact_number" />
        <result property="status" column="status" />
        <collection property="productItems" ofType="com.java.ruoyi.entity.OrderProductItem">
            <id property="id" column="id" />
            <result property="productId" column="product_id" />
            <result property="quantity" column="quantity" />
            <result property="price" column="price" />
        </collection>
    </resultMap>

</mapper>

tips:以上后端代码均为产品生成,未改动过任何代码!

我可以给大家一点时间,让我有机会向大家汇报我们产品的详细情况(球球了)。基于我对产品的深入理解,我认为它能够显著提升前端开发的效率。然而,相比前端,我认为在后端开发方面所能带来的效率提升更为惊人。为什么会这样说呢,请看以下的详细说明。

2、产品介绍

我们的产品名叫“小希米”,它具备多个实用功能,包括项目管理、教程学习以及社区交流等功能。接下来,我将为大家逐一介绍这些亮点功能,让大家对“小希米”有一个全面的了解。

2.1、项目功能介绍

在“小希米”的项目功能中,你可以轻松创建新项目,并利用其强大的代码生成能力快速启动开发工作。目前,“小希米”支持以下几种主流编程语言:

Vue.js:适用于构建现代化的前端应用。

UniApp:跨平台应用开发利器。

小程序:微信应用开发利器。

Java-springboot框架:企业级应用开发的首选。

我们正在紧锣密鼓地研究如何更好地支持其他编程语言,如C语言、C++以及Python算法等。这需要各位的耐心,还请大家海涵,让我们可以有时间给大家准备个惊喜!

项目前端功能界面

在“小希米”的前端页面生成过程中,我们将整个界面划分为三个主要区域:

左侧:页面管理区——这里你可以轻松添加新的页面。

右侧:需求描述区——在这里通过自然语言描述页面的具体需求。

中间:组件管理区——显示将要生成的组件列表。

页面生成步骤:

1.添加页面:在左侧的页面管理区添加新的页面。

2.描述需求:在右侧的需求描述区详细说明该页面所需的组件、组件的属性以及方法等。

3.AI生成代码:完成描述后,点击“AI生成代码”按钮。

4.组件生成:中间的组件管理区将根据需求描述自动生成相应的组件,并在1分钟内生成对应的代码。

5.手动调整:代码生成后,你可以在组件管理区手动调整各个组件的位置和大小,以满足具体的业务需求。

6.保存与查看:确认无误后,点击保存“小希米”就会根据页面布局调整代码,按下载本地(代码自动同步至编译器)即可预览页面的实际样式。

7.同步平台:页面有调整需求,可以将在编译器修改后的代码同步回平台,然后调整需求描述区内需要调整部分的描述平台将会对修改部分进行代码修整,其他代码保持不变

通过这种方式,你不仅能够高效地生成前端页面,还能确保最终的结果完全符合预期。

项目后端功能界面

在“小希米”的后端代码生成过程中,我们采用的是面向对象编程的方式,将整个产品界面划分为三个主要区域:

左侧:类管理区——这里你可以轻松添加和管理实现业务逻辑的类对象。

中间:代码查看区——显示生成的后端代码。

右侧:类描述区——在这里通过自然语言描述类对象的属性、方法及逻辑。

代码开发步骤:

1.添加类对象:在左侧的类管理区添加实现业务逻辑的类对象。

2.描述类对象:在右侧的类描述区详细说明该类对象的属性、方法、逻辑,以及与其他类对象之间的关联关系。

3.AI生成代码:完成描述后,点击“AI生成代码”按钮。

4.代码生成与查看:中间的代码查看区将在大约1分钟内显示所有描述的代码。

5.检查与同步:仔细检查生成的代码,确认无误后点击“同步本地”按钮,即可将所有后端代码同步至本地的编译器(所有Java文件将自动创建并组织好)。

通过这种方式,你不仅能够高效地生成后端代码,还能确保最终的结果完全符合预期。

2.2、教程功能介绍

在“小希米”的教程功能中,我们精心准备了一系列使用指南(包括快速生成简单页面、精准生成复杂页面等),这些指南基于我们上百次的实践测试,旨在帮助你掌握最佳的使用方法。在这里,你可以学到如何高效地使用“小希米”来快速生成前端和后端代码。

此外,我们还为你准备了一个前端组件描述库。这个库包含了一系列预先定义好的组件描述,你只需将它们直接复制粘贴到前端的描述页面中,即可一键生成你需要的代码片段。这样一来,无论是新手还是经验丰富的开发者都能轻松上手,快速实现自己的项目目标。

重要tips:学习完教程后再去使用效果更佳!

2.3、社区功能介绍

在“小希米”的社区功能中,我们汇集了产品研发过程中积累的各种测试案例(涵盖描述方式、样式、源码)。这些案例可以直接拿来使用,涵盖了多种场景下的代码生成实例。

你可以轻松浏览这些案例,并查看每个案例对应的代码以及相应的描述方法。当你在工作中遇到需要生成类似页面的情况时,可以直接查找相关的案例描述,复制相应的代码和描述,稍作修改即可投入使用。

通过这种方式,我们希望能够帮助你更快地掌握“小希米”的使用技巧,并提高工作效率。

3、产品能力演示(炸裂到尖叫!!!)

3.1、前端功能演示

3.1.1、快速生成

适用情景:

明确业务需求,但无原型设计。

特点:

效率快,几分钟内可以完成一个页面的开发工作。

要求:

用户不需要严格要求业务输入的格式,只要简单描述,但建议描述最好在30个字以上,效果更好。

描述示例:

###头部###

帮我生成一个个人博客网站的头部

###轮播图###

用el-mentui的轮播图帮我生成一个宽度100%,高度:320px。用于展示个人日常生活照。

###文章列表及个人基本信息###

帮我生成一个个人基本信息,文章列表标题,文章内容展示

左边(20%)上下放置2个卡片,第1个卡片放置个人基本信息(头像,昵称,性别,年龄,专业,爱好标签组,简要介绍)

第2个卡片放置文章标题列表,卡片都要有标题栏。

左边80%,放置文章具体内容,包括文章标题,文章发表时间,浏览数小图标,浏览数,收藏数小图标,收藏数。

###结束###

重要tips:前端页面逻辑加入描述页面功能即可齐全,描述方式产品教程有详细讲解!

生成效果:

3.1.2、精准生成

适用情景:

参照原型设计开发

特点:

1、还原度高,精准可控,

2、开发速度:开发速度相当于原型设计甚至更快,但无法做到几分钟完成一个页面。除非相对简单,或有参照的描述。

要求:

1、采用<业务需求></业务需求> 形式进行业务需求描述(非必要,但建议)

2、布局方式,平台采用了flex布局,并采用了缩写的方式。布局控制采用4个字母组合控制,规则如下:

将flex布局的方式缩写成4个字母,每个字母意义如下:

  f 代表flex布局

  r/c  代表行或列布局

  s | b | c | e:   s代表flex-start   b代表 space-between  c代表center  e代表flex-end

  s | b | c | e:   s代表flex-start   b代表 space-between  c代表center  e代表flex-end

描述示例:

###头部###

<头部 frbc 宽度:100%>

<左侧 38%>

<logo图片></logo图片>

<菜单栏 frbc>

<菜单项 frbc 循环 选中项下边框为2px solid 淡蓝色>

首页,知乎学堂,等你来答

</菜单项>

</菜单栏>

</左侧>

<右侧 宽度:60%>

<知乎直答 frbc>

小图标,知乎直答

</知乎直答>

<圆角搜索栏></圆角搜索框>

<圆角淡蓝色按钮>提问</圆角淡蓝色按钮>

<消息图标>消息数</消息图标>

<私信图标>私信数</私信图标>

</右侧>

</头部>

###文章文体###

<图片 宽度:100%,高度:120px>

</图片>

<分类导航 frsc>

<分类项 循环 数据绑定分类>

关注,推荐,热榜,视频

</分类项>

</分类导航>

<文章列表>

<文章项 循环渲染 数据属性绑定文章数组>

<标题>标题</标题>

<文章描述>文章描述</文章描述>

<操作行 frsc>

点赞按钮及点赞数,评论小图标及评论数,分享小图标,收藏小图标,喜欢小图标

</操作行>

</文章项>

</文章列表>

###创作中心###

<创作中心>

<标题栏 frbc>

<标题小图标及标题名>

小图标,创作中心

</标题小图标及标题名>

</草稿箱及草稿数>

<草稿箱及草稿数>

小图标,创作中心

</草稿箱及草稿数>

</标题栏>

<操作宫格 frbc>

<宫格项 fccc 循环渲染 >

中图标,操作名(总共4项,包括了回答问题,发视频,写文章,写想法)

</宫格项>

</操作宫格>

<开启你的知乎之旅 frbc>

<左侧 宽度:50%>

<小标题>开启你的知乎创作之旅</小标题>

<描述>发布首篇内容,开通创作中心,快来成为知乎创作者吧</描述>

</左侧>

<右侧 宽度:45%>

大图标

</右侧>

</开启你的知乎之旅>

<大号开始创作按钮 镂空 宽度:100%>+开始创作,</大号开始创作按钮>

</创作中心>

###结束###

重要tips:前端页面逻辑加入描述页面功能即可齐全,描述方式产品教程有详细讲解!

以上是仿知乎网站首页的描述

生成效果:

对比知乎首页:

15分钟完成仿制完成!

3.2、后端功能演示

JAVA教程之Springboot

springboot生成主要分为springboot类,由controller、service,serviceImpl,mapper,mapperxml,entity组成,用户只需要根据业务逻辑描述则可生成相关类的代码,下面示例中用户根据红色部分选择填写即可。

示例如下:(环境部分为固定部分,复制粘贴修改位置即可使用)

+++项目环境+++

---项目地址---

C:/shop/

---项目地址---

---包地址---

com.java.ruoyi

---包地址---

---工具包地址---

com.java.ruoyi.utils

---工具包地址---

---MapperXml目录---

---MapperXml目录---

---controller补充要求---

补充描述

---controller补充要求---

---service补充要求---

补充描述

---service补充要求---

---serviceImpl补充要求---

补充描述

---serviceImpl补充要求---

---mapper补充要求---

补充描述

---mapper补充要求---

+++项目环境+++

##Book##

属性:

id,order_name,creator,createDateTime,amount,

方法:

增加订单

参数:订单类

返回值:整形

逻辑:添加数据库表tb_order表数据

##订单类##

//数据库//

tb_order表,

字段 id,order_name,creator,createDateTime,amount,

//数据库//

生成效果:

代码:

package com.java.ruoyi.service.impl;

import com.java.ruoyi.entity.Order;
import com.java.ruoyi.mapper.OrderMapper;
import com.java.ruoyi.service.IOrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 订单业务实现类
 */
@Service
public class OrderServiceImpl implements IOrderService {

    @Autowired
    private OrderMapper orderMapper;

    /**
     * 提交订单
     * @param order 订单对象
     * @return 订单ID
     */
    @Override
    public int submitOrder(Order order) {
        // 调用添加订单方法
        int orderId = orderMapper.addOrder(order);
        // 调用批量添加订单商品项
        if (order.getGoodsItemList() != null && !order.getGoodsItemList().isEmpty()) {
            orderMapper.batchAddGoodsItems(order.getGoodsItemList(), orderId);
        }
        return orderId;
    }

    /**
     * 删除订单
     * @param order 订单对象
     * @return 删除结果
     */
    @Override
    public int deleteOrder(Order order) {
        // 根据订单类.id删除数据订单表数据
        int result = orderMapper.deleteOrderById(order.getId());
        // 根据订单类.id删除订单商品项表数据
        orderMapper.deleteGoodsItemsByOrderId(order.getId());
        return result;
    }

    /**
     * 修改订单
     * @param order 订单对象
     * @return 修改结果
     */
    @Override
    public int modifyOrder(Order order) {
        // 先根据订单类.id删除原有订单商品项
        orderMapper.deleteGoodsItemsByOrderId(order.getId());
        // 更新订单信息
        int result = orderMapper.updateOrder(order);
        // 重新添加订单商品项
        if (order.getGoodsItemList() != null && !order.getGoodsItemList().isEmpty()) {
            orderMapper.batchAddGoodsItems(order.getGoodsItemList(), order.getId());
        }
        return result;
    }

    /**
     * 查询订单列表
     * @param order 订单对象
     * @return 订单列表
     */
    @Override
    public List<Order> queryOrderList(Order order) {
        // 查询数据库数据
        return orderMapper.queryOrderList(order);
    }

    /**
     * 通过id查询订单
     * @param order 订单对象
     * @return 订单信息
     */
    @Override
    public Order queryOrderByID(Order order) {
        // 查询数据库数据
        return orderMapper.queryOrderByID(order.getId());
    }

    /**
     * 添加订单
     * @param order 订单对象
     * @return 添加结果
     */
    @Override
    public int addOrder(Order order) {
        // 添加订单
        return orderMapper.addOrder(order);
    }
}

后端部分开发只需确认环境,描述对象类、属性、方法逻辑、数据库表即可生成代码,描述准确代码质量可达95%-100%,让您一小时可以完成一天开发工作。

重要tips:“小希米”可协助整个项目的开发过程,编译器微调后的代码同步至“小希米”中,需求描述框中的未改动的部分小希米也不会对相应的代码进行修改。

4、结语

通过使用“小希米”,我们发现它能够显著提升开发效率,带来诸多优势:

1.高质量代码,快速生成——“小希米”能够生成高质量的代码,不仅速度快,而且极大地提升了开发效率。

2.中文编程,逻辑清晰——采用中文描述逻辑,使得代码更加易于理解和维护,便于查漏补缺。

3.准确生成,减少调试——代码生成准确无误,大大缩短了系统的调试时间。

4.系统化编程,避免变动——采用系统化的方法进行编程,减少了不必要的代码变动,确保所有的开发工作都在平台上高效完成。

这些优势不仅能够帮助开发者节省大量时间,还能够让大家有更多的时间去做自己真正想做的事情。不论是胸怀抱负的易烊千玺们想学习提升自我、还是空虚寂寞的吴彦祖们想谈对象,或者家庭美满的彭于晏们想多陪伴家人,都不再受到长时间面对代码的束缚而身不由己无可奈何。

通过“小希米”,我们希望能让每位开发者的生活更加丰富多彩!

诚挚邀请与致歉

尽管“小希米”已经在许多方面表现出色,但它仍然像一个正在成长中的孩子,还有一些不足之处需要改进。例如:

1、代词理解差——“小希米”在处理代词时可能会出现混淆,特别是在前后句中使用相同的代词时,可能会误以为是指同一个对象,从而导致逻辑错误。

2、代码偏差——有时生成的代码中会出现小错误,比如多余的逗号等问题。

3、平台观感差——很多小细节没有思路雕琢得更好看

这些问题可能会给大家带来不便,在此向大家表示诚挚的歉意。第一次为人,做这事我也没经验,初次推出“小希米”,还有很多地方是我们没有考虑到的。因此,我们真诚地恳请各位彦祖亦菲们(亲爱的用户们),帮助我们测试“小希米”,并提供宝贵的反馈意见。您的每一条建议都对“小希米”的成长有很大的帮助,让“小希米”可以更好地给大家提供服务。

感谢大家给予我们的耐心与宽容听我们唠叨,还请给位各位彦祖亦菲们动动发财的小手私聊我领取测试号帮帮“小希米”(球球了)。

产品链接:www.aigeximi.com

  • 21
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值