layout: post
title: "学习 GitHub 有什么好处?"
date: 2018-04-15 19:20:20 +0800
---
鸣谢:王顶 老师(河北经贸大学,github:wangding),该文章为网络课程教学素材。
我(吴甜甜)学习了王顶老师的github课程,并得到王顶老师网络指导多次。

学习 GitHub 有什么好处?

为什么要学习 GitHub,或者说学习 GitHub 对我们有什么好处?

理由一:GitHub 上有很多大牛出没,国外的咱先不说,就国内的像百度、腾讯、阿里之类的大公司,里面的很多工程师都在 GitHub 上安家落户,有空的时候多在 GitHub 上逛逛,关注一下大牛,没准还能搞个内推什么的。

理由二:GitHub 上可以接触到最新的最前沿的 IT 技术。因为,我们知道任何软件或者产品在上线发布之前,都有开发的过程和测试的过程,GitHub 上你可以接触到这些产品的初始状态、中间状态和发布状态,你可以第一时间了解到产品的动向。而且根据 GitHub 上每年发布的统计数据,你可以知道哪些技术是最火热的技术,及时跟上这些技术,而不是学一些过时的小众的技术。这个恐怕是每个搞 IT 技术的人,都非常关心的一个问题。

理由三:GitHub 是基于 Git 版本控制工具的,任何一个软件从无到有的全部过程,或者说软件从无到有的每个版本,它是怎么发展过来的,全都一览无遗。从这里面我们可以学到开发的技术,包括编程语言、单元测试、设计思想、编码规范、项目的协调组织以及流程,等等。而且因为 GitHub 是版本控制,可以很好的管理程序代码或者文档的每个历史状态,相当于我们每天刷的微博或者微信朋友圈。这些社交媒体工具可以记录我们的生活点滴,而 GitHub 可以记录我们的技术发展,如果你是一个刚上大一的新生,如果能把学习的每门课程,从 C 语言、数据结构开始,把每门课程的练习代码放到 GitHub 上,四年下来也是一个很好的积累。

理由四:GitHub 是开源的,开源就意味着所有项目的代码和文档,甚至中间过程对我们都是开放的。我们从这些项目中可以找一些感兴趣的项目参与其中,可以利用这些项目来提升我们的技术,积累我们的项目经验。很多大学生毕业的时候,因为没有项目经验而被企业拒之门外,试想一下,如果能够在大学期间,从大一就开始接触了了解 Github,在大学毕业的时候在 GitHub 上已经有一些参与项目的经验,那会对我们的未来有多大的帮助啊。如果你想做程序员,你可以在开源项目中贡献代码,如果你想做测试工程师,你可以在开源项目中提 bug 缺陷。而且,GitHub 上确实有很多猎头在关注着你,有很多靠谱的工作机会等待着你,前提是你需要在 GitHub 上安家,然后把你对 IT 技术的学习过程用 GitHub 管理起来。利用 GitHub 在个人职业发展上,走向成功的案例举不胜举。

理由五:GitHub 不仅托管的项目不仅可以是软件包或者程序代码,也可以是文档教程。所以,我对 GitHub 的资料,分两个大类,一个程序代码,二是自然语言代码。程序代码很好理解,大家都多少接触过编程,了解一门或多门编程语言。自然语言代码,其实就是自然语言编写的文档资料。即使我们因为程序语言掌握的不好,不太能一上来参与到开源项目中去贡献代码。但是,很多技术大牛在 GitHub 上做了很多非常棒的入门教程,帮助初学者。像我就用 GitHub 做课程开发,大家可以在我的 GitHub courses 仓库中,找到很多课程的资料页面。有的人在 GitHub 上写书,我这里搜藏了两个大牛写的 python 书,都可以完全免费的在线阅读。还有阮一峰老师写的 JavaScript 书,等等。所以 GitHub 是一个非常丰富的学习资料仓库。大家如果不接触 GitHub,没有掌握 GitHub 这个强大的工具,这些优质的学习资料,就跟大家失之交臂了,这是非常可惜的一件事情。

最后,用一句话来总结一下这个话题。那就是,一旦你掌握了 GitHub 这个强大的工具,你的 IT 技术水平或者职业发展就进入了快车道


