GoLand2019.1更新内容

本文大部分翻译自官方更新文档,如有错误还行指出。
原文链接
GoLand在2019.3.27日更新了2019年的第一个版本。带来了如下的新功能:

支持Memory, CPU, Mutex, and Block profilers

file

对于Test或者Benchmark,点击左侧小箭头可以发现,多了几个选项。
GoLand通过集成CPU、Blocking、Memory和Mutex分析器扩展了它的工具支持。您可以从IDE开始分析您的应用程序,然后在一个专用的工具窗口中查看分析结果(查看|工具窗口|分析器)。 为了更好地理解代码中可能存在的性能问题,请按每种特定的探查器类型的可用指标对结果进行排序; 使用火焰图表,调用树和方法列表选项卡; 甚至导航到源代码来检查问题。 点击CPU Profile看下效果

支持采样时间和CPU时间

file

火焰图

支持鼠标滚轮缩放
file

调用关系图

file

方法列表

file

跳转

file

点击右键可以实现调到源码等操作。

实现

file

可以看出实际的命令和命令行手动输入是相同的,-test.cpuprofile,GoLand在解析的过程中做了工作,显示到IDE中。

智能单步调试

file

快捷键Shift+F7
借助新的调试器操作智能单步执行,调试一系列调用和嵌套方法调用变得更加容易。它允许您进入表达式中的任意调用,自动跳过您不感兴趣的方法。 对于这样一行代码
fmt.Printf("My name is %s, I am %d!", me.FullName(), me.Age())
你可以选择专门进入Age()。要调用Smart Step Into,请按Shift + F7或在“运行”菜单中选择“智能步入”。

新的重构

抽取interface

快捷键Ctrl+Alt+Shift+T

file

这个功能可帮助您根据所选类型快速创建新的接口。重构对话框显示了要传输到新接口的建议成员列表。 您可以为接口指定名称,并选择应放置它的文件,目录或包。 如果类型已经实现了任何接口,它将自动从列表中排除。

更强大的重命名功能

快捷键Shift+F6

file

重命名重构还有助于重命名接口中声明的方法。 重命名此类方法时,GoLand也会提供重命名它们的实现。“查找工具”窗口中的“重构预览”面板允许您查看当前重构将会产生什么影响,使用情况按它们在项目中的类型和位置分组。

Nil值分析

file

Go给了我们很多方法让零值变得有用,但是我们拥有的机会越多,就越容易陷入陷阱。全新的Nil值分析是一组代码检查,旨在即时检测变量在各种情况下是否具有零值或零值,并提醒您潜在的错误和问题。

调试器的改进

使用Goroutines替换threads

file

调试器输出现在显示goroutines而不是线程。 在它们之间切换,快速导航到标准Go库,并获得有关代码执行方式的更多信息。另外,使用Copy Stack(右键单击goroutine列表)将整个帧堆栈复制到剪贴板。

将int以二进制、十进制、十六进制显示

file

现在,您可以选择是否在调试器视图中以二进制、十进制或十六进制的形式显示int变量。右键单击一个变量,并在View as下选择适当的或首选的选项。

运行到鼠标所点击的位置

file

现在可以通过在调试时单击行号来运行“运行到光标”操作。 将鼠标悬停在一条线上以突出显示它。 单击行号以运行到光标。

支持minidumps

file

除了研究核心Core Dump之外,现在还可以在IDE中打开和分析windows minidumps。与Core Dump一样,选择Run | Open core Dump也很简单。

什么是Core Dump

Core的意思是内存, Dump的意思是扔出来, 堆出来.开发和使用Unix程序时, 有时程序莫名其妙的down了, 却没有任何的提示(有时候会提示core dumped). 这时候可以查看一下有没有形如core.进程号的文件生成, 这个文件便是操作系统把程序down掉时的内存内容扔出来生成的, 它可以做为调试程序的参考.core dump又叫核心转储, 当程序运行过程中发生异常, 程序异常退出时, 由操作系统把程序当前的内存状况存储在一个core文件中, 叫core dump.

使用sudo运行Go配置

现在可以使用sudo运行Run/Debug配置。 它允许您调试需要特权操作的应用程序作为用户。

新的主题

