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

二、IDE集成DeepSeek保姆级教学(使用篇)

各位看官老爷好,如果还没有安装DeepSeek请查阅前一篇

一、IDE集成DeepSeek保姆级教学(安装篇)

一、DeepSeek在CodeGPT中使用教学

1.1、Edit Code 编辑代码

选中代码片段 —> 右键 —> CodeGPT —> Edit Code, 输入自然语言可编辑代码,点击Submit提交

Edit Code
输入自然语言

基本是按自然语言生成的,补全后的代码如下

	public User findByName(String name) {if (StringUtils.isEmpty(name)) {return null;}User condition = new User();condition.setName(name);return userMapper.selectOne(condition);}

1.2、Find Bugs 查找bug

选中代码片段 —> 右键 —> CodeGPT —> Find Bugs 即可对代码进行潜在 Bug 分析

Find Bugs
潜在bug分析

分析得合理且详细有木有,并且会给出优化建议,优化后瞬间修复了bug,还提升了性能,下面附上完整的优化代码:

public String getGender(String identityCard) {if (identityCard == null) {throw new IllegalArgumentException("身份证号码不能为空");}if (identityCard.length() != 18) {throw new IllegalArgumentException("身份证号码长度必须为18位");}char genderChar = identityCard.charAt(16); // 直接获取第17位字符if (!Character.isDigit(genderChar)) {throw new IllegalArgumentException("身份证号码第17位必须是数字");}return (genderChar - '0') % 2 == 1 ? "男" : "女"; // 字符转数字并判断奇偶性
}

1.3、Explain 解释代码

选中代码片段 —> 右键 —> CodeGPT —> Explain,代码解释可以帮助程序员快速理解业务逻辑

Explain 解释代码
解释结果
解释结果

1.4、Refactor 代码重构

选中代码片段 —> 右键 —> CodeGPT —> Refactor,感觉不合理的代码都可以借助AI进行代码重构

代码重构
重构说明

重构后的代码如下,使用 try-with-resources 简化资源管理避免内存泄露,抽取 createReadSheet 方法减少重复代码

// 使用 try-with-resources 简化资源管理
String fileName = "F:\\demo.xlsx";
try (ExcelReader excelReader = EasyExcel.read(fileName).build()) {// 创建并配置两个工作表ReadSheet readSheet1 = createReadSheet(0, new DemoDataListener());ReadSheet readSheet2 = createReadSheet(1, new DemoDataListener());// 同时读取两个工作表excelReader.read(readSheet1, readSheet2);
} catch (Exception e) {log.error("读取 Excel 文件失败", e);return failed("读取失败");
}
return success();// 辅助方法:创建并配置 ReadSheet
private ReadSheet createReadSheet(int sheetNo, DemoDataListener listener) {return EasyExcel.readSheet(sheetNo).head(DemoData.class).registerReadListener(listener).build();
}

1.5、Optimize 优化代码

选中代码片段 —> 右键 —> CodeGPT —> Optimize,优化代码功能可以帮助程序员极大提高代码质量
Optimize 优化代码优化说明
优化后的完整代码如下:

@Override
public String getGender(String identityCard) {// 检查身份证号是否为空或长度不为18if (identityCard == null || identityCard.length() != 18) {throw new IllegalArgumentException("无效的身份证号码:身份证号不能为空且长度必须为18位");}// 检查身份证号格式(前17位为数字,最后一位为数字或X)if (!identityCard.matches("\\d{17}[\\dX]")) {throw new IllegalArgumentException("无效的身份证号码:格式不正确");}// 直接获取第17位字符char genderChar = identityCard.charAt(16);// 判断性别:奇数男,偶数女return (genderChar - '0') % 2 == 1 ? "男" : "女";
}

优化后的优势

  • 格式校验更严格:确保身份证号符合标准格式(前 17 位为数字,最后一位为数字或 X)。
  • 健壮性增强:避免非法输入导致逻辑错误或异常。
  • 可读性提高:通过正则表达式明确校验规则,代码更清晰。

