|
|
GitHub 不仅是维护代码的好工具,而且是学习和成长的好工具。身为一个软件开发者,我一直在寻找有用的 GitHub 仓库,从中学习和发现灵感。以下是我最喜欢的 10 个仓库。0 U F) c, o/ [. S) S# k/ w/ X3 U
1、构建你自己的 X$ L, B# H. q- ~& \
GitHub stars: 92.4k
) E. C4 ?+ l9 ]! J0 i# f! ~ 如果你想要做些什么,并且想要获得一些关于如何实现它的指导,这是一个很好的资源。通过浏览列表,你还会发现很多真正有趣的事情。4 i z3 W: q8 z2 m
地址:6 [! K" z, X2 F
https://github.com/danistefanovic/build-your-own-x' `, Q# a4 K) d8 H3 N- d, J
9 q6 G% \6 ?2 A) S1 t: n0 @, b9 V2、JavaScript 算法
' r- F9 R- a# Z9 H1 R3 E4 \GitHub stars: 92.1k; ^ w0 y# C+ g0 C- l* Q
一个区别是,软件工程师和软件开发人员更容易掌握算法和数据结构。但是,不管你的背景是什么,这个仓库提供了很多不同的算法,一个详尽的数据结构列表,还有你可能在软件工程面试中遇到的一些典型问题的答案。
5 `# [4 y8 ^0 M6 @地址:
5 _! M$ Z9 U4 L3 mhttps://github.com/trekhleb/javascript-algorithms+ m' c$ I5 V1 X5 u
, {; L' X2 Z0 @+ {
3、OSSU! }/ A8 S6 `7 }' }
GitHub stars: 72.8k; d5 A; I" R2 {& D
不管你是一个从事编程的人,还是一个已经在业界自学的开发者, OSSU 的课程为所有想要学习计算机科学的人提供了大量的免费学习资源。: f2 _# ]9 X- ?3 t( c6 _) g: I
地址:
4 f5 o" N( C8 a1 Z. S/ Thttps://github.com/ossu/computer-science
( O. m! @4 F$ K1 s
4 | {! D, Q2 Z% B6 T6 O8 y) a4 k5 d8 N4、代码 30 秒
* t9 C- O" ]6 {( V% JGitHub stars: 72.8k+ B: _% a+ B/ l m7 |
超过 100 个代码段,涵盖了 JavaScript 中的各种内容,从典型的算法,到你可能会发现自己需要完成的常见任务。非常值得一看!
' b6 u1 w/ m% B- ^# y% k; f8 s地址:! l* a8 L) A) X4 d9 U
https://github.com/30-seconds/30-seconds-of-code
# j& p% M) ~: D3 ~9 V5 D8 f; r
) P) M9 G- b# x3 z# E* Z3 j$ B* P d5、真实世界示例应用
7 l, s/ R: P h; _GitHub stars: 52.6k
; {& S4 L- B2 j; P/ q" `3 p 有没有想过要学习如何使用特定的语言 / 技术开发适当的应用?这就是为你准备的 GitHub 仓库!这超出了典型的“ to-do”应用程序, RealWorld 的示例使整个“Medium-style”应用程序更加丰富,包括了所有的钟声、哨声和最佳实践!
, N' o! W" A' f1 u& q地址:
% h @9 X& K4 o2 e( G O+ phttps://github.com/gothinkster/realworld
7 n% m$ r% z8 a* b- o/ l2 P7 D2 i9 ~$ l* A9 y. [9 Z
6、免费编程书籍
7 A! Y/ [# d3 z. |4 q( Z# t! `" ]8 uGitHub stars: 170k
2 s' i2 o7 R2 y 听起来确实如此。大量的免费编程书籍可以帮助你的知识和理解更上一层楼。( D8 {4 E- k0 c
地址:# Z' h* q0 \( y0 v
https://github.com/EbookFoundation/free-programming-books+ h9 \8 I3 P0 x1 b
( Q; _1 q& T" k2 m0 I7、系统设计入门
6 p( o" Z# m5 c9 u( ~* K; }* J! H% ~GitHub stars: 118k, B2 h) X' E% D# i
如果你正在寻找高级软件工程(或更高的)职位,那么拥有设计大型系统的能力是很有价值的,很多大型技术公司都希望你具备这一能力。这也是一个重要技巧,如果你打算为你正在做的任何工作构建任何大型系统的话。这份指南提供了大量的信息来帮助你做好准备。- B) y9 e3 r! u+ B0 y7 }
地址:
/ e, C9 C$ ^ vhttps://github.com/donnemartin/system-design-primer
- Z. ?7 X. h. b3 r s5 h# v2 z' x& G- T5 k8 Y) p: \" n
8、了不起的 Python j. B$ h! X; G( o
GitHub stars: 92.2k
& a0 ]$ d3 Q( {9 c& M; [' L Python 内建了一系列不同的库、框架和技术的列表。对那些想要学习一种新的编程语言或仅仅想要提高对已有 Python 的了解的人来说,这是一个极好的指南。+ b5 c0 z. n+ V6 X2 L9 \
地址:1 v- y* r( q# v7 c, r: ?
https://github.com/vinta/awesome-python
& h! s6 w' l. o, N% B, T2 Z9 x2 `! k* y. D# { H2 M
9、node 最佳实践0 X" K2 @* O/ s+ ~" f& K0 r
GitHub stars 58.6k% |; e, C; U; B% k+ v* k
我总是找不到足够的最佳实践指南。所以当发现这个 GitHub 仓库时,我觉得必须把它包括进去。自学的坏处之一就是,你并不总是从最佳实践开始。因此,拥有这些详细的指南可以帮助你快速提高技能。
0 q2 R, a+ z+ y }# {地址:2 q6 q. |* x) _% A7 Y- k
https://github.com/goldbergyoni/nodebestpractices
7 l9 |$ u4 l- h- a& f8 m0 \1 N; T# \0 T- H6 `$ y
10、超棒的机器学习
B |9 Q( c1 \1 G# W: H2 FGitHub stars: 47.8k
" f ^0 J6 T" |" ? 就像我们之前看到的 Python 清单一样,这个 GitHub 仓库包含了大量宝贵的机器学习资源。+ K( f. X# K1 p
地址:
7 S0 P6 P. t# a% a g% Hhttps://github.com/josephmisiti/awesome-machine-learning$ M# S" S% ^6 q. m
3 y1 k2 `, \- W% C5 \2 v+ F: E |
|