摘要:起因对于代码初学者来说,是一个很好的网站。所以我想到了一个方法将自己过的所有优秀项目按仓库大小代码量进行排序,从代码量小的项目开始研究,逐步提升代码能力。
起因
对于代码初学者来说,GitHub 是一个很好的网站。在这里,他们可以学习如何更好地写代码并提高代码能力,学习编码规范,各种框架......
然而对于像我一下的初学者来讲,有时候不知道要如何从 GitHub 的优秀项目中学习、要从何开始阅读源码。
所以我想到了一个方法: 将自己 star 过的所有优秀项目按仓库大小( 代码量 )进行排序,从代码量小的项目开始研究,逐步提升代码能力。
想好了项目的目的,列出以下几种需要用到的技术:
JavaScript
NodeJs
GitHub API
并找到了一个极小的 GitHub API 封装工具: gh.js。
开始 安装项目依赖包# 初始化项目 npm init npm install gh.js # 封装过的 GitHub API npm install chalk # 美化终端命令行工具的字体颜色 npm install ora # 优雅的终端加载条创建项目入口 index.js
const GitHub = require("gh.js") /** * sortByStarredSize * Sort your personal starred repos by size. * * @name sortByStarredSize * @function * @param {String} username The GitHub username. * @param {String} token An optional access token. * @param {Function} callback The callback function. * @return {gh.js} The `gh.js` instance. */ function sortByStarredSize (username, token, callback) { if (typeof token === "function") { callback = token token = undefined } const gh = new GitHub({ token: token }) gh.get(`users/${username}/starred`, { all: true }, (err, repos) => { if (err) { return callback(err) } repos.sort(function (a, b) { return a.size > b.size ? 1 : -1 }) callback(null, repos) }) return gh } module.exports = sortByStarredSize创建测试样例 example.js
const sortGhStarredSize = require(".") // 以大神 Linus Torvalds 的GitHub用户名torvalds为例 const username = "torvalds" sortGhStarredSize(username, (err, repos) => { console.log(err || repos.map(function(c) { return `${c.full_name} => ${c.size} kb` }).join(" ")) })
运行结果如下:
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/108404.html
摘要:说明是一个基于和开发的评论插件。默认值类型布尔值,选填,类似评论框的全屏遮罩效果。默认值类型布尔值,选填,如果当前页面没有相应的且登录的用户属于,则会自动创建。参考类型布尔值,选填,启用快捷键提交评论。 1. 说明 Gitalk 是一个基于 GitHub Issue 和 Preact 开发的评论插件。 Gitalk 的特性: 1、使用 GitHub 登录2、支持多语言 [en, zh-...
摘要:从行,可以看出字符串的存储结构是字符数组。如果不相等,则返回两字符的编码值的差值第行当前字符串和另一个字符串,依次字符比较。如果均相等,则返回两个字符串长度的差值所以要排序,肯定先有比较能力,即实现接口。摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢!这是泥瓦匠的第103篇原创《程序兵法:Java Str...
摘要:题目来源前端实习生面试总结最近开始了几次面试,虽然还不知道结果如何,但是还是要记录下来进行一个总结,同样也希望对正在准备面实习生的童鞋们有所帮助最后一个参数是做什么用的答规定事件是冒泡还是捕获。 最近一直在多看基础的书多码代码准备找实习,在网上也搜罗了不少面经,现在把搜罗到的实习生面试题自己整理一下。 题目来源:前端实习生面试总结最近开始了几次面试,虽然还不知道结果如何,但是还是要记录...
阅读 1373·2021-09-22 16:04
阅读 2759·2019-08-30 15:44
阅读 841·2019-08-30 15:43
阅读 738·2019-08-29 15:24
阅读 1780·2019-08-29 14:07
阅读 1095·2019-08-29 12:30
阅读 1658·2019-08-29 11:15
阅读 2716·2019-08-28 18:08