优化总结:增加身份证格式校验后,代码更加健壮,能够有效过滤非法输入,同时保持了原有功能的简洁和高效。

1.6、Write Tests 编写单元测试

选中代码片段 —> 右键 —> CodeGPT —> Write Tests, 不爱写单元测试的程序员有福音了,通过deepseek直接生成,做轻微调整就能用,极大减少了编写单元测试的时间
编写单元测试
单元测试说明

完整的单元测试代码如下:

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;class GenderUtilTest {@Testvoid testGetGender_Male() {String identityCard = "110105199003071234"; // 第17位为奇数assertEquals("男", GenderUtil.getGender(identityCard));}@Testvoid testGetGender_Female() {String identityCard = "110105199003071238"; // 第17位为偶数assertEquals("女", GenderUtil.getGender(identityCard));}@Testvoid testGetGender_NullInput() {String identityCard = null;IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> {GenderUtil.getGender(identityCard);});assertEquals("无效的身份证号码", exception.getMessage());}@Testvoid testGetGender_InvalidLength() {String identityCard = "11010519900307123"; // 长度不足18位IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> {GenderUtil.getGender(identityCard);});assertEquals("无效的身份证号码", exception.getMessage());}@Testvoid testGetGender_InvalidCharacter() {String identityCard = "11010519900307123X"; // 第17位为非数字字符assertThrows(NumberFormatException.class, () -> {GenderUtil.getGender(identityCard);});}
}

业务方法的调整需要调整下,第17位为偶数,第17位其实是3,不是偶数所以也需要调整下,其他的就没啥问题了。

1.7、Chat 聊天

单击右侧CodeGPT图标 —> 在对话框输入你想要实现的内容(自然语言) —> 单击发送图标即可生成代码,可以这么说会自然就能写代码的时代即将到来,AI 应用会越来越强大。

Chat

完整代码如下:

public class DigitFilter {// Method to filter digits from a stringpublic static String filterDigits(String input) {StringBuilder digits = new StringBuilder();for (char c : input.toCharArray()) {if (Character.isDigit(c)) {digits.append(c);}}return digits.toString();}// Unit testpublic static void main(String[] args) {String testInput = "abc123xyz456";String expectedOutput = "123456";String result = filterDigits(testInput);if (result.equals(expectedOutput)) {System.out.println("Test Passed!");} else {System.out.println("Test Failed. Expected: " + expectedOutput + ", Got: " + result);}}
}

执行结果:

执行结果

二、注意事项

2.1 确保CodeGPT对话框选择Deepseek V3大模型,如果使用收费的DeepSeek大模型请选择Custom: OpenAI(安装篇有介绍)
2.2 确保网络正常:如果你使用的是在线服务(如 OpenAI),请确保网络连接通畅。
2.3 保持更新:定期更新 CodeGPT 插件,以获取最新功能和最好的兼容。
2.4 离线使用:如果你需要离线使用,可以结合工具如 Ollama 或 LM Studio,将模型部署在本地。

三、总结

     总体而言,Deepseek堪称国内AI大模型中的佼佼者,以其卓越的兼容性和对众多IDE的广泛支持,为程序员们带来了前所未有的便捷。其核心功能更是丰富多彩,令人眼前一亮:代码解释功能让繁琐复杂的代码逻辑瞬间变得清晰明了;高效代码优化技术,精准剔除冗余,助力性能飞跃;一键生成单元测试,为代码质量筑起坚固防线;更有智能答疑解惑与模拟AI程序员辅助开发等实用功能,让编程之路更加畅通无阻。作为编程领域的得力助手,Deepseek无疑将大幅提升程序员的开发效率,成为每一位编程爱好者不可或缺编程利器。

一、IDE集成DeepSeek保姆级教学(安装篇)

– 欢迎点赞、关注、转发、收藏【技术咖啡馆C】,各大平台同名。

相关文章:

二、IDE集成DeepSeek保姆级教学(使用篇)

各位看官老爷好,如果还没有安装DeepSeek请查阅前一篇 一、IDE集成DeepSeek保姆级教学(安装篇) 一、DeepSeek在CodeGPT中使用教学 1.1、Edit Code 编辑代码 选中代码片段 —> 右键 —> CodeGPT —> Edit Code, 输入自然语言可编辑代码,点击S…...

通过理解 sk_buff 深入掌握 Linux 内核自定义协议族的开发实现

要开发 Linux 内核中的自定义协议族(如私有传输层或网络层协议),需基于 sk_buff 的结构和操作,结合内核网络栈的扩展机制。以下是实现这一目标的分步指南: 1. 协议族开发的核心步骤 (1) 注册自定义协议族 定义协议号 在 <linux/if_ether.h> 或自定义头文件中分配唯…...

Qt 自带颜色属性

Qt 系统自带颜色如下&#xff1a; enum GlobalColor {color0,color1,black,white,darkGray,gray,lightGray,red,green,blue,cyan,magenta,yellow,darkRed,darkGreen,darkBlue,darkCyan,darkMagenta,darkYellow,transparent};对应颜色如下&#xff1a; color0: 这是自定义颜色…...

Linux的文件与目录管理

rm -rf / 列出目录内容和属性 命令&#xff1a;ls 格式&#xff1a;ls 选项 文件名 例&#xff1a; ls -a 打印工作路径 命令&#xff1a;pwd 切换工作目录 命令&#xff1a;cd 格式&#xff1a;cd 相对路径或者绝对路径 查看文件类型 命令&#xff1a;file 格式…...

常用的 pip 命令

pip 是 Python 的包管理工具&#xff0c;可用于安装、卸载、更新和管理 Python 包。以下是一些常用的 pip 命令&#xff1a; 1. 安装包 安装最新版本的包 pip install package_namepackage_name 是你要安装的 Python 包的名称&#xff0c;例如 pip install requests 可以安装…...

Vue 项目中配置代理的必要性与实现指南

Vue 项目中配置代理的必要性与实现指南 在 Vue 前端项目的开发过程中&#xff0c;前端与后端地址通常不同&#xff0c;可能引发跨域问题。为了在开发环境下顺畅地请求后端接口&#xff0c;常常会通过配置**代理&#xff08;proxy&#xff09;**来解决问题。这篇文章将详细解析…...

【QT】QLinearGradient 线性渐变类简单使用教程

目录 0.简介 1&#xff09;qtDesigner中 2&#xff09;实际执行 1.功能详述 3.举一反三的样式 0.简介 QLinearGradient 是 Qt 框架中的一个类&#xff0c;用于定义线性渐变效果&#xff08;通过样式表设置&#xff09;。它可以用来填充形状、背景或其他图形元素&#xff0…...

编程题 - 汽水瓶【JavaScript/Node.js解法】

‌“学如逆水行舟&#xff0c;不进则退。”‌ ——《增广贤文》 目录 汽水瓶 题目&#xff1a;解答分析&#xff1a;js代码解答 -ACM模式&#xff1a;代码通过&#xff1a;题解分析&#xff1a;简洁思路代码&#xff1a; 汽水瓶 题目&#xff1a; 某商店规定&#xff1a;三个空…...

从 0 到 1:使用 Docker 部署个人博客系统

引言 在当今数字化时代&#xff0c;拥有一个个人博客来记录自己的学习、生活和见解是一件非常有意义的事情。然而&#xff0c;传统的博客部署方式往往涉及复杂的环境配置和依赖管理&#xff0c;容易让人望而却步。而 Docker 的出现&#xff0c;为我们提供了一种简单、高效的解…...

Python - Python操作Redis

安装Redis可参考 Redis-入门简介-CSDN博客 在Python中接入Redis数据库通常使用redis-py这个库 一、安装Redis 首先&#xff0c;需要安装redis-py库。通过pip来安装 pip install redis 二、连接Redis Redis连接操作import redisdef redis_connect():try:redisClient redi…...

Solidity 开发环境

Solidity 开发环境 Solidity编辑器&#xff1a;Solidity编辑器是⼀种专⻔⽤于编写和编辑Solidity代码的编辑器。常⽤的Solidity编辑器包括 Visual Studio Code、Atom和Sublime Text。以太坊开发环境&#xff1a;以太坊开发环境&#xff08;Ethereum Development Environment&a…...

js基础案例

1.弹出警告框&#xff0c;显示Hello JS 2.在页面输出内容&#xff08;内容在body标签里面&#xff09; 3.在控制台输出内容 4.js代码是自上而下执行 5.将js代码编写到标签的onclick属性中&#xff0c;当点击时&#xff0c;js代码才会执行 6.将js写到超链接的href属性中&#xf…...

Unity TMPro显示中文字体

TMP默认的字体只能显示英语&#xff0c;那么怎么显示中文呢 1、找到支持中文的字体文件 在c盘搜索Fonts文件夹有很多支持中文的字体文件 我这里选择雅黑 PS.双击打开发现里面有粗体细体普通三个版本&#xff0c;也可以只导入一个版本进去 2、将其拖入到unity Assets里面 3…...

2025 GDC开发者先锋大会“人形机器人的开源之路”分论坛 | 圆桌会议:《开放协作:开源生态如何解锁人形机器人与具身智能的未来》(上篇)

在GDC全球开发者先锋大会期间&#xff0c;2月23日&#xff0c;由GDC组委会指导、国家地方共建人形机器人创新中心&#xff08;以下简称“国地中心”&#xff09;承办的“人形机器人的开源之路”主题论坛在上海西岸艺术中心成功举办。 在人工智能与机器人技术飞速发展的今天&…...

MySQL 数据库安全配置最佳实践

文章目录 MySQL 数据库安全配置最佳实践账户与权限管理账户最小化原则权限最小化配置密码策略强化 认证与访问控制禁用匿名账户启用安全认证 网络安全防护访问源限制禁用远程root访问启用SSL加密 日志审计与监控全量审计配置二进制日志管理 服务端安全加固关键参数配置文件权限…...

网络安全红队工具

目录 红队及发展趋势 基本概念 发展趋势 防守阶段 备战阶段 临战阶段 实战阶段 战后整顿 如果错过互联网,与你擦肩而过的不仅仅是机会,而是整整一个时代。 红队及发展趋势 基本概念 红队一般指实战攻防的防守方。 红队主要复盘总结现有防护系统的不足之处&#xff0c;为…...

【Qt】编程基础

目录 一、Qt体系框架&#xff1a; ​编辑二、布局方式&#xff1a; 1.绝对布局 setGeometry()函数 2.盒子布局&#xff1a; QHBoxLayout:水平布局管理器 QVBoxLayout:垂直布局管理器 QGridLayout:网格布局管理器 三、基本控件及其函数 标签类 &#xff1a;QLabel 按…...

《SegFace: Face Segmentation of Long-Tail Classes》论文分享(侵删)

author{Kartik Narayan and Vibashan VS and Vishal M. Patel} 原文链接&#xff1a;[2412.08647] SegFace: Face Segmentation of Long-Tail Classes 摘要 人脸解析是指将人脸语义分割为眼睛、鼻子、头发等关键面部区域。它是各种高级应用程序的先决条件&#xff0c;包括人脸…...

Android AOSP系统裁记录

Android 系统裁剪是指根据需求移除不必要的组件和功能&#xff0c;以优化系统性能、减少存储占用或满足特定设备需求。以下是 Android 系统裁剪的基本步骤&#xff1a; 1. 准备环境 操作系统&#xff1a;推荐使用 Ubuntu 或 macOS。 工具&#xff1a; Android SDK Android N…...

音乐游戏Dance Dance Revolution(DDR)模拟器

文章目录 &#xff08;一&#xff09;Dance Dance Revolution&#xff08;1.1&#xff09;基本情况&#xff08;1.2&#xff09;机体 &#xff08;二&#xff09;模拟器&#xff08;2.1&#xff09;主程序&#xff08;2.2&#xff09;模拟器主题 &#xff08;三&#xff09;曲谱…...

从零到一:Keil5环境搭建与STM32项目实战避坑指南

1. Keil5安装与基础配置 第一次接触Keil MDK的开发者&#xff0c;八成会在安装环节就踩坑。我当年用STM32F103C8T6做毕业设计时&#xff0c;光是解决xerces-c_3_0.dll缺失问题就折腾了一整天。这个经典错误其实有更稳妥的解决方案&#xff1a;除了将dll文件复制到System32目录…...

Kiro IDE + Amazon Bedrock AgentCore 实战:规范驱动开发 Multi-Agent 金融逾期处理系统,从需求到云上部署只要几小时

Kiro IDE Amazon Bedrock AgentCore 实战&#xff1a;规范驱动开发 Multi-Agent 金融逾期处理系统&#xff0c;从需求到云上部署只要几小时 上周接了个活&#xff1a;把一个金融逾期处理流程用 AI Agent 跑起来。听着不难对吧&#xff1f;五个 Agent 协同干活&#xff0c;从逾…...

收藏!AI风口来袭,程序员必学大模型,薪资翻倍不是梦!

本文介绍了AI大模型应用开发的巨大机遇&#xff0c;适合想转行或提升技能的程序员。文章指出&#xff0c;掌握AI大模型、RAG、Prompt等技术&#xff0c;不仅能获得高薪工作&#xff0c;还能提升个人竞争力。作者提供了完整的学习资料和路线图&#xff0c;帮助读者快速入门&…...

2025新版机器视觉软件开发框架|Halcon+WPF插件源码(含完整算子库)

温馨提示&#xff1a;文末有联系方式2025年度升级版机器视觉软件框架发布 全新适配工业AI检测趋势&#xff0c;本框架为面向实际产线部署优化的轻量级、模块化视觉开发平台&#xff0c;专为自动化检测、定位引导与尺寸测量等场景设计&#xff0c;代码结构清晰&#xff0c;便于二…...

终极指南:3分钟掌握QQ音乐QMC加密文件无损解密技巧

终极指南&#xff1a;3分钟掌握QQ音乐QMC加密文件无损解密技巧 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder 在数字音乐的世界里&#xff0c;你是否曾遇到过这样的困扰&a…...

Blender UV Squares终极指南:3分钟掌握UV网格重塑神器

Blender UV Squares终极指南&#xff1a;3分钟掌握UV网格重塑神器 【免费下载链接】UvSquares Blender addon for reshaping UV quad selection into a grid. 项目地址: https://gitcode.com/gh_mirrors/uv/UvSquares 在3D建模和纹理贴图的世界里&#xff0c;UV Squares…...

Cursor AI破解免费VIP 2025终极完整教程:如何绕过试用限制享受Pro功能

Cursor AI破解免费VIP 2025终极完整教程&#xff1a;如何绕过试用限制享受Pro功能 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve r…...

CANoe实战指南:从UDS诊断到ECU刷写,手把手构建车载测试台架

1. CANoe测试台架搭建基础 第一次接触车载测试的朋友可能会被各种专业术语吓到&#xff0c;但其实用CANoe搭建测试环境就像组装乐高积木一样有趣。我刚开始做ECU测试时&#xff0c;最头疼的就是如何把硬件设备和软件配置对应起来。后来发现只要掌握几个关键点&#xff0c;半小时…...

Onekey:Steam Depot清单自动化工具的技术革新与实践指南

Onekey&#xff1a;Steam Depot清单自动化工具的技术革新与实践指南 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 在游戏开发的世界里&#xff0c;如何高效获取和处理Steam Depot清单一直是开…...

2024最新版微信聊天记录提取工具部署指南:永久保存+数据分析全流程

2024最新版微信聊天记录提取工具部署指南&#xff1a;永久保存数据分析全流程 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trendi…...