Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >史上最轻量的 IDE……

史上最轻量的 IDE……

作者头像
良月柒
发布于 2023-12-13 04:45:59
发布于 2023-12-13 04:45:59
44700
代码可运行
举报
运行总次数:0
代码可运行

程序员的成长之路

互联网/程序员/技术/资料共享

阅读本文大概需要 8 分钟。

来自:InfoQ,译者 | Sambodhi 策划 | 褚杏娟

IDE(Integrated Development Environment,集成开发环境)是一种伟大的工具,可以使开发者的生活更轻松。我简直不敢想象,没有它们的工作会是什么样子。

但是,它们为我们提供的帮助并非无偿,而我也正遭受着这种后果。我使用 2019 年左右生产的、性能不佳的 MacBook Air ,在它上面运行我最喜欢的 IDE、Jetbrains 的 IntelliJ IDEA 社区版,但整个经历一直都不怎么愉快。

在这篇文章中,我想提出一个问题:IDE 是否真的需要这么重,以致于我们在数年前价值一千美元的笔记本电脑上几乎无法使用 IDE?

我遇到的问题

使用 IntelliJ 2022.3 的截图

IntelliJ 是一款非常出色的产品,对于专业开发来说,我根本不会考虑换成其他东西。因此,在这种情况下,拥有最好的笔记本电脑和最好的工具应该是优先考虑的。

在我这台拥有 64GB 内存和 10 个 CPU 内核的顶配 Mac M1 上,一切都感觉轻盈流畅(好吧,几乎一切……但在上面运行带有几个 Docker 容器Kubernetes,Mac M1 居然有点跑不动了!),所以我在工作中没有任何问题。

但当我在家里想做一个业余爱好项目时,为了不让工作与私人事务混在一起,我试图将它们严格分开,我宁愿选择我家那台性能较弱的笔记本电脑。

问题在于,仅仅在使用 IntelliJ 编写代码和运行测试一个小时左右之后,这台笔记本电脑就变得非常烫手了。风扇的噪音越来越大,最后实在让人讨厌了。

这还不算,当你几乎无法使用任何 IDE 功能的情况下对内容进行“索引”时,这个过程要花上整整一分钟,甚至更长的时间……而且那是在花费了相当长的时间之后,仅仅扫描要索引的东西!

我还有一台戴尔 XPS 13,运行的是 Linux,配置相当不错,但情况也是一样,而且风扇的噪音更大。

我可以毫无问题地看高清视频、听歌、上网冲浪和许多其他事情……但显然,在不是顶配的任何机器上编写代码,要求都太高了。

问题的出现和我所用的语言堆栈没有任何关系。

例如,我在 Java、Groovy 和 Dart(这些是我最近写得最多的编程语言)中遇到了或多或少相同的问题。我还注意到,在我使用 Kotlin 和 Java 的项目中,情况明显更糟。因此,问题看起来跟某种特定的语言或者插件没有关系。

尽管这样说有点伤人,但作为 JetBrains 及其工具的忠实拥趸,IntelliJ 似乎已经变得过重,无法在 2020 年初的笔记本电脑上正常运行,而这台笔记本电脑又不是很高端的产品。

我最近一直在向 Jetbrains 报告问题,在最后一次他们告诉我关闭一些插件,因为通常会有一个流氓插件导致问题……从某种意义上来说,这是对的,因为我已经禁用了我不太在意的插件(WASM、Scala、Makefile、Clojure-Kit、JMH、Gradianto),这个问题的确没有那么明显了……但它肯定还是存在的。

IntelliJ 替代方案

Jetbrains 正在开发 Fleet,这是 JetBrains 的一个新的、更轻的编辑器,虽然它看起来很有前途(它非常美观,考虑周全,非常时尚),但在我的笔记本电脑上仍然感觉不够轻……它毕竟使用了与 IntelliJ 相同的后端,这也许就是问题所在(不过这也是一个很大的优势,因为 IntelliJ 的大部分出色的功能也存在于 Fleet 中)……

我可能最终会转向它,但鉴于它仍然存在一些相当严重的问题(这很自然,目前还处于测试阶段),所以估计它还需要一段时间才能准备好投入使用。

