智能高效的Go IDE——GoLand v2023.1全新发布,引入gRPC 导航

news2025/1/21 16:41:48

GoLand 使 Go 代码的阅读、编写和更改变得非常容易。即时错误检测和修复建议,通过一步撤消快速安全重构,智能代码完成,死代码检测和文档提示帮助所有 Go 开发人员,从新手到经验丰富的专业人士,创建快速、高效、和可靠的代码。

GoLand v2022.3官方正式版下载

更新日志如下:

GoLand 2023.1 引入了漏洞检查器、gRPC 代码中更好的导航,以及针对泛型接收器的 Rename(重命名)重构。

现在,您可以运行包含非标准库软件包的临时文件,使用正则表达式创建自己的搜索和替换检查,以及在原始字符串文字与带双引号的文字之间快速转换。 Implement interface(实现接口)意图操作现在适用于未导出的接口。

另外,还有我们新 UI 的多项改进、针对 Docker 和 Kubernetes 的更新,以及针对 Web 开发的改进。

gRPC 导航

GoLand 的 HTTP 客户端目前支持运行 gRPC 请求。 您还可以从 Endpoints(端点)工具窗口运行 gRPC 请求。

这个版本为我们的 gRPC 功能集提供了另一个有价值的补充。 您现在可以浏览和访问来自 Go 代码的消息、服务和方法的声明,以及来自 .proto 文件的 Go 实现。

点击消息、服务、方法或其实现声明旁边的专属图标即可。

临时文件

使用非标准库软件包运行临时文件

您现在可以使用非标准库 Go 依赖项运行临时文件。 将代码从项目文件复制到临时文件并按 Run(运行)按钮时,GoLand 会创建一个带有 -overlay 标志的 Run(运行)配置。 这个标志与将文件路径映射到原始项目中的 go.mod 和 go.sum 的 JSON 文件一起使用。

泛型

针对泛型接收器的 Rename(重命名)重构

重命名结构中的类型形参时,Rename(重命名)重构将建议更改对应接收器。

我们修正了几个影响泛型代码中接口、实现和方法规范之间导航的问题。 我们还针对泛型相关误报和漏报实现了多项额外修正。

性能改进

智能模式下的 Scanning files to index(正在扫描要建立索引的文件)

我们通过在智能模式下执行 Scanning files to index…(正在扫描要建立索引的文件)进程改进了 IDE 启动体验,这样可以在启动过程中更早地提供完整的 IDE 功能。 打开项目时,GoLand 会使用项目先前会话中的现有缓存,并同时查找要建立索引的文件。 如果在扫描中没有发现更改,IDE 将准备就绪,消除此前启动时建立索引所造成的延迟。

重新配置 Windows Defender 设置的建议

一个新通知会在启用 Windows Defender 实时保护时触发。 由于这些防病毒检查会显著降低 IDE 的速度,GoLand 会建议将特定文件夹添加到 Defender 的排除项列表。 通知提供了自动重新配置这些设置或首先检查 Defender 配置说明并手动执行的选项。

编辑器

Code Vision:接口实现

我们更新了 Code Vision 功能。 GoLand 现在会显示接口的实现数量及其方法规范。

在之前的版本中,我们引入了在所有函数和类型附近显示的用法,显示函数或类型在当前项目中被引用的频率。 另外,启用版本控制集成后会显示代码作者。

自定义基于正则表达式的检查

现在,您可以使用正则表达式创建自己的搜索和替换检查。 这些检查对于高亮显示基于样式或基于格式的问题特别实用。

转到 Settings | Editor | Inspections(设置 | 编辑器 | 检查),按 + 图标。 从列表中选择 Add RegExp Search Inspection(添加正则表达式搜索检查),在新出现的对话框中即可设置新检查。 选择所需语言,使用左侧面板中的提示构建正则表达式,然后指定所需替换。 您还可以指定 IDE 在项目中高亮显示的方式。

Go Playground:共享 URL 中的版本参数

