怎么高效搜索资料?
会搜索是程序员最重要的能力之一。今天分享一下我的搜索技巧。
搜索引擎的选择
技术问题首选Google
Google搜索技术内容的质量比百度高很多。如果你能科学上网,优先用Google。
百度也能用
如果用不了Google,百度也行。但要注意筛选,百度前几条往往是广告和垃圾内容。
英文搜索
很多技术问题,用英文搜索效果更好。
比如搜"Java NullPointerException"比搜"Java 空指针异常"结果更好。
搜索技巧
1. 关键词要准确
不要搜"Java报错了怎么办",要搜具体的报错信息。
比如你的报错是"java.lang.NullPointerException",就搜这个。
2. 加上语言/框架名
搜"怎么连接数据库"不如搜"Java JDBC连接MySQL"。
加上具体的技术栈,搜索结果更精准。
3. 限定网站
想在Stack Overflow上搜索?用site:stackoverflow.com Java HashMap
想在知乎上搜?用site:zhihu.com Java学习路线
4. 搜索报错信息
遇到报错,直接把报错信息复制到搜索框搜。
别怕报错信息长,大部分问题别人都遇到过。
5. 试着用英文搜
中文搜不到的,试试英文。
技术的源头在国外,英文资料更多更全。
常用的技术资源网站
问答类:
- Stack Overflow:最大的编程问答网站(英文)
- 知乎:中文问答,有很多技术大V
博客类:
- 掘金:国内技术博客平台
- CSDN:内容多但质量参差不齐
- 博客园:老牌技术博客平台
- Medium:英文博客,质量较高
官方文档:
- 学框架/库,官方文档是最权威的
GitHub:
- 找开源项目、看别人代码
搜索的心态
1. 多尝试
一次搜不到,换个关键词再搜。搜索也是需要技巧的,多尝试几次。
2. 学会筛选
搜到的结果不一定都对。要学会筛选,看发布时间、作者水平、评论反馈。
3. 别怕搜
遇到问题就搜,不丢人。90%的问题都有人遇到过,不用自己死磕。
我的习惯
我遇到问题的搜索顺序:
- 先看官方文档
- 官方文档找不到,Google/百度搜
- 还找不到,去Stack Overflow搜
- 还找不到,去GitHub Issues搜
- 实在找不到,去技术群/社区问
基本上90%的问题在前三步就能解决。
最后
搜索能力是慢慢练出来的。
一开始可能搜了半天也找不到答案,多搜几次就知道该怎么组织关键词了。
这个能力很重要,花时间练一练是值得的。