学习 GitHub 有什么好处?的更多相关文章

  1. 从0开始学习 GITHUB 系列之「GIT 速成」【转】

    本文转载自:http://stormzhang.com/github/2016/05/30/learn-github-from-zero3/ 版权声明:本文为 stormzhang 原创文章,可以随意 ...

  2. 从0开始学习 GitHub 系列之「03.Git 速成」

    前面的 GitHub 系列文章介绍过,GitHub 是基于 Git 的,所以也就意味着 Git 是基础,如果你不会 Git ,那么接下来你完全继续不下去,所以今天的教程就来说说 Git ,当然关于 G ...

  3. 学习GitHub

    学习GitHub: GitHub教程:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b00 ...

  4. 深度学习Github排名,很不错的介绍

    今天看到这篇文章,把深度学习github排名靠前的项目,介绍了一下,很不错: https://blog.csdn.net/yH0VLDe8VG8ep9VGe/article/details/81611 ...

  5. 从0开始学习 GITHUB 系列之「向GITHUB 提交代码」【转】

    本文转载自:http://stormzhang.com/github/2016/06/04/learn-github-from-zero4/ 版权声明:本文为 stormzhang 原创文章,可以随意 ...

  6. 从0开始学习 GITHUB 系列之「初识 GITHUB」【转】

    本文转载自:http://stormzhang.com/github/2016/05/25/learn-github-from-zero1/ 版权声明:本文为 stormzhang 原创文章,可以随意 ...

  7. 从0开始学习 GITHUB 系列之「加入 GITHUB」【转】

    本文转载自:http://stormzhang.com/github/2016/05/26/learn-github-from-zero2/ 版权声明:本文为 stormzhang 原创文章,可以随意 ...

  8. 从0开始学习 GitHub 系列汇总笔记

    本文学习自Stromzhang, 原文地址请移步:从0开始学习 GitHub 系列汇总 我的笔记: 0x00  从0开始学习GitHub 系列之[初识GitHub] GitHub 影响力 a.全球顶级 ...

  9. 从0開始学习 GitHub 系列之「07.GitHub 常见的几种操作」

    之前写了一个 GitHub 系列,反响非常不错,突然发现居然还落下点东西没写,前段时间 GitHub 也改版了,借此机会补充下. 我们都说开源社区最大的魅力是人人多能够參与进去,发挥众人的力量,让一个 ...

随机推荐

  1. ASP.NET Core 新增用户 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 新增用户 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 新增用户 上一章节我们实现了一个注册表单,但也留了一些东西还没完成, ...

  2. js调查server

    <script type="text/javascript"> function showUnreadNews() { $(document).ready(functi ...

  3. 卷积、卷积矩阵(Convolution matrix)与核(Kernel)

    在图像处理领域,Kernel = convolution matrix = mask,它们一般都为一个较小的矩阵: 用于:Sharpen,Blur, Edge enhance,Edge detect, ...

  4. 使用 NodeJS + Express从GET/POST Request 取值

    过去无论哪一种网站应用程式的开发语言,初学者教学中第一次会提到的起手式,八九不离十就是GET/POST Request 的取值.但是,在Node.js + Express 的世界中,仿佛人人是高手,天 ...

  5. windows IIS发布.net core网站的环境配置

    1.安装对应的.net core的runtime2.安装Windows Server Hosting下载地址:https://www.microsoft.com/net/download/core#/ ...

  6. zendframework 初始化配置

    https://framework.zend.com/manual/2.4/en/tutorials/config.advanced.html#environment-specific-system- ...

  7. jquery ready和window onload区别

    window onload是指标签加载完成,并且标签资源加载完成: jquery ready是指标签加载完成,标签资源可能未加载完成 $(document).ready(function(){});= ...

  8. WPF滚动条嵌套,响应鼠标滑轮事件的处理

    在C# 中,两个ScrollViewer嵌套在一起或者ScrollViewer里面嵌套一个ListBox.Listview(控件本身有scrollviewer)的时候,我们本想要的效果是鼠标滚动整个S ...

  9. 重启网卡的几种方法(命令行,API,

    1.重启windows网卡命令 rem 禁用网卡netsh interface set interface 本地连接 disabledrem 启用网卡 netsh interface set inte ...

  10. C#基础加强篇----委托、Lamada表达式和事件(上)

    1.委托 C#的委托相当于C/C++中的函数指针.函数指针用指针获取一个函数的入口地址,实现对函数的操作. 委托与C/C++中的函数指针不同在于,委托是面向对象的,是引用类型,对委托的使用要先定义后实 ...