当我在十年前使用 Eclipse 的时候,它是一个不错的 IDE,但不幸的是,它变得(我最近确实试了一下!)对用户相当不友好。我不想冒犯任何喜爱它的人,但现在我不会考虑重新使用这个工具了。更不用说,它对大多数非 JVM 语言,特别是较新语言的支持非常差,因为它已经失宠了相当长的一段时间(它曾一度是有商业头脑的语言设计者的首选 IDE)。

很遗憾,对我来说,Vim 是一个我从未想过要使用的工具。我知道有几个基于 VIM 的、新颖有趣的 IDE 项目,比如 neovim,考虑到其广泛的应用,这使它成为一个有吸引力的选择。但我偶然发现自己在旧编辑器之战中坚定地站在 Emacs 一边,正如我们将看到的那样。我想,有一天,我可能会跳到另一边去看看,但那一天并不会很快到来。

可能有人会问:为什么不是 VS Code?

好吧,我实际上已经安装了它,但我不能让自己使用它。在我看来,它的快捷键并不符合人体工学(而且我也懒得去定制它,因为接下来的原因),它仍然很重,基于 Electron,而且和其他的替代方案比起来,在使用我关心的语言时,我觉得它很慢。我承认 VS Code 看起来不错,也知道它是当今最流行的编辑器,但它就是不适合我。如果你觉得它足够好,那也可以了……但我肯定需要别的东西。

Emacs 来拯救?!

这就是为什么我目前正尝试重新使用 Emacs。

可能你不了解 Emacs,这是一款与 Vim 一样具有传奇色彩的文本编辑器,但是它所能做的事情要多得多。它存在的时间很可能比你活着的时间还长(当然比我还长),而且仍在继续发展!

它是 GNU 项目的一部分,可以说是早期自由和开源软件的最成功的例子之一。

与我尝试过的其他软件相比,Emacs 是非常轻量的(有趣的是,在它刚创建出来的时候,它被认为是一个重量级的软件……事情发生了怎样的变化)!最近一些开发给大多数编辑器带来了先进的 IDE 功能(当然,我说的是 LSP),今天,Emacs 是一个功能非常强大的 IDE。

它确实需要任何从未尝试过的人进行初始投资,因为你从一个现代编辑器中期待的大多数东西要么必须手动配置、要么内置,但以完全不同的方式工作。你还需要对 Lisp 有一点了解(Emacs 是基于它自己的 Lisp 方言 elisp 构建的),但如果你是那种甚至考虑像 Emacs 这样的东西可以彻底破解的人,这实际上也是乐趣的一部分。

我注意到,有更多“开箱即用”的 Emacs 发行版,如 Spacemacs 和 Doom Emacs,对于那些想要一个现代编辑器而不必手动配置一切的人来说,会感觉更舒服。

几年来,我已经成功地将 Emacs 配置为最基本的现代快捷键,这些快捷键在 90 年代后的大多数其他应用程序中都能使用(比如 Cmd+S 保存,Ctrl+Tab 切换缓冲区等等)。而且对我喜欢使用的所有语言(Java、Go、C、Rust、Dart、Groovy、Common Lisp 甚至 Zig)都有很好的支持,包括自动完成、内联文档、代码导航(转到定义、查找实现、返回 / 前进到上一个 / 下一个位置等)、项目范围内查找文件 / 类型 / 符号、一键测试运行器以及其他许多我认为是 IDE 基本功能的东西。

不过,我的 Emacs 设置(请随意取用其中的一些片段),仍不太符合我在 IntelliJ 中得到的开箱即用的效果。

例如,在 IntelliJ 中,配置想使用的 Java 版本是很容易的,不仅包括编译器,还包括你想坚持使用的 Java 标准 API 版本(因为现在 Java 发展很快,这一点很重要),如果你要使用的特性在你使用的版本上不可用,它会警告你,这点非常好。但在 Emacs 上,这样做就很有问题,因为按照我使用 lsp-java 的方式,配置 Java 项目需要通过 Eclipse 完成!

当我试图改变代码格式,并被迫下载 Eclipse 来改变它的默认规则时,我才痛苦地意识到这一点(它会强制删除换行符,让行填满所配置的整个最大宽度,把代码弄得一团糟——我真想知道,谁他妈会认为这是一个好的默认做法!)。

