掌握谷歌搜索技巧,成为更优秀的程序员

现在编程几乎就等同于谷歌了(虽然并不是什么好习惯,但很多人就是这么做的)。比如现在你想写个程序来实现某种功能,有99%的可能已经有人完成了并且把代码上传到了Stack Overflow 或者 Github上。办公桌上已经不需要放一堆堆的参考书了, 我们只需要把想知道的键入搜索框,然后期待着答案出现在前九个结果中就好了。

不过很多人可能不知道,Google隐藏着许多功能强大的搜索技巧。就像掌握快捷键可以大大提高开发速度,有一些命令也能将你的谷歌搜索技巧上升到一个新的台阶。 以下罗列一些可以帮助到开发者的搜索命令。

精确查找

如果你用引号将搜索内容的一部分或者全部框起来,Google就会精确查找这部分短语,而不像平常一样,单独地匹配各个单词,这应该是谷歌最常见搜索技巧之一,但对开发者来说尤其有用。

比如在查找异常字符串时,你明确地需要搜索这种异常而不是其他,这么做可以砍掉搜索结果中大部分的无用内容。

举例

"Failed to parse configuration at: logging.appenders.[0]" mvn assembly plugin(mvn安装插件)

需要精确找的内容放在引号中,另外我还添加了一些额外的内容(mvn assembly plugin)以帮助确定搜索结果。

排除项

编程的小小世界里有许多重叠的内容,在我们梳理搜索结果是,大量拥有相似名称和重载项的项目常常令人头疼,其实要想从搜索结果中排除一些特定内容很简单,只需要在排除项前添加“-”就可以了。

举例

Spark Java –Apache

有个恼人的问题,搜Spark Java结果中可能混杂着 Apache Spark(一个围绕速度、易用性和复杂分析构建的大数据处理框架)。如果你只想搜Spark(一个微型的Java Web框架),你可以使用上面的方法轻松排除所有干扰项。

相关项

想知道某种技术有哪些替代品吗? 相关关键词或许能够帮助你,它将分析并返回具有相似内容的网站。当你寻找某种技术或框架的替代品、某种东西的补充或与它兼容的产品时,这一点就会非常有用。

举例

related:mongodb.org

现在我们就有了一系列和MongoDB(一个基于分布式文件存储的数据库,由 C++ 语言编写)相似或者可替代它的NoSQL数据库(泛指非关系型的数据库)。

文件类型

你知道你可以在谷歌搜索指定类型吗?当你想找可打印的备忘单时,你可能需要PDF文件,这时就需要用到这个技巧了,当然这也适用于其它一系列文件类型。

举例

IntelliJ shortcuts filetype:PDF

站内搜索

我经常会发现,在一个没有站内搜索的网站或论坛搜索想要的东西是一件很费时的事,幸运的是,Google可以帮你解决这个问题,你可以指定Google专门搜索某个网站及其子域。

举例

intellij shortcuts site:stackoverflow.com

附加功能!直接从Chrome搜索框搜索一个网站的内容

Chrome支持自定义搜索引擎,这点很有用,尤其当你经常在一个特定的网站搜索时,比如StackOverflow。

右键单击地址栏,选择修改搜索引擎选项

在弹出的窗口中选择“其他搜索引擎”,并滚动到底部。添加Stack Overflow支持。在第一个领域,我们将把“Stack Overflow”作为引擎的名称。在第一栏中填入搜索引擎的名称,如Stack Overflow,在第二栏中填入网址,如:stackoverflow.com,第三栏中填入搜索引擎的地址,并用%s代替搜索字词。(仿照图中圈出的部分即可)这样新的搜索引擎就添加完成了。

附:如何找到Stack Overflow搜索引擎的地址

找到这个搜索页面即可

效果如下: