GitHub 标星 1.6w+,我发现了一个宝藏项目,作为编程新手有福了!

大家好,我是 Rocky0429,一个最近老在 GitHub 上闲逛的蒟蒻...

特别惭愧的是,虽然我很早就知道 GitHub,但是学会逛 GitHub 的时间特别晚。当时一方面是因为菜,看着这种全是英文的东西难受,不知道该怎么去玩,另一方面是一直在搞 ACM,没有做一些工程类的项目,所以想当然的以为和 GitHub 也没什么关系(当然这种想法是错误的)。

后来自己花了一个星期看完了 Python 的基础知识,就想着找点项目看一看,学一学,练一练,这个时候我才真正的去了解 GitHub,开始了在 GitHub 的瞎逛之旅,在开始之初,随之而来的问题是我不知道哪些项目当时还是新手的我,哪些项目是好项目,哪些项目好玩有价值。

虽然现在我已经在 GitHub 上逛的相当流畅,但我还是想如果有一个东西可以收集这些对新手友好的东西,那么我当时可以少走更多的弯路,节省更多的时间吧。

那么有这么一个东西么?

有的,而且已经做了三年多,这就是HelloGitHub,一个分享 GitHub 上有趣,入门级的开源项目。

GitHub 网址:https://github.com/521xueweihan/HelloGitHub

在项目中,内容每月 28 号以月刊的形式更新发布,主要是面向编程新手、热爱编程、对开源社区感兴趣人群的项目。更新的内容主要包括:各种语言的流行项目、入门级项目、让生活变得更美好的工具、书籍、学习心得笔记、企业级项目等。

这些项目都有一些共同的特征,那就是很酷,非常容易上手的项目,编程的魅力和便捷体验起来就是这么简单。

再次给出 GitHub 地址:
https://github.com/521xueweihan/HelloGitHub

下面我们就来看看,这个项目具体包括啥,我们以最新的月刊(43 期)为例。

0x00 简介

0x01 目录

0x02 内容

每个类型的项目我们挑一个来看。

C 项目

tmux:一个终端复用工具,可极大的提高工作效率。
提供了强劲的、易于使用的命令行界面;
可横向和纵向分割窗口;
窗格可以自由移动和调整大小,或直接利用四个预设布局之一;
可在多个缓冲区进行复制和粘贴;
可通过交互式菜单来选择窗口、会话及客户端;
等等。

C# 项目

BenchmarkDotNet:功能强大的用于基准测试 .NET 库。

C++ 项目

dbg-macro:打日志是 C++ 开发中必不可少的一种 debug 方式,dbg-macro 受 rust-lang 中 的 dbg 启发,提供比 printf 和 std::cout 更好的宏函数。主要有如下特点:
美观的彩色输出(当输出不是交互式终端时,颜色将自动禁用);
兼容 C++11,并且是 header-only;
支持基础类型和 STL 容器类型的输出;
除了基本信息外,还输出变量名和类型;
启用 DBG_MACRO_DISABLE 生成 release 版。

#include <vector>
#include <dbg.h>

// You can use "dbg(..)" in expressions:
int factorial(int n) {
  if (dbg(n <= 1)) {
    return dbg(1);
  } else {
    return dbg(n * factorial(n - 1));
  }
}

int main() {
  std::string message = "hello";
  dbg(message);  // [example.cpp:15 (main)] message = "hello" (std::string)
  const int a = 2;
  const int b = dbg(3 * a) + 1;  // [example.cpp:18 (main)] 3 * a = 6 (int)
  std::vector<int> numbers{b, 13, 42};
  dbg(numbers);  // [example.cpp:21 (main)] numbers = {7, 13, 42} (size: 3) (std::vector<int>)
  dbg("this line is executed");  // [example.cpp:23 (main)] this line is executed
  factorial(4);
  return 0;
}

Go 项目

go-admin:基于 Golang 语言的数据可视化与管理平台。特性如下:

??
高生产效率:10 分钟内做一个好看的管理后台;

??
主题:默认为 adminlte,更多好看的主题正在制作中,欢迎给我们留言;

??
插件化:提供插件使用,真正实现一个插件解决不了问题,那就两个;

?
认证:开箱即用的 rbac 认证系统;

??
框架支持:支持大部分框架接入,让你更容易去上手和扩展。

Java 项目

