工具介绍
Projektbasiertes Lernen
Eine Liste von Programmier-Tutorials, in denen aufstrebende Software-Entwickler lernen, wie man eine Anwendung von Grund auf neu erstellt. Diese Tutorials sind in verschiedene primäre Programmiersprachen unterteilt. Tutorials können mehrere Technologien und Sprachen umfassen.
Um zu beginnen, geben Sie einfach dieses Repo. Bitte beachten Sie CONTRIBUTING.md für Beitragsrichtlinien.
Inhaltsverzeichnis:
- C#
C/C++
- Clojure
- Dart
— Elixir
— Erlang
- F#
- Go
— Haskell
HTML/CSS
- Java
- JavaScript
— Kotlin
- Lua
- OCaml
- PHP
- Python
- R
- Ruby
- Rust
- Scala
- Swift
- Zusätzliche Ressourcen
C/C++:
- Bauen Sie einen Dolmetscher (Kapitel 14 ist in C geschrieben)
Speicherzuteilungen 101 - Schreibe einen einfachen Speicherzuweiser
Schreibe eine Shell in C
Schreiben Sie ein FUSE-Dateisystem
Erstellen Sie Ihren eigenen Text Editor
Bauen Sie Ihren eigenen Lisp
Wie man ein NES-Spiel in C programmiert
Schreiben Sie ein OS von Grund auf neu
Wie man ein OS von Grund auf neu erstellt
Aufbau eines CHIP-8 Emulators
- Beginn der Spielprogrammierung mit C++ und SDL
Implementierung eines Key-Value Store
- Winzige 3D-Grafikprojekte
- Tiny Renderer oder wie OpenGL funktioniert: Software-Rendering in 500 Zeilen Code
- Verständliches RayTracing in 256 Zeilen bares C++
- KABOOM! in 180 Zeilen von bare C++
- 486 Zeilen von C++: Old-School FPS an einem Wochenende
- Schreiben eines minimalen x86-64 JIT-Compilers in C++
- Teil 1
- Teil 2
- Erstellen einer Live-Code-Reloader-Bibliothek für C++
- Schreibe eine Hash-Tabelle in C
Lassen Sie uns eine einfache Datenbank erstellen
- Lasst uns einen Kernel schreiben
Schreibe einen Bootloader in C
Linux Container in 500 Zeilen Code
Schreiben Sie Ihre eigene virtuelle Maschine
KVM lernen - Implementieren Sie Ihren eigenen Linux-Kernel
Bauen Sie Ihr eigenes Redis mit C/C++
Schreibe einen C Compiler
Teil 1: Integers, Lexing und Code Generation
- Teil 2: Unary Operators
Teil 3: Binäre Operatoren
- Teil 4: Noch mehr binäre Operatoren
- Teil 5: Lokale Variablen
- Teil 6: Bedingungen
- Teil 7: Compound Statements
- Teil 8: Schleifen
- Teil 9: Funktionen
Teil 10: Globale Variablen
Implementierung einer Sprache mit LLVM
Meta Crush Saga: ein C++17-Compilation-Time-Spiel
Hochleistungs-Matrix-Multiplikation
Space Invaders von Scratch
- Teil 1
- Teil 2
- Teil 3
- Teil 4
- Teil 5
- Tetris Tutorial in C++ Plattformunabhängig
Einen Linux Debugger schreiben
- Teil 1: Setup
Teil 2: Breakpoints
- Teil 3: Register und Speicher
- Teil 4: Elfen und Zwerge
- Teil 5: Quelle und Signale
- Teil 6: Schritt auf Source-Ebene
- Teil 7: Grenzpunkte auf Source-Ebene
- Teil 8: Stapelabwicklung
- Teil 9: Umgang mit Variablen
- Teil 10: Fortgeschrittene Themen
- Lassen Sie uns einen Compiler schreiben
Teil 1: Einführung, Auswahl einer Sprache und Planung
Teil 2: Ein Lexer
Teil 3: Ein Parser
- Teil 4: Prüfung
Teil 5: Ein Codegenerator
- Teil 6: Input und Output
- Teil 7: Arrays
Teil 8: Strings, Vorwärtsreferenzen und Schlussfolgerungen
Netzprogrammierung
Code ein TCP/IP Stack
Teil 1: Ethernet & ARP
- Teil 2: IPv4 & ICMPv4
- Teil 3: TCP Basics & Handshake
- Teil 4: TCP Data Flow & Socket API
- Teil 5: TCP Retransmission
- Programmierung von Concurrent Servern
- Teil 1 - Einführung
- Teil 2 - Fäden
- Teil 3 - Eventgesteuert
- Teil 4 - libuv
- Teil 5 - Fallstudie von Redis
- Teil 6 - Rückrufe, Versprechen und async/await
MQTT Broker von Grund auf neu
- Teil 1 - Das Protokoll
- Teil 2 - Vernetzung
- Teil 3 - Server
- Teil 4 - Datenstrukturen
- Teil 5 - Themenabstraktion
- Teil 6 - Handler
- Bonus - Multithreading
Networking von Scratch
OpenGL:
2D Breakout-Spielklon in C++ mit OpenGL erstellen
- Breakout
- Einrichten
- Rendering Sprites
- Niveaus
- Kollisionen
- Ball
Kollisionserkennung
- Kollisionsentschließung
- Partikel
- Nachbearbeitung
- Powerups
- Audio
- Rendertext
- Letzte Gedanken
- Handmade Hero
- Wie man Minecraft in C++ / OpenGL macht (Video)
C#:
Lernen Sie C# durch den Aufbau eines einfachen RPG-Spiels
- Erstellen Sie ein Rogue-ähnliches Spiel in C#
- Erstellen einer Blank App mit C# und Xamarin (Work in Progress)
- Erstellen Sie iOS Photo Library App mit Xamarin und Visual Studio
- Erstellen des CoreWiki Dies ist ein Content-Management-System im Wiki-Stil, das vollständig in C# mit ASP.NET Core und Razor Pages geschrieben wurde. Den Quellcode finden Sie hier.
Clojure:
- Bauen Sie einen Twitter Bot mit Clojure
Einen Spell-Checker bauen
Aufbau einer JIRA-Integration mit Clojure & Atlassian Connect
Prototyping mit Clojure
Tetris in ClojureScript
Dart:
Flitter:
Amazon Clone mit Admin Panel
- Food Delivery App
Google Docs Clone
Instagram C