自动完成是否会对代码产生影响?

时间:2010-01-18 01:39:53

标签: autocomplete

关于代码的经验问题:使用自动完成是否会改变一个代码?一般来说,使用自动完成的开发人员是否倾向于使用更长的变量名称,或者它是否真的根据所编写的代码更改了内容?

7 个答案:

答案 0 :(得分:8)

我发现自动填充功能可以通过以下方式帮助我:

  1. 自动填充功能可以更轻松地命名应该命名的内容,而不是容易键入的内容。当我自动完成时,我发现自己使用了更具描述性的名称。

  2. 通过让我不必承诺内存大量的API,自动完成也让我更有效率。当我寻找特定的方法或类时,自动完成功能有助于记忆。

  3. 我喜欢使用自动完成功能作为就地API探索的一种形式。如果我一般都知道我在寻找什么,我会使用自动完成功能来探索对象的作用,而不是从编辑器中删除以便在谷歌上查找内容。

答案 1 :(得分:5)

我认为自动完成对代码没有影响,但是当程序员尝试使用一个函数而不看详细信息时,自动完成可能导致编程巧合。如果它有效,那就完成了。

我认为这是自动完成的附带影响之一。

答案 2 :(得分:4)

自动完成可以改变代码的一件事是让你了解给定库中的功能,你可能没有注意到,除非你搜索了库文档 - 这可以允许更好(更简洁)的库使用。

答案 3 :(得分:4)

我想说AutoComplete和Intellisense都鼓励通过视觉提示和方便使用更长的变量名。

然而,仅仅因为这些功能鼓励更清晰的代码编写(即更长的变量名称)并不意味着每个人都使用或欢迎它们。

答案 4 :(得分:4)

我发现当我在IDE中使用自动完成功能时,我会编写更长且更具描述性的变量名称。当我开始编写Ruby时,我开始使用vim作为编辑器,并尝试将变量名称保持在8个字符左右。当我切换到RubyMine时,我不再担心变量名称长度并使用更长的名称。

答案 5 :(得分:3)

自动完成功能对于较长的变量名称很有用,但我发现它对于探索API等更有用。此外,当它显示文档提示时,我发现最有用,特别是当函数/方法有变化时。

但是,我通常会避免使用“过分”长名称,因为您无法始终保证其他人在首选编辑器中拥有自动填充功能。更不用说偶尔在生产服务器上执行编辑(是的,是的,不用说教你),如果你使用的是unix系统,你通常会使用像vi这样的东西。

至于很长的变量名,我只是缩短它,但仍然保留暗示其目的是什么。或者如果变量是短暂的(仅在一个小的代码块中),我只会使用非常短的东西,即使它不明显。

答案 6 :(得分:1)

我个人多年前离开了长变量名字的潮流。但我仍然发现自动填充有助于减少由误导引起的错误数量。

是的,编译器会抓住这个但是越来越多我发现自己使用没有编译器的语言。