首先声明:个人认为
1:不同的开发需求,必定有不同的最优选择,一个项目中有多个需求,那么多个分模块的解决方案就是必然的最优解。多个项目更是如此。
2:不同的开发工具有其不同的优点。取长补短就可以了。不比纠结谁是神器,但是应该看到基本的程序开发的发展过去和未来趋向。
3:一个工具征服天下问题的巨无霸还没有产生,有大众,有小众是一种必然。选择最优,最合适。不要死脑筋。
4:对于编辑器给开发人员带来的不便利我了解,但是给开发人员带来的对于程序的更深的记忆和更强的理解非常有效。学习的时候,坚决支持非IDE操作。
以下是网络摘录片段(比较杂乱,以后再整理):
虚心请教 vim/emacs 和一般 ide 的相关问题
先表个态,我不是希望争论两者优劣,而是想讨论一些实际的问题。看过了原来
的一些讨论,感到这里必有能手,所以虚心请教。我认为同行,尤其是软件这一
行,应当互相理解,其实无非都是想日子好过一些。
---我认为极端支持 IDE 的人,应当改变一下态度,包容一些,其实作程序的人
都是聪明的,容易接受新事物的,在微软的平台下我们不是年复一年的都在学习
新东西吗?又何况 vim 这些老古董了,估计真想拿下的话绝对不是问题,而是
暂时觉得用不上倒是真的。可即使目前用不上呢,也不妨接纳吸收,因为存在既
是合理的,只是自我的工作环境没有到需要它的地步。
---另外我想那些 *nix 高手们,其实你们真应该理解大部分 ms 平台的程序员
,平台之争我不喜欢讨论,但人都要吃饭的。微软哲学毕竟赢得了大部分人的认
同(如果您较真的话,那我只能说在中国,在bj,至少在我工作的环境,全部
都用 win)。虽然精英总是少数人,但是仍然有人要为大众服务不是吗?
大部分程序员工作在 ms 平台下,这个平台的 ide 又可以顺畅的完成任务。那
么他们对 vim/emacs 的质疑是可以理解的,但他们之中还是有人希望了解不是
吗,如果你们能给一些实质性建议,才有利于好东西的推广。
---我刚接触 emacs ,不了解细节,但大概理解它的机制,我的理解是,emacs
是以编辑器为核心的开发式工作环境。以程序员的视角来看,就是完全定制自己
的 "IDE",只要了解 lisp,就可以做任何想要的事。
---我不需要开发跨平台的软件,不过我已经感到一些问题,它们可能导致我希
望定制 ide。
1 几大经典仍然是 ms 平台的主导,.Net 要用,vc++ 要用,过气的 delphi 仍
然要用。(具体解释放在最后)。而这么多工具,vc 就有 6.0, 2003, 2005,
2008, delphi 有 7, 2007, 2009
在不同的 IDE 工作习惯之间切换,确实不是一种舒适的生活。另外兼容性也有
问题,比如,老的工程由于没有用 makefile,我就必须保留当时开发它的 IDE
,或者就选择转换到高版本 IDE,大项目通常不敢随便这样干(主要是 vc )。
2 IDE 本身缺陷,delphi 界面,和热键问题,vs 还需要个助手,而且天知道他们以后还
会做出些什么,是好还是坏。我确实不想让人牵着鼻子走。
如果使用 emacs,有几个问题必须考虑:
-- 资源编辑器,vc++的,c#的,delphi的,都需要资源编辑,而且这正是他们
的一大特色。您如果非说我们工作肤浅,我说我不是,我可以完全手写核心代码
,但是总要有人去做界面,我不能因为我的便利,而强制他人放弃好用的 GUI
设计器,事件处理影射向导等。除非给他们提供更好的解决方案。否则,他们还
是会用 IDE。
帮我想想,有什么解决办法,还是说干脆让界面层的人仍然使用 IDE。
-- 名称自动提示能做到什么程度?.Net 类库如果出了新版本,能马上支持吗?
delphi 的 vcl 有吗?这一点真的不了解。
本来感到有很多问题,一时想不起来,先这样了,也够长的了,希望能给我些正面意见。
解释一下为什么用那么多工具,当然是个人见解。
新兴的.Net是简单易用,可目前的硬件下,却是以用户的性能损失换取程序员的舒适,但我认为是开发应用层的首选。为什么?理由很多,开发快,培训程序员快(我们小企业只能自我培养程序员),而用户嘛,不会太受影响,我们不会对个人用户的产品使用 .Net,企业用户就无所谓了。
有时候不是你想选择什么,而是别无选择。
c++ 用途不用置疑,这是根本,其他玩具束手无策时,只看它表演了。
如果想开发民品,或者自己用的软件,恐怕就不愿意背着 .net 了。不过界面开发 delphi 胜 vc 一筹,vcl 架构也优于 mfc 许多,所以也算个压箱底工具了。
我接触计算机编程20年了,前十年里几乎都是以IDE为主,后十年里就引入了很多非IDE的东西,vim是我最后最常用的选择,当然偶尔也结合一下SourceInsight。对这个问题我的看法是:
1。不是所有程序员都需要开发界面程序,我所知道的80%的程序员开发程序是可以不要界面的。(一个项目组,平均五个人中有一个人开发界面就足够。)
2。不是所有界面都可以用IDE搞出来的,大多数嵌入式终端的界面都绝无可能用IDE搞,而嵌入式开发和金融两个领域是程序员的主要去向。金融领域几乎已经被Java垄断,我做过三年的金融行业软件开发加上七年的嵌入式,可我仍然发现,绝大多数软件开发工作根本不涉及界面。“业务流程”才是一个程序员最关注的东西。
3。使用编辑器导向的程序员有个基本思想:没有必要强迫所有人都使用相同的平台,只要能写出多快好省代码的编辑器,就是好编辑器,如果VC这个IDE能够使你高效的完成任务,那么你当然可以坚持使用VC,可我周围的情形是:绝大多数人抛弃了VC,大部分转向了SourceInsight,少部分转向了vim,极少部分转向了emacs,转向emacs的恰好是个在Linux下开发界面的人,显然emacs的IDE功能要强过vim。
SourceInsight是个完全没有编译和调试功能的,仅仅只有写代码察看代码功能的编辑器,然而它在程序员中的普及率是很恐怖的,这个windows程序几乎无可争议的击败了windows下的所有C编辑器和IDE。如果楼主真的看清楚这一点,又当如何设想?
Windows下之所以IDE横行,是因为人们几乎只用C++这种单一的,面向对象的开发模式适合引入IDE,(当然其它的语言也有,都是面向对象的)。
纯C代码这种非面向对象的,可以在windows下开发,但是大多都不是为windows平台设计的。一部分人会忽略它。
C/Python/Shell 等脚本级/嵌入级与函数级的不同语言混合式编程,没有IDE能够很好的支持这种模式。
事实上VC的编辑器功能比vim逊色太多,因此我即使在windows下也是把vim嵌入到vc中使用的。
我给人们的建议是:不要使用强迫症的方法去学习编辑器,如果VC能够满足你的要求,那么就好好的使用VC,即使开发Linux程序也可以,到哪天你觉得VC不能满足要求的时候再切换emacs/vim也不迟。——不论是Unix高手还是低手,都没有必要也没有义务强迫他人改用vim/emacs。这纯粹是一个个人选择。让20%的开发界面的人继续使用IDE,让80%的不开发界面的程序员使用一个更好的编辑器,这不是各取所需么?
可惜我是做 windows 平台的,必须找到 vc,delphi,.net 的界面编辑器。
特别是.NET这样已经综合框架的平台和支持面向对象的反射机制的功能等。
更何况,VIM和Emacs不能和这些语言的版本同步更新,需要很久才有人开发出配套的程序,甚至开发不出来和有却缺陷。
我对 emacs 比较乐观。
我在中国哦,也在bj,我们的开发工作基本都是ssh到开发机上进行的。 windows机是用来当终端用的
我们也有开发windos平台软件的人, 他们用的是eclipse。
成本上的原因可以这么解释:不同的思路奠定了不同的开发模式。
Linux的传统开发模式奠定了它可以这样分工。
例如你要开发一个软件,它分成A,B,C,D,E五个功能,每个功能都需要界面,需要访问外设,需要接收用户输入,需要业务,需要通讯。
如果是个windows程序经理或许会按ABCDE分成五个模块,给五个人做,这样每个人的工作是比较独立,每个功能的实现比较独立,但每个人都需要界面,需要访问硬件,需要访问输入输出,需要访问网络,需要处理业务流程等等。
但如果是个Linux程序经理或许会这样分,界面,硬件外设,输入输出,业务流程,通讯服务。这样五个人做,只有一个人需要界面,只有一个人需要硬件外设,只有一个人需要输出输入,只有一个人需要进行网络通讯,只有一个人需要处理业务流程。但是每个独立的功能都需要所有人的联合才能完成。
所以说,架构设计师的思想不转变,就不可能按照Linux的形式去编程,不按照这种形式去编程,就不可能实现只有极少数人需要访问界面。
使用IDE而不是VIM/EMACS主要是GUI IDE更加好看用起来更加顺手(比如热键等),而且VIM/EMACS并非马上可用而且配置麻烦功能弱。
另外,很多IDE不好之处在于和目标相绑定,这些IDE往往只能用来编写特定的程序。
一个可以很容易做配置的通用IDE来说确实是一个很不错的选择,当然,这样的东西和VIM/EMACS是同样的道理了;但是它的好处在于,好看,而且热键更加顺手。
VIM/EMACS适用于20年前的人,那时UI还不像现在这么标准化。
神速是一方面,你可以完全定制它是另一方面。
而对工具丰富的定制权是linux软件的文化和优点之一。如果你非得跟你熟悉的工具比个高下甚至一定要让它全部取胜才用的话,那lz,建议你不要用vim了。因为它只是编辑器,不是集成开发环境,既然你用eclipse,用vs习惯了,干嘛要花额外的实践来学习你个你不愿去承认它长处的工具。
我是软件工程师,也是写些研究性的程序。但是自从我接触linux,接触vim后,就抛弃了ide。
在我自己的定制下(包括vim脚本的方方面面),我的vim已经成了我最好的开发环境了。
至于它的硬伤。也是有得,就象前面说的,它只是编辑器,其语法高亮和代码只能提示都是基于纯语法的,而不是语义。但是它的语法很漂亮,在定制语法的时候我学会了正则表达式。如够ctags的话,提示会很乱,但是vim给了我充分的选择权。
最后再啰嗦一句,vim强在它的完全定制的plugin,定制的好,速度才会快,高手的vim肯定都是自己定制过的。你试着定制vs看看,eclipse的插件你除了等待其他人为你设计外,你还能做什么(看起来lz不像是用java的,你应该不会自己去开发eclipse插件的吧)。
确实是这样,我觉得从IDE来说VC确实相当的好了,vim加个各种插件也不可能做到像VC那么好,VIM只是一个编辑器,无论是从浏览、移动、编辑角度来说,速度都非常的快,你去用用codecomplete插件,C语言的那些语句都只简单敲两个字母就帮你自动写好,很爽!
引用 18 楼 mage1982 的回复:
vim+ctags+taglist+vimgdb
感觉又做了个IDE,只不过是另一个VC,另一个eclipse啊。。。
linux可以玩魔兽的,安装cedega就行。
windows也有vim,用vim不见得要迁移到linux下
关于vim神速的前提是,它纯键盘操作,高级IDE却不行。
键盘操作的本质原因是所有的操作都可以自由映射到任意快捷键上,
而不是像IDE要样依赖工具按钮和菜单。
由vim改装的ide与普通ide的区别之一就在这里。
当然vim也允许鼠标操作的。
用普通IDE的操作方式来理解它的神速是没意义的。
看了37楼的视频,没什么了不起的。
不外乎函数补完啥的,况且快捷键的使用根本没表现出来。
vi 就相当于win的记事本,
vim 就相当于win的记事本,notepad++,ultraedit。
vim的很多功能 还是不如linux界的 emacs
vi,vim,emacs 都是linux下发展的程序,对于win,功能没什么优势。
优势是插件和定制!定制好了功能和notepad++,ultraedit也差不多,毕竟这两个软件很强
eclipse用熟了一样很快的。
首先,为什么是IDE而不是某某文本编辑器呢?因为:
- 学习曲线过于陡峭的不考虑,哥没时间跟你瞎霍霍
- 开发效率很重要,所以只有单纯文本编辑、而没有周边工具集成的的不考虑
所以,vim排除、textmate之类的也排除。剩下就是Emacs、Eclipse、NetBeans和Intellij IDEA,接下来就说说前三个为什么排除,最后一个为什么胜出。
因为Vi是编辑器,而Emacs是“OS”呀。对于大多说人来说,有编辑功能就足够了
感觉用emacs的人多少都懂一些vim吧。
我个人用emacs写程序,其他的编辑任务都是用vim完成的。
当然,还有很多非编辑任务是用emacs完成的。
在公司只有我一个人用Emacs,其他都是eclipse党。
刚进公司的时候就被人围观了一把,丢下一句这么古老的的东西还用啊。
这个东西有什么能做到而eclipse能做不到的?
我说balabala,
别人会说我为什么要在编辑器上支持这些?
......
所以不要强迫别人做什么选择吧,自己觉得好就行。
如果用习惯了Emacs,再换其他工具真的是很痛苦的。
现在我大部分时间还是用,
而且我发现他们用eclipse
习惯了自己的快捷键 用起来也非常地有效率。。
之前在网上看过一个教你在eclipse下用emacs编辑的,有点麻烦,不过以后真要用eclipse不可的时候可以尝试一下。。
国内确实很有意思,vim普及率很高。我朋友和同事里用emacs的一只手可以数过来,在前一家公司里,就我知道的,我是唯一一个用emacs的。。。
坦白说,vim最大优势就是原生的文本操作能力
emacs,最大优点比楼上这个还容易扩展。
至于快捷键,我的emacs里不常用的功能,全部用m-x搞定。vim基本都用快捷键。。。。。反正丫有好几个model。。。。
不过vim里面那个repeat last modification的功能确实非常好用。。。。
以前纠结emacs启动太慢,又不习惯vim的键设置。为了修改一点点配置文件就用emacs显然有些大财小用。后来接触了几个月的vim后(公司不能用emacs),现在小文件都是修改都是用vim的了。真正写代码的话才会用到emacs。感觉也不错。
- 2012-04-25 23:56:06 包子Beta
我觉得eclipse的问题在于有些emacs上的一些不错功能没有。
比如alt + ;注释代码,TAB自动修改缩进格式,这些经常用的东西没有。
*********************************
两个例子都不行
eclipse可以ctrl+/注释,可以tab自动修改缩进,还可以选中语句块快捷键自动format
反而是eclipse的refactor功能,emacs估计是不可能有了
学两个都用,但是上班后一般都在公司远端几十台server工作,默认是vim。
一。 不可能每用一台新server就去装emacs。
二。 有无数次我share box给老美老印用,他们都在vim上写。我在打开emacs,和他们交流很不方便。
现在基本放弃emacs了。其实他们两个对我来说都够用了。工具而已,怎么工作效率高就用什么。也许以后去都用emacs的公司,就改用emacs了。
- 上学两个都用,但是上班后一般都在公司远端几十台server工作,默认是vim。一。 不可能每用一台 上学两个都用,但是上班后一般都在公司远端几十台server工作,默认是vim。一。 不可能每用一台新server就去装emacs。二。 有无数次我share box给老美老印用,他们都在vim上写。我在打开emacs,和他们交流很不方便。现在基本放弃emacs了。其实他们两个对我来说都够用了。工具而已,怎么工作效率高就用什么。也许以后去都用emacs的公司,就改用emacs了。 ... hk
have you tried tramp? emacs is not only a tool for pogrammers
回应 删除
have you tried tramp? emacs is not only a tool for pogrammers have you tried tramp? emacs is not only a tool for pogrammers Hongbo Zhang
确实没有用过tramp,看了一下,发现很强,周末就试用一下。谢谢推荐~~~
我的经理曾经是emacs党,后来他也变成vim党了,就是因为不可能在每台服务器都配置好自己的emacs环境。。我觉得这就是vim/emacs用户数不平衡的最大原因了。
Eclipse 强大的扩展能力和emacs一脉相承。只是Eclipse中的Editor效率还是太低,如果能够做到vi或者emacs的水平,那就无敌了。
但是Eclipse的扩展能力和开源方面还是有缺陷的。Emacs的IDE基础没有Eclipse操作更方便。不过可以集成。Vs本身是用于.NET平台开发的。Windows下的产品。是没有错的。
关于界面设计和程序之间的链接,找到,元数据,等等。Emacs可能都做不到。这一点要注意。需要的时候用。
做其他开发如果有更好的工具,那么不如就使用其他的。每个工具都有其应用的用处。
告别Eclipse
2008-12-07 12:57
毫无疑问,对于Java开发者来说,Eclipse是一个非常好的IDE,但IDE的一些弱点是永远无法摆脱的:大内存的占用、缓慢的启动速度、迷宫一样让人无法究尽的各种新功能,这些都会让一个编程开发人员时常感到很深的挫折感:每次使用时都让你意识到自己只在使用它百分之一的功能,这种无助的感觉让人绝望。它在简化了很多开发流程的同时也带来了更多的复杂性:你基本上不需要了解像Ant这样的Java Build工具,但当你把工程放到只支持命令行的Linux服务器上就会无比茫然,因为你已经习惯于依赖Eclipse幕后为你打理着一切。
下面是用Emacs编辑Java程序的截图:
|
linux谁会在服务器下开发啊, eclipse又有linux版本的,感觉不用eclipse的开发理由太牵强了
师兄告别Eclipse过于轻率了吧,Eclipse入门难度绝对比Emacs低的多,我不认为它会让编程开发人员时常感到很深的挫折,开始使用Eclipse只要记住常用的快捷键,就能很流畅的进行编程了。Eclipse的透视图很容易让用户找到自己要用的功能,只要记住如何打开一个关闭的view和最笨的reset perspective就不会感到茫然。工程放到只支持命令行的Linux服务器上,我想只需要打好.jar,.war包放上去就好了,不至于直接在命令行的服务器开发吧。ant脚本可以使用Eclipse自己生成的然后很少改动就可以定制成自己想要的了吧。
最近试了试Emacs的JDEE,感觉有很多问题,支持不够成熟。所以最后还是回到Eclipse这样的IDE。
eclipse就像一个大号的emacs
eclipse越发像emacs了,而且可能表现的会比emacs更出色,就像emacs一样,
eclipse也是开源的、也提供插件支持、也跨平台,可以开发java c c++
php等,可以调试脚本,可集成cvs,uml,而且,编辑方式也可以多样化,如
果你喜欢emacs的编辑方式,那么通过设定你就可以在eclipse里用习惯的
emacs来进行编辑,既然连emacs都可以模拟,还有什么是它不可以做的?有
人说在emacs里可以听mp3,我想只要eclipse愿意,实现这样一个简单调用第
三方插件的功能应该是不在话用。而在程序开发方面,尤其在java开发方面,
eclipse表现优异,emacs就相形见绌(这也是因emacs的java开发插件较少所
致),而在c的开发上,emacs表现优异,但eclipse却也并不输于它。它们二
者都是做为一个平台,而不是作为一个集成开发环境而存在的,可配置性都
较强,而且如果你愿意,可以修改源码,以适应自己的需要,当然,对于庞
大的源码来说,有时候找到要修改的地方并进行修改也并不一定是件容易的
事。不管怎么说,开源对于人们的尊重总比不开源要好,一切都在阳光下。
其实 vim 的用户数更高是毫无疑问的。emacs 的特性决定了它必然是个小众的东西。
另一方面,环境也是促使的原因,我当年用 vi,就是因为全办公室的人只有我一个不会用 vi,那么,不学 vi 都对不起人,所以就 vi 了。
至于 emacs ,毫无疑问他是个好东西。但是,最好的入门方式其实是有一个专家带领,如果身边找不到这样的人,那么要入门其实是个相当困难的事情。
Emacs并不完美,我认为有以下缺憾:
1. 没有多线程支持
2. Elisp不是一个很好的语言,很慢
3. 同一个文件中使用多个模式很难用(PHP + HTML + JavaScript)
4. 对支持的编程语言没有语义支持,所以没有智能提示,重构等功能
但是,总体而言我还是喜欢Emacs。也许将来Emacs会添加更多IDE的功能。我不知道现在的IDE将如何发展,我希望他们可以回头看看Emacs,并且能提供高级用户喜欢的编辑体验。
eclipse是java写的
速度爆满
个人强烈不建议使用
vi因为在不同的系统上分别是vi和vim版本
差别很大
如果你从头就是学正统vi而不是vim的话那倒没问题
不过vi也很难学
相对来说emacs速度介于两者之间
而且环境相当强大
入门很容易而且你有兴趣的话可以深入到最顶层
不同的系统上表现也都一致
所以我强烈推荐用emacs
不过除非骨灰级选手
否则不建议把emacs作为一种生活方式
毕竟人生美好的东西还有很多
为什么使用emacs而不是eclipse
我在知乎,Quora,StackOverFlow上都搜索了这个问题,emacs和eclipse针对Java开发时的区别,为什么使用emacs而不是eclipse。
为什么明明作为Java IDE,Eclipse功能性上远远强于Emacs,但是仍有那么多geek选择后者呢。
这也许是一种文化,一种自由、可定制的文化,一种追求深度探索而非简单无脑的文化。自己安装plugins,自己编写lisp脚本,自己编写ant脚本部署工程,如果不做又怎么能学会。
不过重点在于,更多的人会回答说,你喜欢用什么就用呗,用的顺手才是王道,不要纠结于你的工具而是语言。(这一句相当的具有权威感,听上去颇像是从业数十年资深coder的感觉。)
错!!!滚蛋!!!渣渣!!!
细节决定一切,一屋不扫何以扫天下,细节DNA决定了做事风格。
不是说这两者何谓好何谓坏。而是你需要给自己一个正确的理由,任何事情都需要理由,如果你认定了使用Emacs是一件很酷的事情,但是因为太难了,于是给自己一个借口去放弃(例如,不要纠结工具重在语言本身)。那么请自省。
一个无法贯彻自己内心思考的人注定离自己的梦想越来越远。
支持以上的看法。根本上是应该这样考虑。如果认真分析了程序所需要的东西。IDE可以编界面。VI编辑器可以用来编程序。写程序用Emacs。这样找到最合理的分工。才能真正的提高效率。利用其优点,摆脱其缺点。这样才能正常。不过正确的仔细的细节,对于开发风格和学习思路,以及调试方式和架构思维整个程序开发的大方向都有深远影响。
有人说:脾气火爆的人适合用Vim,而性格平和的人适合用Emacs。在初学时,我经过慎重选择,看了无数水帖,包括Oreilly的总裁的水帖,我最终选择了Vim。而我不用Emacs的最大的原因是:我的U盘只有32M,Emacs最新版根本装不下,遑论32M还要装下其它东西。由于这个原因——这也是最根本的原因,我加入了Vim一族,至此不变。
Emacs的一个理念是:它提供了一个良好的工作环境。你可以在其中收取电子邮件、玩游戏、运行程序,一天都不用离开Emacs。可是现在大多数Linux发行版都带有GUI,如果收电子邮件,打开Evolution吧;如果玩游戏,还是装台Windows吧——我可没说用双系统,用双系统就是个悲剧,在双系统启动界面没有被破坏以前,80%的情况下都会进入Windows;如果上网,现在好的浏览器太多了,比如FireFox和Opera。
如果仅仅是为了编程,我还是选择使用Vim。因为它是每个系统上几乎都预装的一个文本编辑器。Emacs还要去网上wget一下呢。只要配上少许插件,拷贝一下配置文件,即可安心工作了。无论你是Putty一族还是Gnome环境,Vim都能够满足需求。
当然,我不是说Emacs不好,而只是说它的快捷键让我无法忍受,我的新键盘Ctrl键旁边竟然有个Fn,这个键大概是为笔记本准备的,可是我一按Ctrl,就很容易按到Fn上去。说它是Ctrl到死的编辑器一点都不为过。
我见到有个同学使用Emacs,他不愠不火,慢慢地Ctrl,显得十分自在。而我,则无论如何也不能忍受那种折磨,还是Esc,一系列组合拳后,按下i、a或者I、A或者o、O了事。
我并不是排斥Emacs,它很强大,在我使用的过程中,很贴心的给出各种提示。我看过《Free As In Freedom》,其中详细描述了Stallman如何开发Emacs的历程。其中还批评了Java的发明人James Gosling,他搞了一个Gosling Emacs,但是后来不但没有反馈给GNU社区,还拿来卖钱。
经过长时间的使用,我逐渐改变了以前的一些幼稚、偏执的观点。我想与其Emacs的使用者和Vim的使用者整天在论坛上死掐,不如像[email protected]那样,安心将Vim用户手册翻译出来;不如多多宣传Emacs的使用技巧。毕竟,很多人还是无法领会这两种界面看似简单,功能无比强大的编辑器到底妙在什么地方。
用Vim或是Emacs,如人饮水,冷暖自知。
对于单一语言,emacs确实可能不是最好的,比如eclipse之于java可是对于一个程序员的整个生涯来说很难直接触一种语言,这就需要编辑器就强大的拓展能力。
现在emacs可以通过配置实现符合个人喜好的几乎一切功能,你所说的代码提示自动格式化等等这些恰恰可以在emacs上通过配置适用于所有语言!
如果一个新的语言出现,写出了解释器或者编译器,但是其编辑方式没有,难道去用记事本去编辑吗?如果有VIM和Emacs这种超强的扩展性功能还是集成其他程序的能力的“OS”不是节省很多时间吗?而且还可以和其他程序一起调试,不需要必须只用一种语言去写。可以支持多预言的编辑。、
当然就单独来看。Emacs编译java肯定没有Eclipse好。但是只编译java时。你就应该去选择Eclipse啊。对不对。根据效率去选择最优的。
emacs和vim选哪个问题。
我当初也痛苦过很久,现在回过头来看,最重要的是实践 ,别人说什么都没用,最好两个都用一下,哪个习惯就用哪个。
如果一开始选择了一下,各方面都很满意,就不用再换了,不要这山望着哪山高。
个人的经验是,两者在功能上没有什么本质的差别,emacs能干的vim也能干。所以都试试吧,习惯哪种键绑定风格就用哪种。
现在觉得,键绑定风格对选择影响最大,因为功能实在是都差不多了。另外,已经习惯eclipse的同学就不用再来折腾了,功能都差不多,既然习惯了,多花点心思在编程技巧上,比重新掌握一个工具有益。
还有 emacs 有很多程序无缝结合 ,如 python, perl, octave(matlab), gdb, pydb 等等,emacs 是最好的 IDE 了。
总之,驯化了的 emacs 是你的忠实的奴仆,他会按照主人的方式工作,猜想主人的意图。
然而,有的时候 emacs 是奔放的野马,总是难以驾驭,要想emacs 按照主人的意志工作,那么主人就有义务详细的告诉他该如何工作。
有两种办法,一种是向其他主人学习,请教,按照他的办法驯化 emacs 。
另一种办法是掌握 emacs 的高级用法,只有了解他的语言, Elisp (Emacs Lisp) ,明白了 emacs 的语言,才能够和 emacs 很好的交流,沟通, emacs 是一个很听话的孩子。
emacs是一个os型的编辑器,一直在用,常用的命令还是比较好掌握的,用多了就有手感了,手感记忆很重要,下面的命令掌握了基本能驾驭emacs,剩下就是针对性的命令了
IDE的人嗤之以鼻——有Code::blocks这样方便的IDE不用,跑去折腾几个文本编辑器作甚?然而,在他人的推荐下接触了gVim之后,我发现自己真是错得可笑。所谓神器者,以百倍于其他编辑器的学习时间回报以千倍于其他编辑器的编辑效率。
第一次接触Vim就被深深地吸引了,难以自拔。还记得那时开着几十个网页探索Vim的奥秘,对它的无尽好奇心让我为之疯狂。每天我如饥似渴地翻阅各种文章,在Vim上做各种试验,折腾配置文件,让我的心理得到了极大的满足。于是,慢慢地,我成了一个Vimer。毋庸置疑地迷上了它。
接触Vim自然也不得不了解到另一神器——Emacs。所谓的神之编辑器真是名不虚传,连移动光标都要用组合键,让当时迷恋hijk的我吓了一跳。如此高的门槛,它到底有多强大???后来我明白了,原来神的编辑器,是可以当操作系统的。
每当使用Vim高效编辑代码时,我都会不禁感慨:Vim已如此强大,那作为它的对手的Emacs该有如何恐怖???
和当初一样,带着狂热的好奇心,我敲开了Emacs的大门——不不不,事实上,我到现在都没迈出一步。Emacs的组合键实在让人感到无法忍受。而我用v已经有一点点的得心应手了,用起e来各种不舒服不习惯不方便。而且对于灵活的elisp语言更是感到畏惧。emacs,终究还是错过了。
但emacs和vim得一即可平天下,既然我走进了vim的世界,我也无需感到遗憾。vim已不再是一个名字一个工具,它是一种精神一种信仰一种内心最深处的无法抗拒的力量。我相信,emacser对于e也是同样的感受。
走上了这条路,就不会再回头。
如何安装和配置erlang开发环境?
2008-11-19 21:53
提问者: HiViv | 悬赏分:80 | 浏览次数:1816次
我想学习erlang,请erlang的高人指导一下该问题。能给点学习的建议最好啦,谢谢啦。
问题补充:
两位老兄多虑了,事实上我就是在电信软件企业,只不过我主要负责应用服务器开发,但想研究一下erlang。我想要的是学习的建议,谢谢。
我认为学以至用是最重要的,还有这一行是不是你真正想去做的,兴趣是一种动力,这个是关于通讯方面的,我想大有前景,不过要有关系进去电信之类的地方去工作才行,要不然你学到了也没地方给你发挥。
或者游戏公司,大型服务器公司。大型web网站,大型实时并行处理系统(票,报名)
Eclipse , Java and Erlang OPT
经过一天的折腾,外加n次google,最终配置好了erlang的开发环境。
erlang的开发环境有两类,IDE和Editor。
1、IDE有:
- 加拿大的 CaoYuan (华人哦)开发的 ErlyBird (for NetBeans)
- 大名鼎鼎的 ErlIDE (for Eclipse)
2、Editor有:
- Emacs
- Vim
- JEdit
我选择的是Erlang+Emacs。
之所以选择它,是因为,集成开发环境不利于学习,很多都是自动提示,生成的。再着一直久仰于emacs的大名,正好这次拿来练手。
下面说下我机子erlang的开发环境配置:
WindowsXP SP3+ otp_win32_R15B.exe + Emacs-23-CvsP091103-EmacsW32-1.58.exe + distel-4.03.tgz
erlang开发环境软件打包:http://115.com/file/c2li0lr0
下载地址:
http://www.ourcomments.org/cgi-bin/emacsw32-dl-latest.pl
http://code.google.com/p/distel/downloads/list
参考:http://shupili141005.iteye.com/blog/503606
http://bc.tech.coop/blog/070528.html