程序员是如何寻找代码
写程序的人肯定都搜过程序吧。既然有现成的,何必重新发明轮子呢?在程序库日益丰富、搜索功能越来越高级的背景下,程序搜索已经成为一项关键的软件开发活动,而且实际上也是一项非常有用的技能。那编程人员一般都是怎么去搜索程序的呢?
写程序的人肯定都搜过程序吧。既然有现成的,何必重新发明轮子呢?在程序库日益丰富、搜索功能越来越高级的背景下,程序搜索已经成为一项关键的软件开发活动,而且实际上也是一项非常有用的技能。那编程人员一般都是怎么去搜索程序的呢?针对这个问题,Google 特地在内部进行了一项案例研究。研究采用了调查和日志分析相结合的办法,得出了一些有趣的结果。
研究人员在 15 天内对 Google 的 27 名程序员进行调查,然后结合搜索日志份分析发现,编程人员搜索程序的行为越来越频繁了,基本上每工作日平均要进行 5 次搜索会话、12 次程序查询,比普通用户的搜索行为还要多。
编程人员程序搜索的目的各种各样:比方说程序作用是什么?程序在哪里实例化?程序为什么会这样工作?谁负责编辑程序?如何执行一项任务等。其中想了解程序怎么调用(How)的搜索占了 22%,想知道某段程序是干什么(What)用的占了搜索的 20%,要查找某个类在哪里(Where)被实例化的占到 8.5%,想要了解为什么某个东西会失败的占到了 10%,而想要了解是谁什么时候改动了程序的占 5%。
编程人员的程序搜索工具有很多,包括 Koders、Google、Google Code Search、Krugle [14], SourceForge、GitHub、CodeGenie、Sourcerer、Satsy 等,其中不乏利用了更加语义化的功能,这对于提高搜索的命中率很有帮助。
研究认为,相对一般用户,编程人员执行搜索的频率非常高,因此,搜索的速度和精度会对编程人员的生产力造成很大影响。此外,编程人员搜索的很大一部分精力都放在程序样例的查找上,所以必须加强对编程例子的支持。第三点是编程人员搜索的一般都是自己熟悉或比较熟悉的本地库,寻找的都是多少有些熟悉的程序,鉴于此,开发环境可能最好把程序搜索功能给集成进来。
你为什么要搜程序?一般用什么工具搜程序?去哪里搜?搜程序又有什么秘诀呢?不妨在评论栏贡献你的答案。
Google 的案例研究论文可参见此处。
相关文章:
- 凌晨三点不睡的年轻人都在搜什么
- 谷歌学苹果强征30%的“安卓税”,开发者又要伤脑筋了
- 谷歌重返中国无望?官方确认蜻蜓计划彻底终止
- 谷歌正式终止中国版搜索引擎项目
- 谷歌被指与中国军方合作 特朗普称要查一查
- 我们深挖后发现,谷歌申请的AI专利何止一个Dropout
- 谷歌 Dropout 专利生效,AI 圈内人表示坐不住了!
- 谷歌临时工数量超出正式员工
- 谷歌可折叠手机新细节曝光:向外折叠,屏幕更薄
- 谷歌搜索为重返中国都做了什么?
- 为什么在谷歌上搜”白痴”就会出现特朗普的照片?
- 百度做错了什么?七成中国网民期待重回“Google”的怀抱
- 谷歌return中国大猜想:五个赢家、四个输家、三个问题
- 成败“嫩滑”小黄图:李彦宏一句话引发的搜索PK
- 谷歌重回中国话题上,为何李彦宏说的是“正确的废话”?
发表回复