|
GitHub 不仅是维护代码的好工具,而且是学习和成长的好工具。身为一个软件开发者,我一直在寻找有用的 GitHub 仓库,从中学习和发现灵感。以下是我最喜欢的 10 个仓库。
( g$ _3 `6 F+ ?/ D% y9 l1、构建你自己的 X1 F |. [; f: t8 ^- w D# A
GitHub stars: 92.4k, r" ?+ j8 @% F
如果你想要做些什么,并且想要获得一些关于如何实现它的指导,这是一个很好的资源。通过浏览列表,你还会发现很多真正有趣的事情。
/ s L% B/ ~2 q( l/ k2 G地址:+ ~8 Q. e7 H8 b: q, P5 x$ R4 i
https://github.com/danistefanovic/build-your-own-x
. G! ], A; {: ^ K" D3 I( N0 \7 a# M% d, M5 s
2、JavaScript 算法5 i& Y' h% n: T4 P' ^% N% y
GitHub stars: 92.1k
) X/ H5 b$ h0 u! ~' A% N9 |0 X, M 一个区别是,软件工程师和软件开发人员更容易掌握算法和数据结构。但是,不管你的背景是什么,这个仓库提供了很多不同的算法,一个详尽的数据结构列表,还有你可能在软件工程面试中遇到的一些典型问题的答案。
2 _& j: v" J: z* V) s; k4 q地址:( F5 T+ Y1 T- a
https://github.com/trekhleb/javascript-algorithms
* f5 v* p. ]9 o% ~4 D# K8 e5 C- u! t6 h% b; f- d6 V0 |, W' t/ M/ O
3、OSSU' L3 k, w5 W2 m. T8 O
GitHub stars: 72.8k
8 y% c( H' X5 | 不管你是一个从事编程的人,还是一个已经在业界自学的开发者, OSSU 的课程为所有想要学习计算机科学的人提供了大量的免费学习资源。
- |: j/ X6 l) i地址:
9 `& ?( P& j8 ^3 L3 hhttps://github.com/ossu/computer-science
1 L; t1 M6 ~5 m% \! |
# S8 ^0 Z5 ]; a' } @4、代码 30 秒( \6 R9 z# ^5 Z4 z9 _
GitHub stars: 72.8k1 y6 c) ]- o, Y3 ^* S3 S9 t; X
超过 100 个代码段,涵盖了 JavaScript 中的各种内容,从典型的算法,到你可能会发现自己需要完成的常见任务。非常值得一看!
6 e# x5 Y. S6 p6 x5 |0 D地址:
% T8 N# A& E. yhttps://github.com/30-seconds/30-seconds-of-code
$ n. f6 e/ T+ M7 K0 A' ^& n& _, J
5、真实世界示例应用, M3 H' O+ M- |/ X1 I. r( y
GitHub stars: 52.6k
1 F; M* ~! ^7 C, @) |# r( x' ] 有没有想过要学习如何使用特定的语言 / 技术开发适当的应用?这就是为你准备的 GitHub 仓库!这超出了典型的“ to-do”应用程序, RealWorld 的示例使整个“Medium-style”应用程序更加丰富,包括了所有的钟声、哨声和最佳实践!8 \! n% q9 [5 N& @+ [
地址:: b7 U3 s3 T+ S: D6 b& Q- z G7 g$ p
https://github.com/gothinkster/realworld! r% Q; K" D$ ?
: h) D# H* V; ~; k X& l( `4 ^
6、免费编程书籍+ q* T% O* Y6 P9 }9 x
GitHub stars: 170k2 P; k7 S/ I* y
听起来确实如此。大量的免费编程书籍可以帮助你的知识和理解更上一层楼。
( [% S/ W ? a! k2 I& B% b地址:& p c/ ]; x5 k
https://github.com/EbookFoundation/free-programming-books
' C6 H, L; H! o- A3 V. |7 [
0 w, a5 r5 n' J* X# n7、系统设计入门
+ J/ {- V7 f3 N7 W6 JGitHub stars: 118k
1 w) K T1 u% X7 r2 a4 p$ Z6 v1 g 如果你正在寻找高级软件工程(或更高的)职位,那么拥有设计大型系统的能力是很有价值的,很多大型技术公司都希望你具备这一能力。这也是一个重要技巧,如果你打算为你正在做的任何工作构建任何大型系统的话。这份指南提供了大量的信息来帮助你做好准备。4 u, k! V! r+ t. u7 v" }4 H' E
地址:
: i/ O1 \+ A( g0 M$ zhttps://github.com/donnemartin/system-design-primer
; F, s2 E7 M& p+ U" Q) l1 A. c; s% v
8、了不起的 Python
( O9 ^: z5 R' r! o. zGitHub stars: 92.2k
* }$ l. @8 C) r. ] Python 内建了一系列不同的库、框架和技术的列表。对那些想要学习一种新的编程语言或仅仅想要提高对已有 Python 的了解的人来说,这是一个极好的指南。
( s, ]+ @4 @- n; N/ v8 G地址:
% T$ _$ a( ^' \https://github.com/vinta/awesome-python
% C7 ?) u7 c/ {" q8 M) H
' e5 T/ `) ]- t$ x8 F; Q# y9 m9、node 最佳实践7 c/ L1 n$ R# j+ }- O/ g2 G6 u2 ^
GitHub stars 58.6k
* ?$ Z3 u8 A) c# W- d; l 我总是找不到足够的最佳实践指南。所以当发现这个 GitHub 仓库时,我觉得必须把它包括进去。自学的坏处之一就是,你并不总是从最佳实践开始。因此,拥有这些详细的指南可以帮助你快速提高技能。, |+ e( {; F& a
地址:
! x; S @1 K/ w3 P+ khttps://github.com/goldbergyoni/nodebestpractices, w' J: z; f" G
" n1 q% @/ Y) H1 P) y3 _
10、超棒的机器学习
, u; ? v$ t A7 N- Z& r U: YGitHub stars: 47.8k# H0 ~0 l6 m8 l2 s+ \
就像我们之前看到的 Python 清单一样,这个 GitHub 仓库包含了大量宝贵的机器学习资源。) d, V/ M; `( r" c1 ^4 e
地址:
& r3 p% U" x( [. N' K+ M2 T: v# Thttps://github.com/josephmisiti/awesome-machine-learning
' D. b% l$ }7 d4 Q" p/ t
( {5 A# @8 F3 L1 p* C |
|