Emacs 还忽略了 IntelliJ 会给出的其他一些重要的、更高级的警告。比如当你检查一个在逻辑上不可能的条件时,它会发现那些令人震惊的逻辑错误……还有一些平凡的功能,我还没有费心去发现如何实现,比如自动修复警告(我真的很怀念 IntelliJ 的 Alt+Enter)和为诸如 System.out.println 和 public static void main 插入自定义代码片段(尽管在 Emacs 中这样做一点也不难,我最终会做到的!)。

另一方面,Emacs 有 Magit,这是一个令人惊叹的 Git 用户界面,感觉很棒。Org Mode 给文本文件带来了神奇的力量,甚至还有像 elfeed 这样的东西,它可以让你不离开编辑器就可以阅读你最喜欢的新闻(来自 RSS feed 和类似 HackerNews 和 Reddit 的东西)!

但 Emacs 真的更轻吗?

为了回答 Emacs 是否真的更轻的问题,我实际上在一个星期六的 24 小时内截图了我的笔记本电脑的电池使用情况,当时我花了一天的大部分时间在 IntelliJ 编码,然后第二天做了同样的事情,但是使用 Emacs (在同一个项目中工作,做非常类似的事情)。

尽管周日我花在编程上的时间比较少,但我认为这些图片让事情变得非常明显。

使用 Emacs 的情况,请注意,在一个美好的下午编码过程中,电池曲线出现了平滑的向下倾斜。

在早上使用 IntelliJ 的情况,你可以看到充满电后,电量被“凶猛吞噬”,在我晚上回到 Emacs 之前,电量就恢复了正常的使用模式。

并不是说我需要这个才知道 IntelliJ 真的非常耗电!我之所以知道是因为笔记本电脑总是在我使用它的时候明显变慢了。像工作区切换动画这样的体验变得极其糟糕。

虽然你可以在上面的截图看到,我充一次电就几乎可以在 Emacs 上呆上一整天,但使用 IntelliJ 我只花了半个上午就不得不插上充电器。

然而,我在意的主要问题是,风扇的声音太大,这虽然试图让 CPU 保持凉爽,但键盘变得太热,触摸起来很不舒服。这些因素加在一起,让我几乎不可能继续在我的小笔记本电脑上使用 IntelliJ,或者至少让我感到真的很不舒服。

最后的感想

很长一段时间以来,我一直想写一篇关于这个问题的文章。恐怕结果可能不是很有启发性。但我仍然认为我上面说的话需要说出来。

Emacs 比任何现代 IDE 都轻得多,同时仍然具有所有重要的特性。我希望 JetBrains 能听到我的心声,并把它放在心上、为此做点什么!也许,Fleet 就是解决办法?!

Emacs 很棒,但它基本上是用爱发电的志愿者在为其努力,因此很多东西感觉真的很不成熟,比如没有文档、难以使用等等。这很大程度上表明,只有一家大公司(或少数公司)支持一个产品时,用户才能真正得到一个完美的东西。但就目前而言,它似乎是我除专业用途外的最佳选择。我真的很高兴它的存在。

原文链接:https://renato.athaydes.com/posts/switching-from-heavyweight-ides-to-emacs.html

