你为什么不需要一个强大的ide来编写Python?

时间:2010-09-09 03:04:11

标签: python

之前我听说许多Python开发人员不使用像Eclipse这样的IDE,因为它不像Python这样的语言。

人们用来证明这种说法的理由是什么?

11 个答案:

答案 0 :(得分:15)

我要说的主要原因是因为Python并不像Java那样可怕。您不需要IDE来生成100行样板文件,因为您在Python中不需要100行样板文件。您倾向于使用语言自动化内容,而不是进一步提升工具链。

第二个原因是你不需要构建过程自动化b / c没有构建过程。

答案 1 :(得分:9)

我冒着冒犯别人的风险并表达一些我认为很多蟒蛇爱好者会同意的东西:Java非常繁琐且冗长,以至于人们几乎需要一个像Eclipse这样的IDE来管理它笨拙的臃肿。 / p>

使用python,我想从编辑器中获得的主要特定于编程的功能是语法高亮和跳转到定义命令。补充返回跳转命令的加分点。

我发现Geany可以满足我的需求,与像Eclipse这样的怪物IDE相比,它清新,快速,稳定。有关其他建议,请查看this question

答案 2 :(得分:6)

我知道为什么你需要(可以从中受益)一个好的IDE - Rapid Application Development

时间就是金钱:)我宁愿花时间解决问题而不是输入每一小段代码。

答案 3 :(得分:2)

两个主要原因


  1. 由于动态类型和通常超强大的功能,IDE可以为您完成额外的输入。在包中实现Java接口是很多工作和几十行样板。在Python或Ruby中,它不必首先输入。

  2. 由于动态类型,花哨的编辑器没有触手可及的信息,因此功能也会降低。

  3. 因此,从减少的编辑能力中减少需求和自下而上的挤压是自上而下的,最终的结果是非常小的应用领域。使用快速熟悉的日常编辑器的好处最终高于大多数无意义的IDE的好处。

    我想现在这些类别也有点模糊。 Vi(1)是最轻,最快的“普通”编辑器,但vim(1)现在可以在阳光下着色每种语言而TextMate被归类为“轻量级”,因此所有类别都真正开始合并一点。

答案 4 :(得分:1)

Python是动态类型的,它将模块作为对象处理的方式使得无法确定名称在特定时间将解析为什么而不实际运行代码。因此,IDE的“标签完成”功能非常无用。

此外,由于Python没有构建步骤,因此不需要IDE来自动执行此操作。您可以在终端中启动python app.py,并对其运行方式有更多控制。

答案 5 :(得分:1)

听起来像'你不需要车去上班'给我。这可能是真的,取决于你的工作场所有多远。

答案 6 :(得分:1)

IDE有助于提高开发人员的工作效率,同样适用于Python。关于IDE的定义是能够在编辑,编译,测试,运行和调试等任务之间不必“模式切换”。

答案 7 :(得分:1)

Python使用动态类型和解释,而不是编译。 解释器本身将输出全面的错误消息,类似于Perl。

如果你看一般的动态类型编程语言,你会发现它们中的大多数并不适合IDE。 RAD组件(代码完成,代码生成,代码模板等)几乎可以包含在任何智能文本编辑器中,如Vim,Emacs,Gedit或SciTE。

我使用Vim和Gedit进行大部分编程,我发现,我不需要IDE-ish之外的东西,这些已包含在那些文本编辑器中。但是,当我使用Java编程时,我大部分时间都使用Eclipse,因为手动跟踪所有这些部分会非常耗时。我倾向于不将IDE用于我的C ++,但是当项目增长超过一定规模时,我倾向于使用Eclipse(CDT),NetBeans,Code :: Blocks或类似的东西。

所以这是语言本身,它使IDE成为不必要的,但这并不意味着使用这些语言的IDE,这是不好的做法。

旁注 Eclipse甚至还有一个Lua环境。在所有语言中,Lua可能是最不需要IDE的人之一......

答案 8 :(得分:0)

我在计算机上用Python编程时使用IDE。这样更容易。但是在跑步或大学的终端上,我更喜欢终端。

答案 9 :(得分:0)

我仍然是相当陌生的Python并使用IDE完成代码,但发现自己很少需要它,Python确实很好地完成了不需要大量冗长的调用,正如dsimcha上面指出的那样。我发现只使用一个基本的IDE,我可以高效地工作,并且代码在没有括号的情况下更容易混乱的事实使得更容易处理具有大量代码行的文件(我发现无法忍受的东西) PHP由于其所有语法混乱)

就@ Postman的回答而言,我不确定是否有一个IDE让RAD更快,至少不是在python的情况下,它是如此简洁的语言,它唯一有用的就是代码完成,你回答它的方式听起来更像是暗示使用框架,我相信在Python中它仍然非常重要,它确实使RAD比其他方式更有可能。

答案 10 :(得分:0)

问题是IDE在动态语言方面不能很好地工作。

IDE无法再次猜测运行时鸭子类型,因此除了一些基本的语法检查和以漂亮的颜色显示关键字之外,它们还有很多帮助。

我的个人经历是groovy和eclipse,其中eclipse实际上很烦人。 groovy对象的方法完成会带来大约200个可能性,它会不断地在不需要它们的地方插入引号和括号,并在遇到相当复杂的正则表达式时弄乱语法着色。我会抛弃eclipse,除了大部分代码库都在Java中,eclipse很有用。