在 2022.3 版本中,我们将 Go Playground 功能集成到 GoLand 中。

在这个版本,我们对该功能做出了改进。 首先,选择 dev 或以前的版本时,共享 URL 现在包含版本参数。

我们还为询问是否允许在 Playground 中共享代码的弹出窗口添加了一个关闭选项。 您可以在 Settings | Go | Ask before sharing in Go Playground(设置 | Go | 在 Go Playground 中共享前询问)中将其禁用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/527320.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多语言APP的外包开发流程及注意事项

近些年国内越来越多的公司走向海外,有些互联网项目即可以为国内用户使用,也可以为国外用户使用,尤其是一些智力类小游戏,这些小游戏不需要特别的运营,只要在设计和玩法上把握好,那就可以推广到全球用户。今…

MySQL 中 CONCAT 函数使用

1:创建数据表: CREATE TABLE user ( id int NOT NULL AUTO_INCREMENT, code varchar(255) NOT NULL, name varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT3 DE…

KubeSphere 社区双周报 | 开源之夏已启动 | 2023.04.28-05.11

KubeSphere 社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过 commit 的贡献者,并对近期重要的 PR 进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。 本次双周报涵盖时间为:2023.04.28-2023.…

数据结构学习分享之堆的详解以及TopK问题

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:数据结构学习分享⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你了解更多数据结构的知识   🔝🔝 数据结构第七课 1. 前言&a…

未来已来,时代颠覆者ChatGPT你真的了解吗?

文章目录 什么是ChatGPTchatgpt与自然语言处理从gpt1.0到chatgpt,经历了什么chatgpt是一个语言模型chatgpt是如何处理文字输入的写在最后 什么是ChatGPT ChatGPT是美国OpenAI研发的聊天机器人程序,2022年11月30日发布。ChatGPT是人工智能技术驱动的自然语…

网络基础知识(4)——建立与关闭连接

建立 TCP 连接:三次握手 前面我们提到过,TCP 协议是一个面向连接的协议,双方在进行网络通信之间,都必须先在双方之间建立一条连接,俗称“握手”,可能在学习网络编程之前,大家或多或少都听过“…

SpringSecurity安全权限框架及其原理

1. 基础使用 首先创建最基本的SpringBoot项目&#xff0c;默认都会。主要是引入依赖和创建Controller进行测试。 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://w…

十五天MySQL学习计划(运维篇-完结)读写分离-第十五天

十五天MySQL学习计划&#xff08;运维篇-完结&#xff09;读写分离-第十五天 读写分离 1.读写分离 ​ 读写分离&#xff0c;简单的说是把对数据库的读和写操作分开&#xff0c;以对应不同的数据库服务器。主服务器提供写操作&#xff0c;从数据库提供读操作&#xff0c;这样…

linux0.12-8-10-sys.c

[369页] 1、 这个文件需要配合其他文件一起看才能明白函数的作用&#xff1b; 2、 进程ID和进程组ID是描述进程之间的关系&#xff0c;与用户ID和组ID等其他无关系&#xff1b; 3、 用户ID和组ID和文件&#xff08;程序&#xff09;属性有关&#xff0c;当进程执行&#xff08;…

首发!车联网前装搭载率破70%,本土供应商抢下半壁江山

对于汽车智能化来说&#xff0c;网联化是相辅相成的角色&#xff0c;从传统3G、4G到5G的进化&#xff0c;提升座舱信息娱乐的体验&#xff1b;到C-V2X落地为辅助驾驶及自动驾驶提供冗余感知。 同时&#xff0c;车联网的普及&#xff0c;也进一步驱动互联网生态内容、服务以及类…

【AUTOSAR】【以太网】SoAd

目录 一、概述 二、限制与约束 三、依赖模块 5.1 TCPIP模块 5.2 通用上层 四、功能描述 4.1 套接字连接 4.2 PDU传输 4.3 PDU Header option 4.4 PDU 接收 4.5 最佳匹配算法 4.6 消息接受策略 4.7 TP PDU取消 4.8 路由组 4.9 PDU fan-out 五、API接口 5.1 API…

SpringBoot实现登录拦截的实现

对于管理系统或其他需要用户登录的系统&#xff0c;登录验证都是必不可少的环节&#xff0c;在SpringBoot开发的项目中&#xff0c;通过实现拦截器来实现用户登录拦截并验证。 1、SpringBoot实现登录拦截的原理 SpringBoot通过实现HandlerInterceptor接口实现拦截器&#xff…

如何完成GNSS接收器的定时校准

背景 GNSS以其提供亚米级精度定位的能力而闻名。然而鲜为人知的是&#xff0c;GNSS还提供了一种非常便捷的方法&#xff0c;可以通过GNSS接收器获得纳秒&#xff08;甚至亚纳秒&#xff09;的定时精度。事实上&#xff0c;除了三个空间维度之外&#xff0c;GNSS还使用户能够计…

iPhone照片导入电脑的图文教程,批量上传的3个方法!

案例&#xff1a;苹果手机照片怎么批量上传到电脑&#xff1f; 【友友们&#xff0c;手机照片太多&#xff0c;占用了我很多内存。想要把照片上传批量上传到电脑上进行保存&#xff0c;该怎么做&#xff1f;】 随着iPhone的普及和摄影功能的提升&#xff0c;越来越多的用户希望…

Rave Reports v2022 for Delphi 7-11

Rave Reports v2022 for Delphi 7-11 Rave Reports是来自Nevrona的一组公司&#xff0c;从Delphi和CBuilder中的数据库中报告进度。您可以使用专用工具轻松设计自己的报告。如果您需要将报告更改为您的用户&#xff0c;例如要发布的订单报告&#xff0c;此工具也提供了此功能&a…

Java | 一分钟掌握定时任务 | 3 - 单机定时之Timer

作者&#xff1a;Mars酱 声明&#xff1a;本文章由Mars酱原创&#xff0c;部分内容来源于网络&#xff0c;如有疑问请联系本人。 转载&#xff1a;欢迎转载&#xff0c;转载前先请联系我&#xff01; 介绍 这个是个JDK远古时代的api了&#xff0c;据考证&#xff0c;可以追溯到…

CSS小技巧之圆形虚线边框

虚线相信大家日常都用的比较多&#xff0c;常见的用法就是使用 border-style 控制不同的样式&#xff0c;比如设置如下边框代码&#xff1a; border-style: dotted dashed solid double;这将设置顶部的边框样式为点状&#xff0c;右边的边框样式为虚线&#xff0c;底部的边框样…

视频采集到录制 - 采集到显示碰到一些难点

项目中用到相机后端处理&#xff0c;走了一些弯路&#xff0c;也遇到不少问题&#xff08;解决了不少问题&#xff09;&#xff0c;特意写下本文记录下当时点点滴滴。 讲一下背景&#xff0c;公司自研相机&#xff0c;用于一些高端场合&#xff0c;因此对后端处理也非常讲究 …

网络基本知识分享

目录 1.IP地址 2.端口号 3.协议 4.协议分层 5.Tcp/Ip五层网络模型 5.1 应用层 5.2 传输层 5.3 网络层 5.4 数据链路层 5.5 物理层 6.封装和分用 6.1 封装 6.1.1 应用层拿到数据 6.1.2 向下传递给传输层 6.1.3 继续向下传递给网络层 6.1.4 继续向下传递给数据链…

【自制视频课程】C++OpnecV基础35讲——第一章 前言

为什么要学习OpenCV&#xff1f; 首先&#xff0c;opencv是一个广泛使用的计算机视觉库&#xff0c;它提供了丰富的图像处理和计算机视觉算法&#xff0c;可以帮助我们快速地开发出高质量的图像处理应用程序&#xff1b; 其次&#xff0c;opencv是一个开源库&#xff0c;可以免…