<END>

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
内容包含Java基础、JavaWeb、MySQL性能优化、JVM、锁、百万并发、消息队列、高性能缓存、反射、Spring全家桶原理、微服务、Zookeeper......等技术栈!
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-12-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员的成长之路 微信公众号,前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
JetBrains 发布下一代 IDE,无比轻量,几秒就能启动干活,IDEA 可以扔了。。
这两天,栈长又看个一个劲爆的消息,IntelliJ IDEA 开发者公司 JetBrains 正在开发下一代 IDE——Fleet。
Java技术栈
2021/12/02
1.6K0
JetBrains 发布下一代 IDE,无比轻量,几秒就能启动干活,IDEA 可以扔了。。
​干掉 VScode!JetBrains 官宣推出下一代轻量级 IDE!
作者:沉默王二 Java 程序员进阶之路:https://tobebetterjavaer.com
沉默王二
2022/11/18
1.1K0
​干掉 VScode!JetBrains 官宣推出下一代轻量级 IDE!
对 CIDER, Projectile, Prelude 作者 Bozhidar Batsov 的采访
我是 Bozhidar,我总体上喜欢计算机,尤其喜欢编程。我对 Emacs 的狂热热爱是举世闻名的。我在 GitHub 上花费了大量(空闲)时间,为各种开源 Ruby、Clojure 和 Emacs Lisp项目做出贡献。我最著名的开源项目是RuboCop (Ruby 的 linter/格式化程序)和CIDER ( Emacs 的 Clojure IDE)。
飞驰的西瓜
2022/12/14
6640
对 CIDER, Projectile, Prelude 作者 Bozhidar Batsov 的采访
JetBrains 官宣:“下一代 IDE 「Fleet」 登场!” 对标 VS Code?
刚刚,JetBrains 官方又宣布了一则重磅消息——正式发布全新“下一代 IDE”轻量编辑器 Fleet。
Guide哥
2021/12/01
9240
JetBrains 官宣:“下一代 IDE 「Fleet」 登场!” 对标 VS Code?
最新正版激活码 IDEA2022激活码注册码 免费使用 激活Code
最新全家桶激活码获取方法:https://docs.qq.com/doc/DS3hpVWFnQ2ZGVnhH
终码一生
2022/04/15
1.9K0
最新正版激活码 IDEA2022激活码注册码 免费使用 激活Code
对标 VS Code,JetBrains 的下一代 IDE :Fleet[通俗易懂]
昨天 (11月29日), JetBrains 网站上出现了一个全新的 IDE – Fleet
全栈程序员站长
2022/09/02
1.1K0
JetBrains 发布全新轻量编辑器 Fleet,号称“下一代 IDE”
11月29日,JetBrains 首席布道师 Hadi Hariri 在官方博客发文,正式宣布 Fleet 编辑器的到来。
崩天的勾玉
2021/12/20
9940
JetBrains 发布全新轻量编辑器 Fleet,号称“下一代 IDE”
Java之父接受Evrone专访:您需要的软件可靠性越高,静态类型语言的帮助就越大
James Gosling,通常被称为“Dr. Java”,是加拿大计算机科学家,最著名的是 Java 编程语言之父。他做了Java的原始设计,并实现了它的原始编译器和虚拟机。
码农小胖哥
2021/09/09
6150
另一种“推翻” VS Code 的尝试:JetBrains Fleet 现开放公测
整理|燕珊 当地时间 10 月 12 日,JetBrains 宣布其下一代 IDE——JetBrains Fleet 正式推出公共预览版,现已开放下载。 Fleet 是 JetBrains 的新 IDE 和轻量级代码编辑器,在去年 11 月首次面世,此后吸引了超过 13.7 万人报名参加内测。 JetBrains 技术布道师团队负责人 Hadi Hariri 在博客中说道: 今天我们宣布首次公共预览 Fleet,所有人都可以使用。我们向公众开放预览的原因有两个方面。 首先,我们认为让所有注册者再等下去
深度学习与Python
2023/03/29
9180
另一种“推翻” VS Code 的尝试:JetBrains Fleet 现开放公测
写给新手程序员的一封信
  首先,欢迎来到程序员的世界。在这个世界上,不是有很多人想创造软件并解决问题。你是一名hacker,属于那些愿意做一些有挑战性的事情的人。   “当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题。” – WhyTheLuckyStiff   对于下面的文字你不必完全接受,所有这些来自一个其貌不扬的程序员。我喜欢把事情做到最好,而不是对原来的东西修修补补。   仅仅是因为爱好开始做一些创新,这是一个很好的开始!如果你说“我要先学习一下再开始做”那么你永远不会真正开始。每个人都需要从某个地方开始,所
