{"id":15132598,"url":"https://github.com/pkuflyingpig/cs-self-learning","last_synced_at":"2026-01-30T10:24:57.734Z","repository":{"id":37019152,"uuid":"419347358","full_name":"PKUFlyingPig/cs-self-learning","owner":"PKUFlyingPig","description":"计算机自学指南","archived":false,"fork":false,"pushed_at":"2025-06-16T13:25:01.000Z","size":64580,"stargazers_count":64474,"open_issues_count":118,"forks_count":7408,"subscribers_count":338,"default_branch":"master","last_synced_at":"2025-06-16T14:43:33.073Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://csdiy.wiki","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PKUFlyingPig.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-10-20T13:43:42.000Z","updated_at":"2025-06-16T13:55:28.000Z","dependencies_parsed_at":"2023-12-14T06:21:47.674Z","dependency_job_id":"5331a8c4-483b-45b5-bbf2-0de16306daa1","html_url":"https://github.com/PKUFlyingPig/cs-self-learning","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/PKUFlyingPig/cs-self-learning","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PKUFlyingPig%2Fcs-self-learning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PKUFlyingPig%2Fcs-self-learning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PKUFlyingPig%2Fcs-self-learning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PKUFlyingPig%2Fcs-self-learning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PKUFlyingPig","download_url":"https://codeload.github.com/PKUFlyingPig/cs-self-learning/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PKUFlyingPig%2Fcs-self-learning/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260606509,"owners_count":23035353,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-09-26T04:21:31.629Z","updated_at":"2026-01-30T10:24:57.728Z","avatar_url":"https://github.com/PKUFlyingPig.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\" markdown=\"1\"\u003e\n   \u003csup\u003eSpecial thanks to:\u003c/sup\u003e\n   \u003cbr\u003e\n   \u003ca href=\"https://opensource.automq.com\"\u003e\n      \u003cimg alt=\"AutoMQ sponsorship\" width=\"400\" src=\"https://github.com/user-attachments/assets/3bfff2bc-8da2-4936-9354-8834a347a70c\"\u003e\n   \u003c/a\u003e\n\n### [学了那么多分布式理论，“工业级”的代码长什么样？](https://opensource.automq.com)\n\n[AutoMQ 带你深入一线代码，直观理解数据结构与分布式系统的工程实践。](https://opensource.automq.com)\n\n\u003cbr\u003e\n\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=./docs/images/title.png \u003e\n\u003c/div\u003e\n\n# CS 自学指南\n\n\u003e _Everyone should enjoy CS if you have a good teacher to teach you a good course._\n\n\u003ca href=\"https://trendshift.io/repositories/4643\" target=\"_blank\"\u003e\u003cimg src=\"https://trendshift.io/api/badge/repositories/4643\" alt=\"PKUFlyingPig%2Fcs-self-learning | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"/\u003e\u003c/a\u003e\n\n[![Website](https://img.shields.io/badge/website-csdiy.wiki-blue)](https://csdiy.wiki)\n[![License](https://img.shields.io/github/license/PKUFlyingPig/cs-self-learning)](https://github.com/PKUFlyingPig/cs-self-learning/blob/master/LICENSE)\n[![Issues](https://img.shields.io/github/issues/PKUFlyingPig/cs-self-learning)](https://github.com/PKUFlyingPig/cs-self-learning/issues)\n[![Stars](https://img.shields.io/github/stars/PKUFlyingPig/cs-self-learning)](https://github.com/PKUFlyingPig/cs-self-learning)\n\n新冠肆虐，网课当道，CS 爆火，这一系列的事件都让自学计算机成为了一种潮流。\n\n随着欧美众多名校将质量极高的计算机课程全部开源，自学 CS 成了一件可操作性极强的事情。毫不夸张地说，只要你有毅力和兴趣，自学的成果完全不亚于你在国内任何一所大学受到的本科 CS 教育（当然，这里单指计算机专业领域，大学带给你的显然不止是专业知识）。\n\n我很庆幸在自己大一的时候就选择了自学 CS 这条路，它让我爱上了计算机这门学科，也无比丰富了我的视野。\n\n但同时，自学这条路也有很多困难和阻力：课程繁多不知如何选择，资料零散甚至残缺，作业难度不知深浅，课内任务还需要花时间应付······这些主客观因素叠加到一起，使得好课虽多，却只能在收藏夹里吃灰。\n\n在大学的第四个年头，我想把这一路自学走来的经验和教训，把那些让我受益终身的课程记录下来，分享给大家，形成了这本 CS 自学指南，以期能给所有想自学计算机的朋友一点帮助。\n\n我的目标是让一个刚刚接触计算机的小白，可以完全凭借这些开源社区的优质资源，少走弯路，在 2-3 年内成长为一个有扎实的数学功底和代码能力，经历过数十个千行代码量的 Project 的洗礼，掌握至少 C/C++/Java/JS/Python/Go/Rust 等主流语言，对算法、电路、体系、网络、操统、编译、人工智能、机器学习、计算机视觉、自然语言处理、强化学习、密码学、信息论、博弈论、数值分析、统计学、分布式、数据库、图形学、Web 开发、云服务、超算等等方面均有所涉猎的全能程序员。此后，无论是选择科研还是就业，我相信你都会有相当的竞争力。\n\n你可以[在线免费阅读这本书](https://csdiy.wiki)。英文版请移步[这里](https://csdiy.wiki/en/)。\n\n## 如何成为贡献者\n\n一个人的力量终究是有限的，对于书中任意章节你若有想要补充的内容，欢迎各位提出 [Pull Request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork)。如果你想贡献一门新的课程，可以参考目前 repo 中的 [template](./template.md) 文件作为模版，并在 [mkdocs.yml](./mkdocs.yml) 文件中添加其 navigation，当然你还可以在 [CS 学习规划](./docs/CS学习规划.md) 里的对应模块为其添加言简意赅的导语。如果你有想推荐的书籍，请参考 [好书推荐](https://raw.githubusercontent.com/PKUFlyingPig/cs-self-learning/master/docs/%E5%A5%BD%E4%B9%A6%E6%8E%A8%E8%8D%90.md) 模块上方的注释按相应格式添加内容。\n\n对于中英混合排版的要点规范，可以参考[这个仓库](https://github.com/sparanoid/chinese-copywriting-guidelines/blob/master/README.zh-Hans.md)，我们将会对您的 Pull Request 做相应的校对，具体原因参见这个 [issue](https://github.com/PKUFlyingPig/cs-self-learning/issues/114)。\n\n本书支持英文版，因此贡献的内容需要提供对应的英文翻译，具体流程可以参考这个 [issue](https://github.com/PKUFlyingPig/cs-self-learning/issues/222)。\n\n同时由于个人水平有限，书中难免有笔误甚至概念错误之处，也请各位不吝赐教，在 issue 中提出来。\n\n## 关于交流社区的建立\n\n本书支持页面评论功能，因此如果你想自学某课程，可以自己建立群聊后（QQ 微信皆可）在对应的课程页面下方发表评论，注明你的学习目标以及加入交流群的途径。此外，过去已有不少朋友在 issue 里建立了类似群聊，可以自行选择直接加入。\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=PKUFlyingPig/cs-self-learning\u0026type=Timeline)](https://star-history.com/#PKUFlyingPig/cs-self-learning\u0026Timeline)\n\n## ✨ 鸣谢\n\n特别感谢 @[AlfredThiel](https://github.com/AlfredThiel) 为项目制作了精美的 Logo。\n\n\u003c!--  support by https://contrib.rocks --\u003e\n\u003ca href=\"https://github.com/PKUFlyingPig/cs-self-learning/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=PKUFlyingPig/cs-self-learning\"/\u003e\n\u003c/a\u003e\n\n## 许可\n\n项目贡献者编写的部分依照 [MIT LICENSE](https://www.tawesoft.co.uk/kb/article/mit-license-faq)。\n\n其余部分（包括但不限于书中提到的课程资源、开源书籍以及视频内容）遵循原作者规定的许可。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpkuflyingpig%2Fcs-self-learning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpkuflyingpig%2Fcs-self-learning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpkuflyingpig%2Fcs-self-learning/lists"}