eladmin:基于 Spring Boot 2.1.0、Vue 的前后端分离的后台管理系统,支持数据字典与数据权限管理、一键生成前后端代码、前端菜单动态路由等。基于 Spring Boot2.1.0 框架,涉及的技术栈:非关系数据库 redis、接口测试工具 swagger、druid 数据源驱动、邮件依赖(javax.mail)、三方支付和云存储 SDK、页面模板引擎 freemarker。技术栈丰富,初学者可以作为实战项目学习和使用。

JavaScript

chart-race-react:一个简单易用的 Bar Chart Race(长条图赛跑动画) React 组件。示例代码:


import ReactDOM from 'react-dom';
import BarChart from 'chart-race-react';

ReactDOM.render(<BarChart />, document.getElementById('root'));

Python 项目

TagUI-Python:一个 Python 自动化操作的库。比如:自动打开网页并截图,示例代码:

t.init()
t.url('https://www.google.com')
t.type('q', 'decentralization[enter]')
t.snap('page', 'results.png')
t.close()

Ruby 项目

shift:一个 Ruby 语言写的在线 MySQL 数据库迁移工具。

Swift 项目

Percent:让 Swift 语言支持百分比类型,消除精度缺失的烦恼。示例代码:

import Percent

10% + 5.5%
//=> 15.5%
-10% / 2
//=> -5%

其他

cascadia-code:微软开源的一套等宽字体,有趣的是可以组合字符创建新的字形。组合效果如下:

开源书籍

python_ebook:Python 编程相关的电子书资源集合项目。

book:(英文)《Cosmic Python》讲述如何管理复杂性的 Pythonic 应用程序结构的书籍。

教程

BigData-Notes:大数据入门教程,该教程介绍了大数据常用技术栈的基础和核心知识。内容涵盖:Hadoop、Spark、Storm、HBase、Hive、ZooKeeper、Kafka 等。

机器学习

dimensionality_reduction_alo_codes:该项目使用 Python 实现了 11 种经典的数据抽取(数据降维)算法。同时附有相关资料、展示效果,适用于机器学习初学者和刚刚入坑数据挖掘的小伙伴。

0x03 写在之后

以上,就是今天分享的内容,希望更多的人能够知道 HelloGitHub 这个项目,内容已经在这了,万事俱备,差的就是你学习的驱动力和对作者 Star 的支持了。

让走在开源路上的开发者不再孤单,让想进入开源世界的人不再畏惧。

看完有所收获?点个在看,让更多人可以看到~谢谢啦!

今天的分享就到这,拜里个拜~

?? 看完有所收获?希望爱学习的你不要吝啬三连击哟[点赞 + 收藏 + 评论]~

??可以关注我的原创公众号:「Python空间」,更多优质的技术文章第一时间更新。最后送你新人大礼包一份,关注微信公众号,后台回复:“掘金” 即可获取!

作者Info:

【作者】:Rocky0429

【原创公众号】:Python空间。

【简介】:CSDN 博客专家, 985 计算机在读研究生,ACM 退役狗 & 亚洲区域赛银奖划水选手。这是一个坚持原创的技术公众号,每天坚持推送各种 Python 基础/进阶文章,数据分析,爬虫实战,数据结构与算法,不定期分享各类资源。

【转载说明】:转载请说明出处,谢谢合作!~

原文地址:https://www.cnblogs.com/Rocky0429/p/11957003.html

时间: 2024-10-01 06:59:34

GitHub 标星 1.6w+,我发现了一个宝藏项目,作为编程新手有福了!的相关文章

【转载】如何在 Github 上发现优秀的开源项目?

之前发过一系列有关 GitHub 的文章,有同学问了,GitHub 我大概了解了,Git 也差不多会使用了,但是还是搞不清 GitHub 如何帮助我的工作,怎么提升我的工作效率? 问到点子上了,GitHub 其中一个最重要的作用就是发现全世界最优秀的开源项目,你没事的时候刷刷微博.知乎,人家没事的时候刷刷 GitHub ,看看最近有哪些流行的项目,久而久之,这差距就越来越大,那么如何发现优秀的开源项目呢?这篇文章我就来给大家介绍下. 1. 关注一些活跃的大牛 GitHub 主页有一个类似微博的时

(转载)如何在 Github 上发现优秀的开源项目?