Crossin先生
2018/04/17
7010
Python编辑开发:pycharm pro中文免登陆账号「win/mac」
pycharm pro是一款强大的Python编辑开发工具,Python、JavaScript、CoffeeScript、类型记录、CSS、流行模板语言等提供了一流的支持。利用语言识别的代码完成、错误检测和即时代码修复,节省时间!
啾咪啾咪
2022/09/16
1.4K0
干掉IDEA:JetBrains推出下一代轻量级开发工具Fleet
JetBrains以 20 年的 IDE 开发经验为基础从头打造了号称下一代的开发工具Fleet,它使用了 IntelliJ 代码处理引擎,具有分布式 IDE 架构和重新设计的 UI。它的主要特性有:轻量级、智能、分布式、协作、多语言。非常重要的一点:开发Fleet的目的不是为了取代某个JetBrains旗下的工具,而是为了提供给用户更多的选择。
猿天地
2021/12/10
1.2K0
干掉IDEA:JetBrains推出下一代轻量级开发工具Fleet
顶配MacBook Pro 16上的M3 Max是什么水平?有人花56000元进行了评测
10 月 31 日,苹果在「史上最短发布会」上发布了新一代笔记本电脑和 Mac,与之而来的还有新一代 M3 芯片。
机器之心
2023/11/13
1.6K0
顶配MacBook Pro 16上的M3 Max是什么水平?有人花56000元进行了评测
最佳编辑器fleet来了?
如果说最近IT界出了什么大新闻,那一定是Jetbrains公司推出了新的编辑器Fleet,号称是下一代最佳编辑器,号称终结vscode的编辑器。
程序那些事儿
2023/03/07
1.4K0
最佳编辑器fleet来了?
编程语言的 IDE 支持
或许是出自于对编写编程语言的兴趣,又或许是对于创建 IDE/编辑器的兴趣,对于『IDE/编辑器是如何提供编程语言的支持』,我充满了兴趣。其中的一个主要原因是,这是每天我们打交道最多的工具,另外一个原因可能是,咦,我们怎么没有国产的 IDE(手动狗头)。
Phodal
2020/10/26
2.4K0
IntelliJ IDEA 2023.1 发布:新UI、支持Java 20、简化Git Commit、重新设计 “Run”
出品 | OSC开源社区(ID:oschina2013) IntelliJ IDEA 2023.1 现已发布。此版本包括对新 UI 的改进,根据从用户那里收到的反馈进行了彻底改造。此外还实现了性能增强,从而在打开项目时更快地导入 Maven 和更早地使用 IDE 功能。由于采用了 background commit checks,新版本提供了简化的 commit 过程。IntelliJ IDEA Ultimate 现在支持 Spring Security 匹配器和请求映射的导航。  其实 JetBrain
程序猿DD
2023/04/04
4K0
IntelliJ IDEA 2023.1 发布:新UI、支持Java 20、简化Git Commit、重新设计 “Run”
用了VS Code、IDEA等十几款编辑器后,我总结出优秀编辑器的特质
本文最初发布于 phaazon.net 网站,经原作者授权由 InfoQ 中文站翻译并分享。
深度学习与Python
2020/11/06
1.9K0
用了VS Code、IDEA等十几款编辑器后,我总结出优秀编辑器的特质
常见的IDE工具,你都接触过哪些?
在学习计算机的道路上,我相信每个人首先接触的是一些常用的编程工具,也就是我们所说的IDE了,以及各种各样的,付费又或者免费的工具软件,那么,作为一个资深程序员,我们多多少少需要认识各种各样的开发工具啦!
JanYork_简昀
2022/03/29
5.3K0
常见的IDE工具,你都接触过哪些?
JetBrains下一代IDE:Fleet 公共预览版发布
大家好,我是若川。持续组织了近一年的源码共读活动,感兴趣的可以 点此扫码加我微信 ruochuan12 参与,每周大家一起学习200行左右的源码,共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列。另外:目前建有江西|湖南|湖北籍前端群,可加我微信进群。
若川
2022/11/11
4710
JetBrains下一代IDE:Fleet 公共预览版发布
JetBrains:推出“新一代 IDE ”!VS Code 对手来了
近期,JetBrains 在官方博客宣布,推出一款有点不一样的轻量级编辑器 Fleet,并称其为“下一代 IDE”。
终码一生
2022/04/15
4970
JetBrains:推出“新一代 IDE ”!VS Code 对手来了
推荐阅读
相关推荐
JetBrains 发布下一代 IDE,无比轻量,几秒就能启动干活,IDEA 可以扔了。。
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验