为何程序员必定要会用Google和Stack Overflow?

为何程序员必定要会用Google和Stack Overflow?

96 程序员联盟 关注android

2017.01.05 01:43* 字数 2146 阅读 9160评论 40喜欢 140git

做者 谢恩铭 转载请注明出处
公众号「程序员联盟」(微信号:ProgrammerLeague )
原文:http://www.jianshu.com/p/af143595efce程序员

内容简介


  1. 前言
  2. 为何用Google不用百度
  3. 为何用Stack Overflow
  4. 小结

前言


下文中,谷歌统一用 Google 表示。github

做为程序员,用 Google 比用百度更节省时间,此话不假。编程

我在法国工做也有 5 年了,加上学生时代的两个 6 个月的实习。虽然说我离编程大牛还相距甚远,可是也算是有些开发经验的程序员了吧。我想说:segmentfault

这些年编程的一个很深的感触就是:95% 的问题均可以在 Google 和 Stack Overflow上找到答案。浏览器

真的能达到 95% 吗?达不到怎么办呢?服务器

我以为不少时候不是 Google 或 Stack Overflow 的问题,而是很多朋友不太懂得如何快速有效地搜索到有用的信息,能够参看下面这篇知乎的帖子:微信

如何用好谷歌等搜索引擎?学习

相比于国内的小伙伴们用 Google 须要“番茄”, 在国外确实相对便利,所以我平时基本不用百度,只有很可贵才会用百度来查一些资料。

Stack Overflow 的官网 却是在国内也能够上。不过貌似不是那么稳定,有时候打开比较慢。

Stack Overflow 的官网

下面两个内容值得一看:

不过, 要能在 Google 和 Stack Overflow “畅游”, 还须要比较良好的英语, 由于不少好的资料是英语的, 不少 API 只有英语解释, 等等。

为何用Google不用百度


一言不合就用 Google

首先,百度是一个以中文信息为主要对象的搜索引擎, 对英语信息的收录量和收录精确性比 Google 差不少。

可是做为程序员,咱们若是不会英语,是会错过不少好资源与好的学习机会的,能够参看一下我这篇文章:对于程序员, 为何英语比数学更重要? 如何学习

不过百度也是有其用途的,好比查找一些中文资源的时候。

百度比之 Google 还有不少劣势:

  • 用百度,第一屏的结果每每充斥着广告。并且很多都是用金钱买来的广告位。虽然Google也有广告位,但相比百度仍是有良心不少的。通过很多的事件,例如 魏泽西,你们对百度已经诟病很多了。

  • 百度的界面没有 Google 那么清爽:是的,做为“视觉生物”,要我在 Google 的界面和百度的界面之间选择,我会坚决果断选择前者。

百度的首页

Google 的首页

  • 对比一下 Google 的首页和百度的首页就会发现:Google 的首页大气简洁干净,百度的首页就是多了让咱们分心的新闻什么的。百度你给我看那么多菜单,那么多其余内容,我怎么专心去搜索。

  • 假如不是在国内,那么 Google 的速度是很快的,由于世界各地有不少 Google 的集成服务器。

咱们能够用“android学习”,看看 Google 和百度的搜索结果对比(第一页):

对于“android学习”,Google的搜索结果

对于“android学习”,百度的搜索结果

能够感受出来,Google的搜索结果很清爽,并且“直击要害”;百度的结果有很多并非咱们想要的,你还须要本身甄别,很麻烦。

还有,我都开了 Chrome 浏览器上屏蔽广告的插件,百度的搜索结果第一页第一个居然仍是广告。你能够去试试不加屏蔽广告选项的话,百度第一页的搜索结果,基本至少前 5 个都是广告。

固然了,Google 也不是没有缺陷的,并且百度这些年也有进步。不过,人生短暂,我用 Google。

我当年刚开始接触编程的时候,也不怎么用Google,基本都是“百度之”。可是我渐渐发现,百度的标语“百度一下,你就知道”,其实应该更正为“百度一下,也许你就更不知道了”。

最后, 假如你不信我说的,能够亲自使用一下 Google 和百度。

不过,友情提示:
到时候,你爱上 Google,不能自拔,天天不用一下 Google 搜索就“不爽不舒服斯基”的时候,不要来找我“算帐”。

为何用Stack Overflow


若是说 Google 对于非程序员也颇有用,那 Stack Overflow 就是极客的选择了。

什么是Stack Overflow ?

Stack 是英语“栈”的意思,Overflow 是英语“溢出”的意思,所以 Stack Overflow 的直译就是“栈溢出”。固然,这是计算机领域的术语。

栈溢出是缓冲区溢出的一种。
因为缓冲区溢出而使得有用的存储单元被改写,每每会引起不可预料的后果。
程序在运行过程当中,为了临时存取数据的须要,通常都要分配一些内存空间,一般称这些空间为缓冲区。
若是向缓冲区中写入超过其自己长度的数据,以至于缓冲区没法容纳,就会形成缓冲区之外的存储单元被改写,这种现象就称为缓冲区溢出。
缓冲区​长度通常与用户本身定义的缓冲变量的类型有关。

老外就是喜欢取别具一格的名字~

Stack Overflow 简单来讲是一个 IT 技术问答网站。其实网站自己技术实现并非很难,国内也有模仿者,例如 https://segmentfault.com

Stack Overflow 由 Jeff Atwood 和 Joel Spolsky 这两个很是著名的 Blogger 在 2008 年建立,7月小范围的进行 Beta 测试,直到 9 月份才开始公开的 Beta 测试。Stack Overflow 面向编程人员群体。
到2010年年底,Stack Overflow 单个站点在 Alexa 的Rank 是 160 ,月度独立访客超过 1600 万,每个月Page View 超过 7200 万 (refer)。
Stack Exchange Network 在 2010 年 5 月接受了来自 Union Square Ventures 的 600 万美圆的投资,在 2010 年扩大并完善了整个团队,从三个全职工程师发展到了 20 多人的队伍,搬进了 7500 平方英尺的豪华装修的办公室(固然每一个人都坐着1000美圆一把的椅子)。
以后,发展就算比较顺利。

可是,Stack Overflow 之因此成功,由于:

  • 整个圈子氛围不错
  • 问答基数大
  • 回复及时
  • 大牛不少
  • 基于英语
  • 问题审核严格
  • 基本你想获得的编程知识点在上面都有相关问题

能够看一下知乎的这篇帖子:国内为何没有好的 Stack Overflow 的模仿者?

这些年,不少编程难题,我都是先Google,而后 Google 会很优先地把结果导向到 Stack Overflow,我在 Stack Overflow能够很容易找到解决个人问题的答案。有些问题甚至很偏门,可是 Stack Overflow 仍是有解决办法,简直神器!

小结


至于 Google 和 Stack Overflow 的组合对于程序员的助力有多大,那你必须使用了才能体会到啊。

固然了,做为程序员,也得学着使用一下 Github,简直赞到不行。能够看看个人这篇文章:Git,Github和Gitlab简介和基本使用

有遗漏或错误,欢迎留言指正,我会及时修改,谢谢!


我是 谢恩铭,在巴黎奋斗的软件工程师。
我建立了程序员联盟的 知识星球,欢迎加入。 热爱生活,喜欢游泳,略懂烹饪。 人生格言:「向着标杆直跑」