译注:该中文翻译不保证最新
这是一个编程教程列表,有志向成为软件开发者的人可以从零开始学习如何构建一个应用程序。这些教程根据不同的主要编程语言进行了分类。教程可能涉及多种技术和语言。
要开始,请复刻这个仓库。有关贡献准则,请参阅贡献指南。
- C#
- C/C++
- Clojure
- Dart
- Elixir
- Erlang
- F#
- Go
- Haskell
- HTML/CSS
- Java
- JavaScript
- Kotlin
- Lua
- OCaml
- PHP
- Python
- R
- Ruby
- Rust
- Scala
- Swift
- 额外资源
- 构建一个解释器(第14章开始使用C编写)
- 内存分配器101 - 编写一个简单的内存分配器
- 用C编写一个Shell
- 编写一个FUSE文件系统
- 构建自己的文本编辑器
- 构建自己的Lisp
- 如何在C中编写NES游戏
- 从零开始编写操作系统
- 如何从头开始创建操作系统
- 构建一个CHIP-8模拟器
- 使用C++和SDL开始游戏编程
- 实现键值存储
- 微型3D图形项目
- 在C++中编写一个最小的x86-64 JIT编译器
- 为C++构建一个实时代码重新加载库
- 用C编写哈希表
- 让我们构建一个简单的数据库
- 编写一个引导加载程序
- 用C编写引导加载程序
- 500行代码中的Linux容器
- 编写自己的虚拟机
- 学习KVM - 实现自己的Linux内核
- 使用C/C++构建自己的Redis
- 编写一个C编译器
-9.html)
- 第10部分:全局变量
- 使用LLVM实现一种语言
- Meta Crush Saga:一个基于C++17的编译时游戏
- 高性能矩阵乘法
- 从零开始的太空入侵者
- C++平台无关的俄罗斯方块教程
- 编写Linux调试器
- 让我们写一个编译器
-
编写一个TCP/IP协议栈
-
编写并发服务器
-
从零开始构建MQTT代理
- 使用C++和OpenGL创建2D打砖块游戏克隆
- 手工英雄
- 如何使用C++/OpenGL制作Minecraft(视频)
- 通过构建简单的RPG游戏学习C#
- 使用C#创建Rogue-like游戏
- 使用C#和Xamarin创建空白应用程序(正在进行中)
- 使用Xamarin和Visual Studio构建iOS照片库应用程序
- 构建CoreWiki 这是一个完全使用C#、ASP.NET Core和Razor Pages编写的Wiki风格内容管理系统。您可以在这里找到源代码。
- Google Docs克隆
- Instagram克隆
- 多人TicTacToe游戏
- TikTok克隆
- 门票预订应用程序
- 旅行应用程序
- Twitch克隆
- WhatsApp克隆
- Wordle克隆
- Zoom克隆
- Netflix克隆
- 构建解释器(第4-13章使用Java编写)
- 使用Java构建简单的HTTP服务器
- 使用Java构建Android手电筒应用(视频)
- 使用Spring Boot构建具有用户身份验证的Web应用程序
- 在30天内通过30个教程构建30个东西
- 纯JS构建应用程序
- 构建Jupyter Notebook扩展
- 使用JavaScript构建TicTacToe游戏
- 使用Vanilla JavaScript构建简单的天气应用程序
- 使用JavaScript构建Todo List应用程序
- 创建无服务器的React.js应用
- 创建一个Trello克隆
- 使用React、Node、MongoDB和SocketIO创建角色投票应用
- React教程:克隆Yelp
- 使用Mocha、React、Redux和Immutable进行全栈电影投票应用的测试驱动开发
- 使用React和Node构建Twitter流
- 使用React.js和Node.js创建简单的Medium克隆
- 在JS中集成MailChimp
- 使用React + Parcel构建Chrome扩展
- 使用React Native构建ToDo应用
- 制作聊天应用
- 使用React Native创建新闻应用
- 学习React的Webpack
- 使用Puppeteer和Jest测试React应用
- 构建自己的React脚手架
- 使用React创建生命游戏
- 基本的React+Redux入门教程
- 构建预约调度器
- 使用情感分析构建带有React的聊天应用
- 构建全栈Web应用程序设置
- 使用React和Firebase创建Todoist克隆
- 构建一个随机引用机器
- React手机电商项目(视频)
- 使用Angular 1.x构建Instagram克隆
- 使用Angular 2+构建支持离线的Hacker News客户端
- 使用Django和AngularJS(Angular 1.x)构建Google+克隆
- 使用Angular 8构建美丽的现实应用程序
- 使用BootStrap 4和Angular 6构建响应式布局
- 使用Angular 5构建ToDo应用
- 使用NodeJS构建实时Markdown编辑器
- 使用Node、Postgres和Knex进行测试驱动开发
- 使用Node.js编写Twitter机器人
- [在30分钟内构建
一个简单的搜索机器人](https://medium.freecodecamp.org/how-to-build-a-simple-search-bot-in-30-minutes-eb56fcedcdb1)
- 构建一个作业抓取Web应用
- 构建GitHub应用
- 如何使用JavaScript、Node.JS、MongoDB和Web Sockets构建自己的Uber-for-X应用
- Vue 2 + Firebase:在15分钟内构建具有Firebase身份验证系统的Vue应用
- Vue.js应用教程 - 使用Vue创建一个简单的预算应用程序
- 使用Vue、GraphQL和Apollo构建博客
- 使用MEVN(MongoDB、Express、Vue、Node)堆栈构建全栈Web应用程序
- Vue.js待办事项列表教程(视频)
- Vue 2 + Pub/Sub:构建用于游戏的点对点多用户平台
- 构建渐进式Web应用程序(PWA)
- 使用JS构建本机桌面应用
- 使用NodeJs、GraphQL和Hapi构建强大的API
- 使用Phaser制作2D Breakout游戏
- 使用Phaser在HTML5和JavaScript中制作Flappy Bird
- BYTEPATH:使用Lua和LÖVE创建完整游戏
- 使用Flask构建微博
- 在Django中创建博客Web应用程序
- 选择自己的冒险演示
- 使用Flask和RethinkDB构建待办事项列表
- 使用Django和测试驱动开发构建待办事项列表
- 在Python中构建RESTful微服务
- Docker、Flask和React构建微服务
- 使用Flask创建简单的Web应用程序
- 在不到20分钟内创建Django API
- 使用Django、Postgres和JavaScript构建社区驱动的交付应用程序
- 使用Vue、django-notifs、RabbitMQ和uWSGI构建实时聊天应用程序
- 构建Reddit机器人
- 如何制作Reddit机器人 - YouTube (视频)
- 构建Facebook Messenger机器人
- 制作Reddit + Facebook Messenger机器人
- 使用Python创建Telegram机器人
- 在Python中创建Twitter机器人
- 通过执行多个项目学习Python数据科学 (视频):
- 用Python从头开始编写线性回归 (视频)
- Python中的逐步机器学习
- 预测葡萄酒质量
- 解决水果分类问题
- 使用Python学习无监督学习
- 用Python从头开始构建自己的神经网络
- 在Python中使用sklearn进行线性回归
- 在Python中进行多元线性回归,不使用sklearn
- 使用KNN创建音乐推荐系统
- 查找相似的Quora问题 -
- 使用Python和机器学习检测虚假新闻
- 构建文档扫描仪
- 使用OpenCV和深度学习构建人脸检测器
- 使用YOLOv3构建最快的自定义目标检测系统(视频播放列表)
- 使用OpenCV、Python和深度学习构建人脸识别系统
- 检测图像中的显著特征
- 构建条形码扫描仪
- 学习使用Python进行人脸聚类
- 使用Camshift进行目标跟踪
- 使用OpenCV和深度学习进行语义分割
- 图像和视频中的文本检测
- 使用OpenCV的人流计数器
- 使用OpenCV跟踪多个对象
- 使用OpenCV进行神经风格转移
- OpenCV OCR和文本识别
- 文本斜率校正教程
- 面部标志检测教程
- 使用Mask-R-CNN进行目标检测
- 自动目标检测教程
- 使用OpenCV的EigenFaces
- 更快的(5点)面部标志检测教程
- 手部关键点检测
- Dlib相关对象跟踪 -
- 使用OpenCV和Python进行图像拼接
- 使用OpenCV进行实例分割
- 面罩检测器
- 使用卷积神经网络检测面部关键点
- 使用Python和OpenCV生成平均面
- 使用CNN打破验证码系统
- 使用预训练的Inception模型进行图像预测
- 创建你的第一个CNN
- 构建人脸识别流水线
- 构建图像字幕生成器
- 制作你自己的人脸识别系统
- 在20分钟内训练语言检测AI
- 基于神经网络的目标检测
- 学习Twitter情感分析 -
- [第I部分 - 数据清理
](https://towardsdatascience.com/another-twitter-sentiment-analysis-bb5b01ebad90)
- 第II部分 - EDA,数据可视化
- 第III部分 - Zipf定律,数据可视化
- 第IV部分 - 特征提取(计数矢量化器)
- 第V部分 - 特征提取(Tfidf矢量化器)
- 第VI部分 - Doc2Vec
- 第VII部分 - 短语建模 + Doc2Vec
- 第VIII部分 - 降维
- 第IX部分 - 使用Tfdif矢量的神经网络
- 第X部分 - 使用word2vec/doc2vec的神经网络
- 第XI部分 - 使用Word2Vec的CNN
- 使用迁移学习进行自定义图像分类
- 用11行Python代码编写简单的神经网络
- 使用梯度下降法构建神经网络
- 训练一个Keras模型生成颜色
- 使用自定义数据集在Keras上入门
- 在Faces94数据集上使用EigenFaces和FisherFaces
- Kaggle MNIST数字识别教程
- 使用tf.keras进行Fashion MNIST教程
- 使用Keras的CNN自动分类根健康
- Keras vs TensorFlow
- 用于疟疾检测的深度学习和医学图像分析
- 使用Keras进行图像分类的迁移学习
- 在Python中使用CNNS编写笑脸分类器
- 使用scikit-learn进行自然语言处理
- 编写Taylor Swift歌词生成器
- 使用PyTorch Lightning进行口罩检测
- 构建一个简单的解释器
- 用Python构建一个简单的区块链
- 用Python编写一个NoSQL数据库
- 使用OpenCV/Python/iOS构建一个加油站扫描仪
- 使用Python和Kafka构建一个分布式流处理系统
- 从头开始用纯Python写一个x86-64 JIT编译器
- 制作一个低级别(Linux)调试器
- 实现一个搜索引擎
- 构建生命游戏
- 创建终端ASCII艺术
- 编写一个井字棋AI
- 创建光照艺术
- 在终端中构建游戏“Snake”
- 写一个Git
- Python字节码运行器的Python实现
- 使用Python创建语音助手
- 使用Golang、Angular 2和WebSocket创建实时聊天应用
- 使用Gin构建Go Web应用程序和微服务
- 如何使用Godog进行Go中的行为驱动开发
- 在Go中构建区块链
- 在Go中从头开始构建容器 - Liz Rice(Microscaling Systems)(视频)
- 使用GoLang构建Web应用程序
- 在Go中使用ReactJS构建聊天应用程序
- Go WebAssembly教程 - 构建计算器教程
- 在Go中的REST服务器
- 在Go中构建URL缩短器 - 使用Gin和Redis
- 在Go中构建TCP聊天(视频)
- 从头开始在Go中构建BitTorrent客户端
- 使用Go、PostgreSQL和Docker制作REST API大师班(视频播放列表)
进行中
- 使用Laravel构建博客(视频)
- 用纯PHP制作你自己的博客
- 使用SilverStripe用实例构建房地产网站
- 使用Laravel 5.4和VueJS构建实时聊天应用程序(视频)
- 构建社交网络:Laravel 5 - Youtube(视频)
- 使用Laravel构建全功能的多租户应用
- 从头开始使用Laravel构建CRUD应用程序
- 写给你的 Haskell - 构建现代函数式编译器
- 在48小时内写一个 Scheme
- 写给你一个 Scheme,第二版
- 打造你自己的 IRC 机器人
- 制作 Movie Monad
- 用 Haskell 制作网站 (已过时)
- Rust 中的简单 Web 应用
- 用纯 Rust 编写操作系统
- 用 Rust 构建浏览器引擎
- 用 Rust 编写微服务
- 通过学习 Rust 过多的链表
- Rust 详解:从头开始编写可扩展的聊天服务
- 在桌面和Web上用 Rust 编写 Roguelike 游戏
- 使用 Rust 构建单页应用程序
- 用 Rust 编写 NES 模拟器
- 创建演变的模拟,使用神经网络和遗传算法,并将应用程序编译为 WebAssembly