全新的UI主题问好!现在可以通过插件使用深紫色、青色和灰色主题。从2019.1开始,所有基于IntelliJ - IDEA的集成开发人员都可以获得所有用户界面元素的完全可定制的颜色。你可以随便改变任何东西的颜色!
可以尝试一下这个骚紫的主题。 安装方式:setting -> Plugins 中搜索Dark Purple

file

从IDE直接安装任何Go SDK

点击加号,选择Download
file

在GoLand中创建新项目时,现在可以选择下载并安装任何所需版本的SDK,包括Beta和RC版本。 您不必离开IDE或再次通过Web浏览。一旦安装了所选的SDK版本,GoLand就会在“事件日志”窗口中通知您。

更新 Go Modules

Vendor模式

file

Go Modules项目模板获得一个新的Vendoring mode复选框,它允许您使用vendor文件夹中的库,而不需要任何外部依赖关系或连接到Internet。 通过“首选项”|中的设置也可以使用相同的复选框 Go| Go Modules(vgo)。

完成从未导入过的模块

file

GoLand在您键入时为模块缓存中的所有模块提供代码完成建议。这意味着,即使一个模块从未在您的项目中被导入和使用,GoLand仍然知道它。

新的命名规则

声明操作的集合

快捷键Alt+Enter

file

我们添加了一组操作来帮助您按照自己的方式重新格式化声明:在声明中添加/删除括号,合并声明,将声明拆分为两组,逗号等等。

导出私有类型

file

新的导出意图操作允许导出私有函数、类型或字段,而无需在包之间切换。此外,GoLand现在解析对未导出符号的引用,但它仍然会通知您这是一个错误。

一些便利的变化

Sublime Text键映射

file

新的预配置Sublime Text键映射可在Preferences | Settings | Keymap中找到 。

最近弹出窗口

file

快捷键Ctrl+Shift+E
最近位置弹出窗口是一种在项目中导航的新方法。 它显示了最近访问/更改的代码位置列表,作为代码片段,在该位置之前和之后有几行。 要过滤结果,请开始键入并跳转匹配的代码段。

用于web开发的项目模板

file

用于Web开发的项目模板(如React App,React Native,HTML5 Boilerplate和Foundation)可从Welcome屏幕获得。

将“代码样式”设置导出到JSON

file

现在可以将代码样式设置导出为JSON。 这是在Preferences /Settings | Editor | Code Style下可用的导出到XML的已有选项。

版本控制改善

部分Git的“取消全部选中”复选框

file

部分Git提交的新的Uncheck all复选框(git add -p)允许您一次取消选中所有代码块,并允许您选择要提交的代码块。

FixupSquash Into操作

file

VCS中的“日志”选项卡获得FixupSquash Into操作,以创建具有FixupSquash信息。此外,您现在可以使用日志选项卡上的上下文菜单从提交中挑选选定的文件。

输入和输出提交的指示

file

如果您转到Preferences/Settings | Version Control | Git,并在分支弹出窗口中选择Mark Branches that have incoming/outgoing commits in the Branches popup,集成开发环境将指示传入和传出提交是否可用于单个分支。

注释中的作者姓名首字母

file

此外,IDE还允许您选择在VCS注释中显示作者的首字母或全名。

End

本人喜欢用goland进行Go语言开发,这次更新个人认为是鼠标党的又一福利,而且免去了复杂命令的记忆。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,214评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,307评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,543评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,221评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,224评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,007评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,313评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,956评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,441评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,925评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,018评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,685评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,234评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,240评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,464评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,467评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,762评论 2 345

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,089评论 1 32
  • 儿子这周回来变化还是挺大的,这些变化让妈妈开心不已,一定要好好感赏一下。 感赏儿子知道妈妈工作忙接他有点晚没有任何...
    拥抱生活岁月静好阅读 295评论 0 4
  • “爱”,是世间最美好的字眼,温润如玉,暖若春风。 但丁说,爱是美德的种子;罗曼·罗兰说,爱是生命的火焰;泰戈尔说,...
    麦芽糖的羊阅读 261评论 0 0
  • 晴方好,云影松,烟柳浓,花正红。 轻舟过,似游龙,芙蕖动,叶重重。 再见你,叹惊鸿,笑语中,日坠穷。 仲夏夜,繁星...
    木易舍予渊阅读 181评论 0 2