vim emacs Linux Java编程环境,为什么用vim(emacs)而非ide去写代码?

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

为什么用vim(或者emacs)写代码?

我见过太多ide写过的程序他们是以下状态分布的

第一种几乎没有什么后端代码,所有的界面和代码混合,奇怪的空格和控位符。——这是大多数ide所默认的状态,因为制造垃圾最简单。

二种做到了界面和代码分离,但是里面充满了自动填充的人所看不懂的变量名等东西——ide能做很多事情,包括你没让他做的,如果是人工手写的,那么你还可

以讨论统一命名的问题,但是ide却麻烦的多。另外,如果你只有一个编辑器的话——我是指带扩展功能的编辑器,你可以往上面加你喜欢的功能,但是ide不

见得那么简单

第三种,他费了功夫,已经去掉了所有不需要的功能,但是麻烦是ide鸡肋的智能——他能自动补齐对应标签(或者括号,或者其他神么),但是又不够智能,比如总是放在错误的位置,或者大部分正确,但是又无法很好的处理意外情况。我没有见任何人很好的解决了这个问题。

第四种我见到的是滥用平台提供的函数和功能,大段的生成代码却没有任何优化,堆积出来的东西就像一个发育不良的脑瘫儿。——ide可以补全,ide可以显示功能,ide可以帮助你理解所用的函数,但是,他不能做到全部,比如帮你选择正确的函数而无需思考。

而我又见过太多vim(或者emacs)所写的代码。包括我,即使是页面(js,css或者html)也是用他们来写。如果说为什么我更喜欢这样的代码的话,是因为正如《梦断代码》中所说的,vim(或者emacs)提供了良好的“限制”!

对,

正是限制,而非智能而造就了良好的编程习惯——我可以感觉到我写C的时候括号配对的节奏,我就是不去看身体也知道我在写什么,因为函数和程序块括号换行的

节奏(你可以吧回车当作节拍,函数一般还要多一个语句结束符)正好相差一个。甚至你可以明白,任何函数都是这样的,你噼里啪啦的打字,你能感受到不同的节

拍——而不是像ide那样单一的噼(首字母)——啪(补全)。

其次,正是功能的限制,你不得不考虑很多事情,就像写作一样——合理的命名,精简的函数(否则你会花很多时间去记忆和输入),复杂的组合,所以写出来的代码也是优美的,那些不是一个电子脑所能给的符号,而是真正有逻辑意义的代码。

最后,他不是最快的,但是最终是快的,而且工程越大,他的速度越快——因为你考虑了结构,而结构是如此的重要,直接决定了时间,代码量,甚至金钱,甚至已经决定了你是否值得去写那些代码。

如果以上都不是理由的话,我想你也是正确的,因为我不是一个优秀的码农,现在我也没做相关工作,编程只是每夜的业余爱好罢了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值