转载自:传送门 之前发过一系列有关 GitHub 的文章,有同学问了,GitHub 我大概了解了,Git 也差不多会使用了,但是还是搞不清 GitHub 如何帮助我的工作,怎么提升我的工作效率? 问到点子上了,GitHub 其中一个最重要的作用就是发现全世界最优秀的开源项目,你没事的时候刷刷微博.知乎,人家没事的时候刷刷 GitHub ,看看最近有哪些流行的项目,久而久之,这差距就越来越大,那么如何发现优秀的开源项目呢?这篇文章我就来给大家介绍下. 1. 关注一些活跃的大牛 GitHub 主页有

如何在 Github 上发现优秀的开源项目?

之前发过一系列有关 GitHub 的文章,有同学问了,GitHub 我大概了解了,Git 也差不多会使用了,但是还是搞不清 GitHub 如何帮助我的工作,怎么提升我的工作效率? 问到点子上了,GitHub 其中一个最重要的作用就是发现全世界最优秀的开源项目,你没事的时候刷刷微博.知乎,人家没事的时候刷刷 GitHub ,看看最近有哪些流行的项目,久而久之,这差距就越来越大,那么如何发现优秀的开源项目呢?这篇文章我就来给大家介绍下. 1. 关注一些活跃的大牛 GitHub 主页有一个类似微博的时

GitHub 万星推荐:黑客成长技术清单

GitHub 万星推荐:黑客成长技术清单 导语:如果你需要一些安全入门引导,"Awesome Hacking"无疑是最佳选择之一. 最近两天,在reddit安全板块和Twitter上有个GitHub项目很火,叫"Awesome Hacking". "Awesome Hacking"在reddit上有超过四百个赞,但管理员后来认为不适合该板块(Awesome类项目没有新的内容),给了"reject". 这个项目由Twitter账

发现了一个非常棒的pyqt5的例子集

发现了一个非常棒的pyqt5的例子集 https://github.com/892768447/PyQt 各种各样的PyQt测试和例子 [Python3.4.4 or Python3.5][PyQt5] 1.常见例子 1.1 右下角弹出框 1.2 单实例应用 1.3 字体测试 1.4 程序重启 1.5 验证码控件 1.6 表格复制 1.7 梦幻树 1.8 自定义属性测试 1.9 自动更新 1.10 自定义QWidget的QSS样式 1.11 浏览器获取Cookie 1.12 全局热键 1.13

用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。

最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量.<s:iterator>标签有一个value属性,用来存放在Action类的方法中存数据的list集合,还有一个id,好像是说指定集合的索引的意思,就是给list集合遍历出来的每个对象加上一个数字标签,反正我是这么理解的,没用过.还有一个很重要,就是var变量,我在s:iterator按ctr

惊艳发现VS工具python项目Search Paths的应用

之前,在没有发现VS工具python项目Search Paths的应用时,举个例子:假如项目的文件目录如下: maintest/maintest.py想要使用common/tools.py文件时,不得不在maintest.py中的代码添加这样的代码: import sys import os from sys import path parentdir = os.path.join( os.path.dirname(os.path.dirname(__file__))) path.append(

发现Ubuntu一个有趣的bug

ubuntu作为linux的一个优秀的发行版,拥有很华丽炫酷的桌面,我用的小Kylin更是人性化的设计了很多对中文的良好支持. 但Ubuntu比较还是比较年轻,今天就发现了一个小bug. 首先我先用鼠标拖一个框出来,当然,由于截屏的原因,鼠标被隐藏了. 有人问了,这不是很正常么,选取一批文件的时候不都用选取框么? 那么这张呢? 大家该说了,怎么如此多的框啊... 这个bug是你在鼠标拖动一个选取框时,按下右Ctrl和右Alt之间的那个键,是一个书页形状的键,这个键有弹出右键菜单的功能. 好的,在

XA中使用dblink发现的一个oracle bug

最近监控系统日志时发现出现一个新的错误信息,很奇怪,之前没有过.如下: ORA-24777:不允许使用不可移植的数据库链路. 跟踪程序进去发现是通过dblink查询某个远程库表,而且由于使用了XA分布式事务数据库连接.大家也许都知道XA有不少限制条件,之前也遇到过,都绕着走了.但是最近没有调整过程序也没有改变过dblink的配置,怎么回事呢?只能网上搜索,结果有人遇到过,说是oracle dblink改成shared就行了.个人觉得这个说法靠谱.于是现在测试系统上试了一下,果然有效. 可以为什么