代码自动补全是利大于弊,还是弊大于利?

2015-11-30 10:13:49 +08:00
 4everLoveU
13524 次点击
所在节点    程序员
111 条回复
wizardforcel
2015-11-30 16:06:00 +08:00
记不住函数名。函数名需要记?应试教育学傻了?

lz 缺铜币了么。再开一个 ide vs bash+vim+makefile 如何?

无聊不无聊。
theohateonion
2015-11-30 16:13:05 +08:00
记 API 名和重复敲各种长变量名这种浪费时间的愚蠢方法我只在嵌入式开发里面用过(因为嵌入式环境的 IDE 往往没有这种功能。)时间就是金钱我的朋友。我相信你一口气说出一种语言或者一种类库所有的方法名和用法,真正的程序员只会觉得你记忆好,而不会觉得你很厉害。
timonwong
2015-11-30 16:18:44 +08:00
自动补全有意义,你可以把自动补全看做一种 code generator ,当然如果反对 code generator ,喜欢纯粹手写就另当别论。
jukka
2015-11-30 17:21:15 +08:00
完全不需要补全。
函数名超过 15 个字符,我都会开始思考,是不是设计有问题了。
通常一个 API 只会做一件事情,一件事情就应该只会用一个 verb 就表达出来了。

比如 system API: fork, exit 。 长一点 gettimeofday 。
再比如,一个 rpc 模块, call(args), call(...), connect(ip, port, event_cb)。

另外 OC 的长名字和 Java 的长名字完全不同,
OC 的长名字通常是对一个对象 /动作 /类型的完整描述。
Java 的设计模式里的长名字, HasThisTypePatternTriedToSneakInSomeGenericOrParameterizedTypePatternMatchingStuffAnywhereVisitor , 233333 让我笑一会儿。
iamjs
2015-11-30 17:45:01 +08:00
@yougg 同意
4everLoveU
2015-11-30 17:51:44 +08:00
@theohateonion 迷茫了,那请问『真正的程序员』具体是虾米意思呢?
当然了,我也没有要表达记住了函数名啥的这种 coder 就厉害的意思,怎么就歪楼成这样了呢
不依赖 IDE ,多多手敲很大程度上代表了一种编程语言的熟练程度,至于记住了各种 api 是好还是不好,我的观点很明确,记住了当然更好,大家普遍质疑的好处在哪?至少你写博客,上技术论坛,面试什么的应该都能用上吧?
再就是什么脑容量有限的观点,太扯了...一种编程语言,你常用的模块也就那么一些吧,这些模块下面的函数加起来难道还能大几千?上万么?上高中,要背的东西那么多,也没见人叨逼叨说容量不够啊...
4everLoveU
2015-11-30 17:53:08 +08:00
@unknownservice 不会呀,面试不会纠结这个函数名写的对不对,面试官看的更多的是你解决问题的思路和方法?
4everLoveU
2015-11-30 17:55:19 +08:00
@unknownservice 当然了,白板上刷刷的也得很好,也是个加分项了吧?
俺这么说,应该不过分吧
hoythan
2015-11-30 18:19:43 +08:00
哪这么多废话,就算是补全你一天用到个四五次的,也能大概记住了。而且工作的时候肯定要先配置称自己习惯的环境啊!
Orzpls
2015-11-30 18:22:53 +08:00
@yougg 赞同,新手学的时候基本功要扎实。
martifact
2015-11-30 18:25:12 +08:00
官方库或者第三方库挺好。自己写的模块太依赖自动补全的话,命名很容易一塌糊涂。
PublicID
2015-11-30 18:32:13 +08:00
我可以默写常用的十来个 iOS UITableView 相关的方法名和其基本的方法体
PublicID
2015-11-30 18:39:25 +08:00
我能吞下玻璃而不伤身体
strongcoder
2015-11-30 18:44:51 +08:00
写 iOS 客户端不用代码补全试试看,那 API 读起来跟小说一样长…自己写每天光背课文去了
ototsuyume
2015-11-30 19:05:24 +08:00
连代码补全都要批判,现在的码农怎么了?不花心思去把代码写好反而以记住几个函数名不需要代码补全为荣,这价值观简直就是扭曲。我就问一下,像大公司里面一些底层系统的代码有好几十万行,包含好几千个类,每个类几十个函数,不用代码补全,你一个一个去背下来或者说每次去打开那个文件记下来然后一个一个字母敲回去?
altair21
2015-11-30 19:59:59 +08:00
@4everLoveU 我还真不知道记那 api 名对面试有什么帮助,就拿前面一哥们的 tableView 来说,有代码补全你看到第二个关键字自然知道是做什么的。有那时间记还不如设计程序,算法上进行优化。另外,对于你这种装着逼还说不屑叨逼叨的人,我只好 block 之
wy315700
2015-11-30 20:04:35 +08:00
人类的优势就是会使用工具
aksoft
2015-11-30 20:15:54 +08:00
做人不能装,年轻的时候装可以,老了就不行了
SonicY
2015-11-30 20:33:39 +08:00
纠结这个问题是为了啥?? 你要去背 api ?随便一个框架拿出来你都要去背?
pynix
2015-11-30 20:36:51 +08:00
看语言特性。。。 Java OC 这种不用自动补全估计得吃屎, Ruby , python 这类自动补全起不了多大作用。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/239927

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX