Index of Free Chinese Programming Books
Free index of Chinese programming books: free-programming-books-zh_CN(The project on GitHub requires a special network connection for access within China.)
Chinese version: https://github.com/justjavac/free-programming-books-zh_CN
Original English version: https://github.com/EbookFoundation/free-programming-books
This is a project originating from the GitHub community. It collects a large number of free programming books in Chinese and compiles them into a catalog. If you are a beginner in programming and don’t know where to find free learning resources, you should definitely come here – this site contains books on almost every programming language available.
Table of Contents
operating system
- Open Source Travel Guide
- Bird Ge's Linux Secrets
- Linux Command Line (Chinese and English versions)
- Linux Device Drivers (3rd Edition)
- In-depth analysis of the Linux kernel source code
- UNIX TOOLBOX
- Docker Chinese Guide
- Docker: From Getting Started to Practical Applications
- Practical Guide to Getting Started with Docker
- Docker Cheat Sheet
- Getting started with FreeRADIUS for beginners?
- Mac Development Configuration Guide
- FreeBSD User Manual
- Linux Command Line (Chinese Version)
- Linux Building Guide
- Quick Tutorial on Linux Tools
- Linux Documentation (Chinese Version)
- Embedded Linux Knowledge Base (Chinese version of eLinux.org)
- Understanding Linux processes
- The art of the command line
- A Beginner's Guide to SystemTap
- Reflections on Operating Systems
Intelligent systems
- Build an IoT system step by step.
distributed system
- Moving towards distribution
Principles of Compilation
- Open Class on "The Structure and Interpretation of Computer Programs" Translation Project
Functional concepts
- Idiot function programming
Computer graphics
- OpenGL Tutorial
- WebGL Self-Study Website
- "Real-Time Rendering 3rd": A Concise Summary
WEB server
- Nginx Development: From Beginner to Expert (produced by the Taobao team)
- Nginx Tutorial: From Beginner to Expert (PDF version, produced by Ops Survival Time)
- Best Practices for OpenResty
- Apache Chinese Manual
version control
- Git Tutorial (This tutorial was written by Liao Xuefeng. If you find it useful, you can purchase it from iTunes.)
- Git – A Quick Guide
- GIT Basics That Even Monkeys Can Understand
- Git Reference Manual
- Pro Git
- Pro Git Chinese Version (organized on GitBook)
- Git Magic
- GotGitHub
- The Official Git Guide
- Chinese Version of the Git Community Book
- Mercurial Tutorial
- HgInit (Chinese version)
- Immersive learning of Git
- Git-Cheat-Sheet (Thanks to @flyhigher139 for translating the Chinese version)
- GitHub Secrets
- GitHub Help Documentation
- Git-Flow Checklist
- SVN Manual
- GitHub Tour Guide
editor
- Exvim-vim transformed into an IDE project
- A Clumsy Approach to Vimscript: The Chinese Translation
- Vim Chinese Documentation
- Get what you need: Use Vim just like an IDE.
- Vim Practical Tutorial
- Chinese Version of the Atom Flight Manual
- Markdown · A Simple World
- Become an expert in using Emacs within just one year.
- Emacs Survival Guide
- Official Atom Manual
NoSQL
- Informal Discussion on NoSQL Databases
- Design and Implementation of Redis
- Redis Command Reference
- Redis 3.0 code with detailed annotations
- Redis 2.6 code with detailed annotations
- The Little MongoDB Book
- The Little Redis Book
- Neo4j Chinese Manual (Simplified Version) v1.8
- Chinese resources in the Neo4j.rb file
- Disque User Guide
- Design and Implementation of Apache Spark
PostgreSQL
- Chinese Documentation for PostgreSQL 8.2.3
- Chinese Documentation for PostgreSQL 9.3.1
- Chinese Documentation for PostgreSQL 9.5.3
MySQL
- The data structures and algorithmic principles behind MySQL indexes
- 21-Minute MySQL Introduction Tutorial
Management and Monitoring
- Chinese Guide for ELKstack
- Mastering Elasticsearch (Chinese Edition)
- ElasticSearch Official Guide
- Elasticsearch Official Guide (Chinese Version)
- Best Practices for Logstash
- Chinese Version of Puppet 2.7 Cookbook
Project-related
- Continuous Integration (2nd Edition) (Yiyan Network)
- Series of columns on automating development processes
- Pursuing code quality
- Selenium Chinese Documentation
- Simple Tutorial for Selenium Webdriver
- Joel talks about software
- Joel on Software
- User Guide for Gradle 2
- Gradle Chinese User Documentation
- Coding Standards
- Open-source software architecture
- GNU Make Guide
- GNU Make Chinese Manual
- The Twelve-Factor App
Design patterns
- Illustrated Design Patterns
- The most comprehensive guide to design patterns in history
- The design pattern provides guidance, but does not guarantee mastery of the skills.
- Design Patterns: The Java Edition
Web
- 20 Important Tips Regarding Browsers and the Internet
- The secrets of browser development tools
- Chinese Manual for Chrome Developer Tools
- Chrome Extension Development Documentation
- Grunt Chinese Documentation
- Gulp Chinese Documentation
- Gulp Getting Started Guide
- Mobile Web Frontend Knowledge Base
- Regular Expressions: A 30-Minute Introduction Course
- Diary of Front-end Development Framework Construction
- Favorites for Mobile Front-end Development
- JSON Style Guide
- A Guide to HTTP Interface Design
- Front-end Resource Sharing (Part 1)
- Front-end Resource Sharing (Part 2)
- Front-end Code Standards and Best Practices
- Front-end Developer Handbook
- Front-end Engineer Manual
- Organized W3School tutorials
- Wireshark User Manual
- One-stop learning for Wireshark
- HTTP Tea Time
- HTTP/2.0
- RFC 7540 – The Chinese Translation of HTTP/2
- Explanation of HTTP/2
- 3 Web Designs in 3 Weeks
- Site Reliability Engineering
- Web Security Study Notes
- Development Guide for Serverless Architecture Applications
big data
- Resources related to big data, data mining, recommendation systems, and machine learning
- A Guide to Data Mining for Programmers
- A fast and versatile data processing architecture for large-scale clusters
- Classic algorithm implementations in data mining, along with detailed explanations
- Spark Programming Guide - Simplified Chinese Edition
The Art of Programming
- The Art of Programming for Programmers
- Memory Knowledge That Every Programmer Should Understand (Part 1)
- The Process of Pleasing Others: How to Understand the Nature of Games (Douban Reading, free book)
Others
- OpenWrt Smart, Automatic, and Transparent Proxy Router Tutorial
- Introduction to SAN Management Series
- Sketch Chinese Manual
- Gain a deep understanding of parallel programming
- The self-cultivation of programmers
- Growth: A Guide for Full-Stack Growth Engineers
- System Reengineering and Migration Guide
Android
- Android Design (Chinese Version)
- Google Material Design: Official Chinese Version (Translation 1, Translation 2)
- Chinese Version of Material Design
- Official Google Android Training Course (Chinese Version)
- The Journey of Learning Android
- Frontiers of Android Development Technology (android-tech-frontier)
- Analysis and Organization of Some Key Concepts Related to Android
- Detailed Explanation of New Features in Android 6.0
APP
- Apache Cordova Development Guide
AWK
- AWK programming language
- Chinese Guide to awk
- Practical Guide to Using awk
C/C++
- C/C++ Chinese Reference Manual (Everyone is welcome to participate in the online translation and proofreading process)
- Insights into C Language Programming
- C++ Concurrency Programming Guide
- One-stop Learning for Linux C Programming (Song Jinshan, Beijing Yaqian Education Research Center)
- CGDB Chinese Manual
- 100 GDB tips and tricks
- 100 Little Tricks for Using GCC
- ZMQ Guide
- How to Think Like a Computer Scientist (Chinese and English versions)
- Help me write the Makefile together.
- GNU Make Chinese Manual (Requires a secure Internet connection) (PDF)
- GNU Make Guide
- Google C++ Style Guide
- C/C++ Primer (by @andycai)
- Easy-to-understand C magic
- C++ FAQ LITE (Chinese Version)
- C++ Primer 5th Answers
- C++ Concurrent Programming (Based on C++11)
- QT Tutorial
- DevBean's "Qt Learning Road 2" (Qt5)
- The Chinese version of “QmlBook”
- Advanced Guide to C++ Templates
- LibUV Chinese Tutorial
- Chinese Tutorial for the Boost Library
- A clumsy way to learn C
- Quick Start with C++11/14/17
C#
- Microsoft Docs: Official C# Documentation
- ASP.NET MVC 5 Getting Started Guide
- An extremely comprehensive tutorial on.NET GDI+ graphics and image programming
- Fundamentals of .NET Control Development
- Key Points of .NET Development (First Draft)
Clojure
- Clojure Introduction Tutorial
CSS/HTML
- Learning CSS layout techniques
- General CSS notes, recommendations, and guidelines
- CSS Reference Manual
- Emmet documentation
- Front-end Code Standards (Tencent AlloyTeam)
- HTML and CSS Coding Standards
- Sass Guidelines (in Chinese)
- CSS3 Tutorial: "CSS3 Guide"
- MDN HTML Chinese Documentation
- MDN CSS Chinese Documentation
Dart
- Introduction to the Dart Language
Elixir
- Introduction to Elixir Programming
Erlang
- Master Erlang in just 21 days
Fortran
- Introduction to Programming in Fortran 77 and 90/95
Go
- Fundamentals of Go Programming
- Beginner Guide to Go Language
- Learning the Go language
- Go Web Programming: This book has already been published. I hope developers will purchase it to support the author’s work.
- Practical Go Development: When I included this project in my collection, the author had already completed Chapter 3. If you find the previous chapters helpful, you may consider donating to support the author and encourage them to continue their work.
- Network Programming with Go
- Effective Go
- Go standard library
- Golang Standard Library Documentation
- Revel Framework Manual
- A Guide for Java Programmers to Get Started with Golang
- Go Command Tutorial
- Go Language Blog Practice
- Translation of Go official documentation
- An In-Depth Analysis of Go
- The Bible of the Go Language (Chinese Edition) (GitBook)
- Analysis of the Golang runtime source code
- Practical Go Programming: Tips for Writing Maintainable Go Code
- Golang Series of Tutorials (Translation)
- Go RPC Development Guide GitBook
- Advanced Programming in Go Language
- Go2 Programming Guide
- Design patterns in the Go language
- Chapter 42 of the Go Language Scriptures
Groovy
Haskell
- Real World Haskell (Chinese Edition)
- An entertaining guide to learning Haskell
iOS
- Getting Started with iOS Development in 60 Minutes
- iOS 7 Human Interface Guide
- Chinese Version of Google’s Objective-C Style Guide
- Revealing the Secrets of the iPhone 6 Screen
- A Preliminary Exploration of Apple Watch Development
- Begin developing the iOS application immediately.
- NetEase Stanford University Open Course: Subtitle Files for iOS 7 Application Development
Java
- Apache Shiro User Guide
- User Guide for Jersey 2.x
- Spring Framework 4.x Reference Document
- Spring Boot Reference Guide (Under Translation)
- MyBatis Chinese Documentation
- MyBatis Generator Chinese Documentation
- Building REST services using Jersey
- User Guide for Activiti 5.x
- Google Java Programming Style Guide
- Netty 4.x User Guide
- Practical Applications of Netty (Essentials)
- REST in Action
- Java Coding Standards
- Apache MINA 2 User Guide
- H2 Database Tutorial
- Java Servlet 3.1 Specification
- JSSE Reference Guide
- Open-source implementations of Java and best practices
- Key Points of Java Programming
- Think Java
- A Concise Guide to Java 8
- On Java 8 Chinese Edition (translation in progress)
- Effective Java, 3rd Edition (Chinese Version)
JavaScript
- Modern JavaScript Tutorial
- Google JavaScript Code Style Guidelines
- Google JSON Style Guide
- Airbnb JavaScript Specifications
- JavaScript Standard Reference Tutorial (Alpha)
- JavaScript Programming Guide (Source Code)
- The 12 peculiarities of JavaScript
- The Secret Garden of JavaScript
- Core Concepts and Practices of JavaScript (PDF) This book has been published by People’s Post and Telecommunications Press, but the author still offers the PDF version for free. The author hopes that developers will purchase it to support their work.
- "JavaScript Patterns" – the Chinese translation of "JavaScript patterns"
- Essentials of the JavaScript Language
- Exploring Named Function Expressions (Note: The original text was translated by “Zhi Wei Man Bi”; the original link is no longer available, so I have used a backup version from my blog.)
- Learning to Use Design Patterns in JavaScript (OpenSource China)
- In-Depth Understanding of JavaScript Series
- Chinese Version of ECMAScript 5.1
- Introduction to ECMAScript 6 (Author: Ruan Yifeng)
- JavaScript Promise Mini-Guide
- You-Dont-Know-JS (a series of books that delve into the core mechanisms of the JavaScript language)
- JavaScript Tutorial by Liao Xuefeng
- MDN JavaScript Chinese Documentation
- jQuery
- jQuery Decomposition
- Easy-to-understand jQuery magic
- How to write jQuery plugin
- You Don’t Need jQuery
- How to create a jQuery-like class?
- Node.js
- Getting Started with Node.js
- Learn NodeJS in seven days
- Nodejs Wiki Book (Traditional Chinese)
- Express.js Chinese Documentation
- KOA Chinese Documentation
- Let's learn Koa together.
- Building a multi-person blog using Express and MongoDB
- Express framework
- Node.js provides the tools and resources, but it does not guarantee that users will necessarily learn how to use them.
- Learn Node.js for Greater Success! (Chinese Version)
- Three Methods and Three Examples for Node.js Debugging
- Node.js Chinese Documentation
- ORM2 Chinese Documentation
- Let's learn Node.js together.
- underscore.js
- Chinese Documentation for Underscore.js
- backbone.js
- Backbone.js Chinese Documentation
- Backbone.js Introduction Tutorial (PDF)
- Backbone.js Beginner Tutorial, 2nd Edition
- Developing Backbone.js Applications (Chinese Edition)
- AngularJS
- Best Practices and Style Guidelines for AngularJS
- AngularJS translation
- Introduction to AngularJS Tutorial
- Build your own AngularJS application
- Building AngularJS projects using Yeoman in a Windows environment
- Zepto.js
- Chinese Documentation for Zepto.js
- Sea.js
- React.js
- The Path to Learning React
- A brief guide to React.js
- React.js Chinese Documentation
- React webpack-cookbook
- React Getting Started Tutorial
- React Beginner Tutorial (Author: hulufei, different from the author of "Xing Shang")
- React Native Chinese Documentation (including the latest information regarding Android)
- Learn React & Webpack by building the Hacker News front page
- impress.js
- Chinese tutorial for impress.js
- CoffeeScript
- CoffeeScript Cookbook
- The Little Book on CoffeeScript (Chinese Edition)
- Guidelines for CoffeeScript Coding Style
- TypeScipt
- ExtJS
- Ext4.1.0 Chinese Documentation
- Meteor
- Discover Meteor
- Meteor Chinese Documentation
- Chinese Tutorial for Angular-Meteor
- VueJS
- An in-depth analysis of the Vue.js source code, line by line
- Development of Chrome extensions and applications
Kotlin
- Chinese version of the official Kotlin reference documentation
- Kotlin Chinese Documentation on GitHub
- Kotlin Reference Document
- “Kotlin for Android Developers” (Chinese edition)
LaTeX
- A rather brief introductory guide to LaTeX
- A relatively detailed introduction to LATEX 2ε (in PDF format)
LISP
- Common Lisp
- Chinese Translation of ANSI Common Lisp
- The Chinese translation version of “On Lisp”
- Scheme
- Another Scheme Tutorial: An Introduction to Scheme Programming
- A Concise Tutorial on the Scheme Language
- Racket
Lua
- Introduction to Lua Programming
- Lua 5.1 Reference Manual (Chinese Translation)
- Lua 5.3 Reference Manual (Chinese Translation)
- Appreciating the Lua source code
OCaml
Perl
- Modern Perl Chinese Edition
- Things That Perl Programmers Should Know
PHP
- PHP Official Manual
- PHP Debugging Technical Manual (PDF)
- The Way of PHP: php-the-right-way (@wulijun version, PHPHub version)
- Best Practices for PHP
- PHP Developer Practices
- Gain a deep understanding of the PHP kernel
- PHP extension development and kernel-based applications
- Laravel 5.1 Chinese Documentation
- Laravel 5.1 LTS Quick Reference Table
- Chinese Version of the Symfony2 Cookbook (Version 2.7.0 LTS)
- Symfony2 Chinese Documentation (Not Fully Translated)
- Several online tutorials on the Yii framework available on YiiBook
- A thorough understanding of Yii 2.0
- The official Chinese website of the Yii framework
- Easy-to-understand PHP magic tricks
- Swoole documentation and beginner tutorials
- Composer Chinese Website
- Slim Chinese Documentation
- Lumen Chinese Documentation
- PHPUnit Chinese Documentation
- PHP-LeetCode
Prolog
- A crude approach to learning Prolog
Python
- Liao Xuefeng’s Chinese tutorial for Python 2.7
- Liao Xuefeng’s Python 3 Chinese Tutorial
- Concise Python Tutorial
- Concise Python Tutorial (Python 3)
- Learning Python from Scratch, First Edition
- Learning Python from Scratch, Second Edition
- Cute Python
- Official Python 2.7 Tutorial (Chinese Version)
- Official Python 3.3 Tutorial (Chinese Version)
- Chinese Version of Python Cookbook
- Chinese Version of Python3 Cookbook
- Diving Deep into Python
- Delve into Python 3
- PEP8: Python Code Style Guidelines
- Chinese Version of Google Python Style Guide
- Python Introduction Tutorial (PDF)
- Learning Python in a Clumsy Way (PDF, EPUB)
- Chinese Version of Python Natural Language Processing (Thanks to classmate Chen Tao for the translation, and also thanks to @shwley for contacting the author.)
- Chinese Translation of the Official Guide to the Python Plotting Library Matplotlib
- Scrapy 0.25 Documentation
- ThinkPython
- ThinkPython 2ed
- Quick Python Tutorial
- Python Regular Expression Operation Guide
- Python Beginner Tutorial: A Detailed Introduction
- Getting Started with Twisted and Asynchronous Programming
- TextGrocery Chinese API (a Python library for short-text classification based on the SVM algorithm)
- Requests: HTTP for Humans
- Pillow Chinese documentation
- Chinese Version of PyMOTW
- Chinese version of the Python official documentation
- Chinese documentation for Fabric
- Chinese documentation for Beautiful Soup 4.2.0
- Socket programming in Python
- Using Python for scientific calculations
- Sphinx Chinese Documentation
- Proficient in Python design patterns
- Python Security Programming Tutorial
- Programming concepts and methods
- Zhihu Weekly · How Beginners in Programming Can Learn Python
- Scipy Lecture Notes
- Python Learning Notes: Basics
- Python Learning Notes: Modules
- Chinese Version of the Python Standard Library
- Advanced Python
- Python Core Programming, 2nd Edition – Translated by CPyUG
- Python Best Practices Guide
- Python Essential Tutorial
- Python Quantitative Trading Tutorial
- Django
- The Chinese translation of the Django 1.5 documentation is currently in progress.
- Django 2.0 Documentation (Chinese Version)
- Django Best Practices
- Tutorial on Setting Up a Personal Blog with Django 2.1 (In Progress)
- Django Tutorial for Building a Simple Blog
- The Chinese version of the Django Book
- Django Design Patterns and Best Practices
- Django Website Development Cookbook
- Django Girls Study Guide
- Flask
- Chinese version of Flask documentation
- Chinese version of the Jinja2 documentation
- Chinese version of the Werkzeug documentation
- A Journey with Flask
- Summary of Flask Extension Documentation
- Comprehensive Flask Tutorial
- SQLAlchemy Chinese Documentation
- Flask Getting Started Tutorial
- web.py
- New User Guide for web.py 0.3
- Web.py Cookbook (Simplified Chinese Version)
- Tornado
- Introduction to Tornado
- Analysis of the Tornado source code
- Chinese version of the Tornado 4.3 documentation
R
- The Ninja Secrets of R Language
Ruby
- Ruby Style Guide
- Rails Style Guide
- Naive Methodology in Ruby
- Ruby on Rails Guide
- The Ruby on Rails Practical Guide
- Ruby on Rails Tutorial, 3rd Edition. The web version of this book is available for free, while the electronic versions are available for purchase in PDF, EPub, and Mobi formats, at a price of only $9.9.
- Rails Practice
- Advanced Development with Rails 5 (Beta)
- Rails 102
- Writing C extensions for Ruby
- Interpretation of Ruby Source Code
- Metaprogramming in Ruby
Rust
- Rust programming language
- Rust Primer
Scala
- Scala Classroom (Twitter's Chinese tutorial on Scala)
- Effective Scala (the Chinese translation of Twitter’s best practices for using Scala)
- Scala Guide
Shell
- Getting Started with Shell Script Programming in 30 Minutes
- 15-Minute Advanced Tutorial on Bash Scripts
- Quick Tutorial on Linux Tools
- The Thirteen Questions of Shell
- Shell programming examples
- Linux Command Search Engine
Swift
- The Chinese Version of the Swift Programming Language
- Swift Language Guide
- Stanford Open Course: "Developing iOS 8 Apps using Swift" – Subtitle Translation File
- C4iOS – COSMOS
Reading notes and other materials
- Solutions to Exercises for the 2nd Chinese Edition of “Principles of Compilation” (Zilong Book)
- Make "Programming Pearls" a thinner and more concise book
- Reading Notes on Effective C++
- Golang study notes, Python study notes, C study notes (PDF format)
- JSoup Study Notes
- Study Notes: Vim, Python, Memcached
- Turing Open Book Translation Project – C++, Python, Java, and others
- Tim O’Reilly’s Essays (Translated by Yiyan.com; the electronic version is available for free)
- SICP Solution Set
- Collection of excellent blogs
- A guide to formatting Chinese text
- Quick Reference to the Standard Function Library of the C Language
- Git Cheatsheet Chs
- GitBook Quick Start Guide
- Developing open-source software
- The wisdom of asking questions
- Markdown Getting Started Guide
- Quick Guide to AsciiDoc
- Nine Lectures on the Knapsack Problem
- Lao Qi's technical documents
- Summary of Front-end Skills
- Leverage open-source projects to learn software development.
- Front-end job interview questions
- LeetCode/LintCode Solution Notes/Algorithm Study Notes
- Front-end Development Notebook
- Solutions to LeetCode problems
- "The Indispensable Team Leader Development Program"
Testing-related