前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >牛逼!JetBrains 又出了一款编程神器!协同编程!

牛逼!JetBrains 又出了一款编程神器!协同编程!

作者头像
终码一生
发布2022-04-14 15:25:01
5770
发布2022-04-14 15:25:01
举报
文章被收录于专栏:终码一生终码一生

前言

我很喜欢一些在线协同编辑的文档工具:创建一个文档,把链接分享出去, 别人打开就可以直接编辑。

这时候我会观察到别人在文档中的行为:输入文字、删除文字,当然我的行为也可以被别人实时看到——这种协同工作的体验实在非常美妙。

我不由地想到,如果在IDE中也实现类似的功能,码农的生活将会有趣得多!比如:

远程协助

程序员何小痩编程中遇到一个问题,需要张大胖远程帮忙,何小痩在家里共享一下自己的IDE, 然后张大胖就可以在其中浏览代码、设置断点、Debug、看日志......

一边Debug一边通过语音、视频讲解自己的思路,很快,问题解决, 何小痩把整个过程看得清清楚楚。

一起编程

张大胖和何小痩不用坐在一起,张大胖只要把自己的IDE分享出去,何小痩就能看到并且控制,这样两人交替着做“领航员”(思考、提醒)和“驾驶员”(写代码),时不时通过语音和视频交流,高效地完成任务。

代码讲解

张大胖完成了核心功能的开发,需要给小组的人远程做讲解,他不用告诉大家说:“请打开Parser.java,定位到第129行”, 他只需要把自己的IDE共享给大家,每个人都能看到他在IDE中用快捷键打开类,定位到函数,在不同的类和函数之间轻松转移,效率极高。

如果有这样的IDE,那简直是太棒了!尤其是在疫情之下,大家都进入了远程工作的时候。

有人可能要说了,现在的工具——共享桌面——也能做到啊!但是由于这些工具共享的是整个桌面,而不是细粒度的IDE, 效率很低,网速稍慢就会卡顿,断线,体验实在酸爽。

多么美妙

原来只是这么想一想,没想到真有IDE实现了这个功能, 这就是著名的IDE开发商JetBrains 提供的 Code With Me !

远程协作和实时开发都将能够在IDE中完成,仅靠IDE自身远程桌面开发的时代要来了。

现在只要你用的是2020.02版本以上,便能在IDE中完成开发、调试、测试、音频视频聊天实时沟通等多种操作,再也不需要通过代码片段来猜测Bug出在哪里,请求他人看看代码,将能够有更直接的方式,使用IDE自身远程桌面开发的时代要来了!

好了, 先来感受一下它最最基本的协同编辑能力:

Host (主人)相当于共享IDE的那一方, GUEST(客人) 相当于接入主人IDE的那一方。

可以看出所有的改动即时展示在对方的IDE中, 就像两个人在共享编辑文档一样。

这么有趣的功能,是不是迫不及待想要尝试一下了?

code with me

安装和使用

首先你可以更新IDEA到最新版(2020.1以上支持该功能),然后,在 IDE 的页面进入File(Ctrl + Alt + C) > Settings > Plugins > Marketplace,然后输入关键字 code with me,点击Install,等待安装,重启IDE。

安装好之后,右上角会多出一个选项:

只要选择“启用访问并复制邀请链接”就行, 生成链接后,会自动将链接复制到剪贴板中,这时候,我们就可以将链接发给其他人。

注意,这是个HTTP的链接, 把这个链接发给其他同事,就相当于共享你的IDE了, 别人只要点击,就会出现这个界面:

即使同事的机器上没有安装IDEA,只要他点击“Download and Launch”就可以运行一个叫做“Code With Me Guest”的程序来查看你的IDE的内容。

如果你同事已经有了支持这个功能的IDEA, 还可以直接加入其他人的共享IDE。

提示:因为有墙的原因,所以在访问 JetBrains 服务器的时候,极大概率会出现 Connection timeout,需要挂梯子才能达到舒适体验

至此,就可以愉快地玩起来了,就是这么简单, 和那些在线协作的文档几乎是一样的。

权限设置

Code With Me 有这么几个重要的特性:

1. “客人”看到的是一个完完整整的IDE, 而不是一个简单的编辑器

客人可以使用代码自动补全、智能导航、重构、调试套件和内置终端,还能够运行、Debug程序

当然,能干什么事情是分享IDE的“主人”来决定的:

在点击生成链接时,从下图我们可以看到,有预设几个不同的权限,文件编辑、终端执行、命令执行、是否自动开启语音通话,Host可以隐藏某个文件或文件夹,语言通话默认开启,我们可以通过去掉勾选来关闭它,有一个问题是允许复制只读权限下的代码。具体开放什么样的权限,我们可以控制,这样可以保证我们代码的安全性。

  • Read-only:权限皆为只读,属于安全的模式,协助者只能浏览
  • Edit files:可编辑文件,无法使用终端和执行命令
  • Full access:拥有全部权限,理应只接受被信任的用户
  • Custom:可自定义以上权限

2. 可以有多个“客人”接入到共享的IDE

每个客人都可以浏览/编辑 不同的文件。

作为“主人”,可以随时“跳转”到每个“客人”正在浏览/编辑的文件。

“主人”也可以强制所有人“跟随”自己的屏幕, 这对于代码讲解的场景特别合适。

3. 支持语音和视频

一边码字,一边和同事聊天,就像在身边一样,是不是很爽?他也支持音视频文本实时进行聊天,可以替代我们平常用社交软件来进行沟通的场景,但不足的是聊天不支持图片、视频等大文件

4. Intellij Client

你是不是在想,如果我没带电脑,或者我的IDE已经关了,如何让别人帮助我呢?其实他也已经帮我们考虑了。

当我们断开连接时,会返回至该界面,我们将它固定在任务栏,按照我们的期许,当需要进行远程协助时,应该要能够直接点击任务栏上的图标,便能进入连接界面,而不是每次都需要先启动IDE才能加入他人链接。

当我们退出IDE,点击之后,它提示“No JVM installation found. Please install a 64-bit JDK. If you already hava a JDK installed, define a JAVA_HOME variable in Computer > System Properties > System Settings > Environment Variabled.”,根据这个提示,我们知道是缺少了Java SDK,但不知道具体最低哪个版本,经过小编测试,至少需要Java SDK 11版本以上,才能正常打开启动

当我们安装Java SDK 11+以后,可以看到,能够正常启动,以后,即使不打开IDE,也能进行远程协助了,是不是很Nice!

总结

Code With Me是JetBrains的一项新型协作开发服务,它可以让你在不依赖第三方远程工具和社交软件的前提下,仅靠彼此使用的开发软件,便能达到远程协作、及时沟通、实时开发的效果。

它打破了固有的IDE只能用来进行软件开发的观念,将远程功能和音视频聊天功能集成进了IDE官方插件,这意味着,只要连接稳定和内置的终端支持,我们就可以远程在命令行执行对系统的任意操作,包括部署、运维等等。

理想情况下,只要Host主机配置足够高,便能支撑足够多的Guest同时进行项目开发、测试、调试,而且能够通过权限配置达到互不影响。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-05-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 终码一生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装和使用
    • 权限设置
      • 4. Intellij Client
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档