qidao123.com技术社区-IT企服评测·应用市场

标题: 如何从GitHub上调研良好的开源项目,并魔改应用于工作中? [打印本页]

作者: 花瓣小跑    时间: 2025-5-5 08:32
标题: 如何从GitHub上调研良好的开源项目,并魔改应用于工作中?
在 Go 语言学习中,我们经常会去学习一些良好的开源项目。但是学完之后,发现很快就忘记了大概学习效果并不好。学习一个开源项目最好的方式就是围绕这个开源项目进行实战。比方,直接魔改这个开源项目并应用于工作中。本文来介绍下如何调用,并魔改一个开源项目。
题目拆解

在学习开源项目的过程中,如果用需求来驱动学习,不仅效率是最高的,而且学习的过程也是工作产出的过程,可以说是一箭双雕。基于一个良好的开源项目来进行魔改,可以拆解为以下 3 个题目(大概使命、方法):


接下来,我们就分别看下这3个题目。
需求从哪里来?

在我看来,需求来源于工作。这些需求可以是产物经理交给你的某一个详细产物需求,也可以是可以大概资助团队进步工作效率的工具,还可以是可以大概进步自己工作效率的工具。
总之,如果有明白的工作需求最好,如果没有明白的需求,我们就要创造需求。我们可以思考工作中的痛点、难点,并将它们转化成需求。比如,团队发布版本,每次都是人工发布,必要登陆到不同的服务器,摆设不同的组件和配置。如许效率低不说,还容易由于人为失误造成现网故障。这时间,你就可以将这些痛点抽象成一个需求:开发一个版本发布系统。
有了需求,接下来我们就要完成它,也就是进入到实践环节。那么如何实践呢?在我看来精髓在于两个字:“抄”和“改”。
上面,我们抽象出了一个需求:开发一个版本发布系统。如果自己从0开发出一套版本发布系统,工作量无疑是巨大的。而且,以我们这个阶段的水平,即使花费了很多时间开发出一个版本发布系统,这个系统在功能和代码质量上也无法跟一些良好的开源版本发布系统相比。
以是,这时间最好的方法就是在GitHub上找到一个良好的版本发布系统,并基于这个系统进行二次开发。如许,你不仅能学习到一个良好开源项目的设计和实现,还可以大概以最快的速度完成版本发布系统的开发。
如何查找良好的开源项目?

工作中遇到工作需求不知道怎么实现,大概不太想从 0 到 1 去实现。最好的方式就是魔改一个良好的开源项目。但是如何能查找到这个开源项目,并且确保是一个良好的开源项目呢?本末节,以“如安在GitHub上找到良好的版本发布系统”为例来给你介绍下。
下面,我把我自己的方法分享给你。我重要通过5个步骤来搜索,如下图所示:

这里我联合图片,详细分析下这5个步骤。
通过上面这5步,我们开端搜索出了匹配的项目,并知道了如何对这些项目做开端的筛选。接下来,你就必要按页来筛选页面中的开源项目,然后从第1页不停筛选到第100页。GitHub一页默认会展示10个开源项目,以是,如果按照这种方法,最终你可能必要调研10 * 100 = 1000个开源项目。固然,也不一定每次都要从第1页不停看到第100页,如果后面的项目明显都跟预期的需求不匹配,可以不用再继续看了。
用如许的方法,我们应该可以找到符合要求的良好开源包,而且该开源包极有可能是“最”良好的包。
此外,GitHub 上的 awesome-go 项目也根据分类记录了很多包和工具,你也可以在这个项目中寻找。我的建议是优先从GitHub上找,再在 libs.garden 上找,最后再参考 awesome-go项目。
到这里,我们已经通过自己的调研,找到了一堆GitHub上的开源项目。为什么我们要找这么多开源项目呢?重要目的有两个:

不过,这些开源项目只是颠末了开端筛选,里面有很多是不满足我们需求的,甚至可能跟我们的需求完全不一致。以是,我们还必要进行二次筛选,可以通过精读开源项目的README来筛选。如果有必要,并且项目摆设简朴,你也可以摆设这个开源项目,亲自体验一下。
颠末第二次的筛选,我们已经筛选出了一些可以大概满足要求的良好开源项目。这时间,我们还必要再颠末一轮筛选。这轮筛选,我们要从各方面来对比这些开源项目,并从中选出一个最合适的开源项目,来进行二次开发。这个开源项目,你可以自信地跟你老板说它是一个最优解。
如何进行二次开发?

接下来,你就可以基于这个项目进行二次开发,最终精彩地完成设定的需求。那么如何对选定的项目进行二次开发呢?我总结了5个步骤:
在你通过“抄”和“改”完成需求之后,记得还要编写文档,并找个合适的时机在团队中分享你的劳绩和产出。这点很重要,可以将你的学习输入酿成工作产出。
看到这里,你可能想说:我开发一个项目而已,调研这么多项目,花这么多时间,值得吗?我觉得是值得的,由于这种学习方式会带来下面这几个利益。

   

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/) Powered by Discuz! X3.4