各位老铁们,大家好,今天由我来为大家分享扒源码分享网站,以及在线扒站php源码的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!
作为一个资深的咨询师、程序员,GitHub是我用过的最好工具,因为Google并非总是那么用。GitHub是一个宝藏库,可没有藏宝图,GitHub一1亿的仓库也和你没有关系。这么一些年下来,也算是掌握了一定的技巧,写篇文章记录一下,也就顺其自然了。
总结一句话便是:GitHub来搜索Google搜索不到的。它们可以work的原因,都是因为我们想做的事情,已经有人已经走过。如果你走的是一条新的路,那么这篇文章对你来说,意义可能没有那么大。
寻找Demo节省时间
在工作上使用新的技术,和自己平时的练习,终究差得有些远。工作的时候,我们偏向于目标编程,对于速度和时间的要求,要比自己业余时间要高得多。一旦有了这种压力,便会在GitHub上寻找相应的Demo,了解原理、稍微尝试,再引入到项目中。
这时,便会按技术栈的关键字搜索,并按更新时间进行排序,以查找是否有合适的Demo。
生命有限,如若是每次我们尝试一个新的技术,总得自己编写一个个Demo。编写多个Demo,都得花去个半天八小时的时间。如此一算,能花费在其它事情上的时间便更少了。若只是试用官方的Demo,往往是比较容易的。可我们编写应用的时候,总得结合到当前的场合来。这时整合并不是一个轻松的工作,依赖冲突、引入第三方依赖等。
温馨提醒:对于简单的项目来说,自己直接写Demo会更加方便。尝试项目需要成本,若是需要尝试使用多个项目,那么有可能就浪费时间。
寻找脚手架:加快前期开发
无论是后端的微服务架构,还是前端应用,应用的架构正在变得复杂。后端微服务,需要结合一个个的框架,哪怕是SpringInitializr这样的工具,也只能帮助我们搭建项目。我们还需要配合其它工具,一起搭建出一个基本的系统。对于前端应用也是类似的,若是Angular这样大而全的框架,时间花费倒也是不多。如React这种需要组合的、小而美的框架,使用官方的create-react-app也很难做出我们想要的东西,寻找一个合适的脚手架是一个更好的选择。
这时,我们大抵可以,直接使用技术栈+boilerplate又或者是starter等关键词进行搜索,如reactboilerplate。如果其中找到的组合技术栈,不符合自己的要求,那么再加上相应技术栈的关键字,如reactreduxboilerplate即可。有意思的是,在这时使用Google会比GitHub方便一些。
温馨提醒:我们需要衡量:修改脚手架的成本,是否比自己重头写快。
寻找awesome-xxx:探索可能性
练习新的框架,我总习惯于,编写一系列相关的DEMO项目,然后使用awesome-xxx探索可能性。
Awesome-xxx系列,是GitHub上最容易赚star的类型。但凡是有一定知识度的领域、语言、框架等,都有自己的awesome-xxx系列的项目,如awesome-python,awesome-iot,awesome-react等等。在这样的项目里,都以一定的知识体系整理出来的,从索引和查阅上相应的方便。如果你想进入一个新的领域,会尝试新的东西就搜索awesomexxx吧。
温馨提醒:awesome-xxx只意味着它们包含尽可能多的资料,并不代表它们拥有所有相关的库。
模仿轮子的轮子
大学时,我在练习写嵌入式操作系统,uC/OS-II对于初学者的我来说,太复杂了——有太多无关的代码。便在网上找寻相关的实现,也便是找到了一些,在那的基础上一点点完善操作系统。
学习一个成熟的框架,直接阅读现有源码的成本太高,毕竟也不经济。最好的方式,就是去造轮子。从模仿轮子之上,再去造轮子,是最省力气的方式。再配合《造轮子与从Github生成轮子》一文,怕是能写一系列的框架。而造一个相似轮子的想法,往往很多人都有。尤其是一个成熟的框架,往往有很多仿制品。
于是,当你想了解一个框架,造个轮子,不妨试试搜索xxx-like或者xxx-likeframework,中文便是仿react框架或者类react。如我们在Google上搜索react-like就会搜索到inferno。不过,按GitHub的尿性,要搜索到这样的框架,并不是一件容易的事。这时Google往往比GitHub搜索好用。
所以建议:平时上班休息时,搜索相关的轮子,回家就可以造轮子了。
学习资源
GitHub上拥有大量的学习资源,从各类的文章到笔记,还有各式各样的电子书。如:
只需要搜索:类型+笔记,如操作系统笔记就能找到一些操作系统相关的笔记。只需要搜索:书名就能找到一些和这本书相关的资源,如重构改善既有代码的设计。
与此同时,GitHub上还会搜索到各种未经授权英文书籍的翻译,又或者是各种电子书的PDF版。作为多本书的作译者,当然不鼓励GitHub上找到一些盗版书。
而在GitHub上又有一些库,可以提供相应的学习资源,如free-programming-books-zh_CN,即免费的编程中文书籍索引。
建议:请尊重版权,哈哈哈。
密钥/密码
GitHub上有太多这样的东西,尽管我没有能赶上个好时候,找到一个合适的密钥。有相关多的资料泄漏和数据库被扒,和GitHub上存在的密钥和密码有关。
不过,好在GitHub已经在着手解决这个问题:自动删除相关的提交、代码警告等等。
私有、商用的SDK或代码
总有人,会将一些商用的代码,或者公司内部的代码,提交到GitHub上。如果你偶尔看到这样的代码,除了每一时间告诉作者,还可以偷偷Clone一下代码——虽然这样做不对,但是我还是想看。
如在ThoughtWorks的面试流程里,有一个步骤是代码编程的作业,个人的实现是不能公开出来的。接到一份作业的时候,总会去GitHub搜索相应的代码是否被提交了。提交了,倒是也得提醒一下相应的候选人。
过去,我在使用Phaser编写应用的时候,对应的粒子系统是收费的。由于我只是尝试这个粒子系统,便没有购买的想法。我一想GitHub上可能有,于是搜索了对应的particle-storm.js,然后就中奖了。就便愉愉快快地去写我的Hello,World,最后发现它太耗费资源了,便放弃了。
建议:一旦你在GitHub上拿到别人的商用代码,请仅用于学习,并时刻保持低调。稍有不慎,有牢狱之灾。
数据及数据制作工具
当我们需要数据的时候,就会考虑写爬虫。于是GitHub上充满了各各样的式爬虫,除此还有得同学把爬虫数据都放在上面了。某次,当我在玩ElasticSearch搜索引擎的时候,突然需要一些真实的数据用来测试。便得找爬虫,就在GitHub上,找到了大众点评的一些爬虫。
这个关键词,就是:scrapydianping.com,得来不费功夫。
除此,在AI相当流行的今天也是如此,也可以搜索到其它同学训练好的模型。
结论
试试你的GitHub搜索功能吧。
关于扒源码分享网站到此分享完毕,希望能帮助到您。
