Home  >  Article  >  Backend Development  >  编程初学者如何在GitHub寻找适合自己的小项目?

编程初学者如何在GitHub寻找适合自己的小项目?

WBOY
WBOYOriginal
2016-06-06 16:23:406771browse

我刚刚学完了Python,由于是编程初学者,各种技术都没有(或者说不知道有什么技术),不知道如何找到简单有趣的小项目。发现了GitHub,里面有很多开源项目,但是寻找起来却有点大海捞针。请各位高手指导~

回复内容:

要找就找个流行的项目如Flask:

编程初学者如何在GitHub寻找适合自己的小项目?
然后你找到这个项目最早的提交:

编程初学者如何在GitHub寻找适合自己的小项目?
接着,你就可以看到他6年前的代码:

编程初学者如何在GitHub寻找适合自己的小项目?最后,你就看到了这个代码了:

编程初学者如何在GitHub寻找适合自己的小项目?

不要谢我,我以前就是这么学过来的 说一下最近一年来的经历吧,我主要是做python web开发的,用的是Django。
首先,找找python圈里面比较高产的developer,像Node.js圈的TJ的那种,看看他们曾经做过的项目。找找github上最近比较流行的python项目,可以在Trending repositories on GitHub today · GitHub上找。然后从中选择一个你喜欢的。
如果通过上面的方式,还是没有找到合适的项目的话,建议还是多做一些实践性的练习。练习的过程中应该会遇到一些问题,把遇到的问题研究明白也能提升不少。比如我在使用Django做开发的时候就遇到了一些坑,通过研究相关的模块,就能把一部分django的代码过一遍。

另外,有些工具是一定要学的!
  1. 一定要熟悉git的操作哈。
  2. 学习下virtualenv。在你研究一个项目的时候,使用virtualenv能够方便搭建一个隔离性很好的实验环境。
新手不适合在 GitHub 找项目。
新手不如认一个方向,直接自己去写东西。喜欢 Web 就去找 Django 或者 Flask 拿来用;喜欢数据挖掘就去看 Python for Data Analysis,喜欢游戏直接看 pygame 之类。
没有自己足够的代码积累之前看别人代码……事倍功半。 去年注册的Github,今年算是入门Github 啦,我是新手,看到Github 上有好多好项目,看到了就果断Star 啦,但是后来呢?就没有后来啦,不是说自己不想学,而是大多流行的项目太大,不适合新手,所以我觉得在Github 入门学东西,一定有一定基础,一定经验之后,再去看,当然也有适合新手的,但是不容易找,比如这个:Home · codepath/android_guides Wiki · GitHub,我看着都醉了,特别适合小白(好吧,我是小白);
对于学习了语言,基础一定要学好,比如学了网络编程,就写一个Demo,练练手,学了IO,也一样,当语言基本上都学完了,在找点大的项目,在此期间,利用Google 搜索还是很靠谱的,从小的Demo,慢慢来,相信会积累经验;
其次就是Github 好多项目(几百Star),连一个README.md 都不写,这让人怎么看呀,在Google 一搜索,哇,找到一篇博客,通俗易懂,跟着写完一个Demo,顿时好有成就感;
其实在编程的学习过程中,没有什么是固定的,比如,看好书,读博客,搜索,包括Github,其实在学习中慢慢发现,慢慢积累,注意要记录笔记,写博客,刚开始学习多看Getting Started,Guide,Head Fist 之类,再深入就是进阶,权威指南之类的,多动手,虽然说着容易,但是做起来就很难啦。 从你的描述推断,你极有可能是非专业出身,对专业基础认识不深。

GitHub主要是一个代码托管的地方,其次是协作的地方,鉴于你的能力,参与到项目几乎不可能。而且GitHub上只有有价值的项目(一般不会小)和无价值的项目(小的有很多,但一般是自个儿闹着玩的)

建议先做一个自己觉得好玩的东西,在这途中发现问题(例如这过程涉及什么,需要什么lib),并解决(有没有现成的lib,是否需要创造轮子)。

等你觉得现有的lib不好用或发现bug了,你就可以参与到项目里头了,给作者一个pull request。 github.com/thekarangoel 我觉得没必要急着参与项目~
可以自己先搞着玩~玩的深入了 自然也就有机会参与了
机会是给有准备的人 准备的
我也刚入python不久,学了flask 写了自己的blog系统~ 还写了一些博客
感觉蛮好的 怎么赞同一位网友的回答,要为解决问题而学习。 首先可以根据自己的兴趣搜索关键字,找一些小项目来fork
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn