现代IDE是神奇的。 为什么这么多编码人员仍在使用Vim和Emacs?

发布于:2020-12-24 16:17:08

0

551

0

IDE Vim Emacs

开发人员是挑剔的一群。就像拒绝在湿草上行走的狗一样,似乎总是对改变常规有所抵触。我们喜欢我们长大的东西,无论是《星际迷航》的笑话,Vim还是Emacs。

这场战争的起源可以追溯到1980年代的Usenet小组,当时Vi和Emacs是用于编码的主要工具。众所周知,Emacs是“曲折的小段落迷宫,各有不同”(一种古老的程序员的笑话,源于游戏Colossal Cave Adventure),而Vim(及其之前的Vi)提供了箭头控制的键盘世界捷径。两者都用于编码,编辑和管理系统。而且,尽管我们讨厌这样说,但两者都达到了似乎都不想真正消失在夕阳下的地步。

多年来,Vim和Emacs用户之间的无休止战争一直持续引起人们的恶心。在这一点上,这不是一场战争,而是根深蒂固的习惯和对变革的顽强抵抗的抱怨。 Vim和Emacs的用户曾经互相other之以鼻,似乎已经实现了彼此的键绑定(他们实际上是在做这件事),以与任何现代IDE共同面对敌人。


Vim:高可用性IDE

许多Vim / Emacs用户之间的共识创造了一定时代的许多技术用户都会熟悉的画面。正如我父亲所证明的那样,如果Microsoft Zune的支持失效了,就可以使用它,如果它没有破裂的话。。。尽管市场上有很多IDE,但是如果您不必使用一个,则没有理由使用它。这是我仍然使用记事本撰写而不是使用一些精美的文本编辑器或CMS工具的原因。它就是有效的。

“ Vim用户John Carter(非Mars)说:“我之所以避免使用IDE是因为十年前我进入Vim时就需要额外的许可。 “从那以后,这就成为了'代码速度'的问题。”如果我从一个新的IDE开始,甚至切换到Emacs之类的东西,我都会放慢速度。在情感和职业层面上,我真的买不起。转向新的编辑器需要精力。我没有那种能量。我找到了工作,一个家庭和其他项目。看起来很愚蠢,但是这种枢纽需要能量。”

Vim始终可用。任何Linux机器都有它。 Vim占用空间小,延迟低,启动速度快,可提供更大的屏幕空间,可自定义,最重要的是,一旦肌肉记忆已根深蒂固,几乎不可能切换到其他内容。

Carter继续说:“我们的手指通常是思考代码和将其添加到应用程序之间的瓶颈,因此人们希望优化快捷方式。”

以Atom为例,它是最受欢迎的IDE /编辑器之一。 Atom是一个免费的开放源代码文本编辑器,声称其“可被核心攻击”,并允许进行多种自定义。它具有跨平台编辑,四个UI,八个语法主题,并与HTML,JavaScript,CSS和Node.js集成。最重要的是,对于过去五年没有开始编码的用户,有一个Vim模式软件包。这导致用户从字面上将Atom转换为Vim,无法放任过去,不愿完全拥抱代码编辑的未来。

大多数IDE会创建开发人员可以创建的整个世界,但是创建需要配置。调整世界,扮演上帝,创建快捷方式和热键,习惯不同的命令结构和UI需要花费时间。尽管编码人员可以坐在任何终端上并开始在Vim中工作,但对于任何IDE而言,情况并非如此。此外,IDE通常是完成任务的太多工具。与大量的编程巨兽相比,简单的文本编辑器为初级程序员提供了更好的服务。

由于编码人员的职业发展所依靠的是专业技能,而不是签署薪水的人,因此无论公司喜欢哪种IDE,始终可以使用恒定的代码编辑器。可以将其视为故意违抗行为,或者只是个人喜好,但文本编辑器始终存在。

BSD跑步者Tim Chase说:“从根本上讲,这是普遍存在的。” “我可以坐在任何类似Unix的终端(Linux,BSD,Solaris等)上,键入'vi'(或'ed'),并且具有强大的编辑器,即使我的终端配置不正确(例如,发送)某些键或组合键),而无需安装任何东西。”


熟悉而舒适

正是这种舒适感使仍在使用Vim或Emacs的用户与使用IDE的人们之间的战争一直持续到很长一段时间。是妈妈的意粉(或在这里插入您的舒适食物)。 Vim和Emacs总是在那里为您提供舒适,平静和乐于助人的服务。 IDE是一种奇怪的新食物,其中包含各种奇特的食材,需要用叉子进行坚韧不理性的采摘,才能以您想要的方式获得它。断开是显而易见的,并且在这一点上是可以理解的。

尽管也许切换到完整的IDE并不像听起来那样令人难以忍受,但开发人员对此还是有些颤栗。有人最终意识到,为了完成这项工作,您会使用可用的工具来完成这项工作,无论这些工具可能是什么。

“我说,只要能帮助您完成工作,就使用它,”汤姆·汉克斯(Tom Hanks)并非如此。 “有时候,更现代的IDE可能会成为障碍,而有时它们是必不可少的。例如,当与项目文件关联的文件过多时,Visual Studio就会出现严重的性能问题。整个应用程序变得非常缓慢。几年前,当我使用PyCharm进行Python开发时,有时会变得“困惑”,并对其语法分析给出不好的反馈。基本上,这使您认为自己犯了一个错误,而实际上一切都很好。

也就是说,如果您不熟悉编程,那么现代化的IDE可能会有所帮助。借助代码完成功能,Git控制甚至自动部署系统,现代IDE成为了瑞士军刀的功能。而且,像大多数瑞士军刀一样,您不必使用所有功能即可找到有用的功能,尤其是在刚起步的情况下。例如,我们许多人不会使用打孔器或牙签,但很高兴知道它在那里。

在Vim,Emacs和IDE之间的编码员屏幕背后发生的任何战争,实际上都没有关系。无论Vim和Emacs在现代开发环境中过时的地位,它都不会很快到位。 IDE将不断改进,不断启动,并为不断增长的年轻开发人员群体提供服务,他们从未被迫在Vim或Emacs环境中蓬勃发展。对于选择首选程序的任何人来说,最好的建议就是仅使用可用的工具来完成工作。或者,正如20世纪流行的诗人TLC如此巧妙地宣称:“不要去追逐瀑布,请坚持使用您惯用的Vims和Emacs。”