Projektbasiertes Lernen
Eine Liste von Programmier -Tutorials, in denen die Lernenden eine Anwendung von Grund auf neu erstellen. Diese Tutorials sind in verschiedene primäre Programmiersprachen unterteilt. Einige haben Technologien und Sprachen gemischt.
Um anzufangen, geben Sie einfach dieses Repo auf. Weitere Informationen finden Sie unter den Beitragsrichtlinien.
Inhaltsverzeichnis:
- C#
- C/C ++
- Clojure
- Elixier
- Erlang
- F#
- Gehen
- Haskell
- HTML/CSS
- Java
- JavaScript
- Kotlin
- Lua
- Ocaml
- Php
- Python
- R
- Rubin
- Rost
- Scala
- Schnell
- Zusätzliche Ressourcen
C/C ++:
- Erstellen Sie einen Dolmetscher (Kapitel 14 on ist in C geschrieben)
- Speicherallocators 101 - Schreiben Sie einen einfachen Speicher Allocator
- Schreiben Sie eine Shell in c
- Schreiben Sie ein Sicherungsdateisystem
- Erstellen Sie Ihren eigenen Texteditor
- Bauen Sie Ihr eigenes Lisp
- So programmieren Sie ein NES -Spiel in C.
- Schreiben Sie ein Betriebssystem von Grund auf neu
- So erstellen Sie ein Betriebssystem von Grund auf neu
- Aufbau eines Chip-8-Emulators
- Spielprogrammierung mit C ++ und SDL
- Implementierung eines Schlüsselwertgeschäfts
- Winzige 3D -Grafikprojekte
- Tiny Rendererer oder wie OpenGL funktioniert: Software -Rendering in 500 Codezeilen
- Verständlicher Raytracing in 256 Linien bloß C ++
- Kaboom! in 180 Zeilen bloß C ++
- 486 Zeilen von C ++: Old-School-FPS an einem Wochenende
- Schreiben eines minimalen X86-64-JIT-Compilers in C ++
- Erstellen Sie eine Live-Code-Reloader-Bibliothek für C ++
- Schreiben Sie eine Hash -Tabelle in C.
- Erstellen wir eine einfache Datenbank
- Lass uns einen Kernel schreiben
- Schreiben Sie einen Bootloader in C.
- Linux -Container in 500 Codezeilen
- Schreiben Sie Ihre eigene virtuelle Maschine
- KVM lernen - Implementieren Sie Ihren eigenen Linux -Kernel
- Schreiben Sie einen C -Compiler
- Teil 1: Ganzzahlen, Lexen und Codegenerierung
- Teil 2: Unary Operatoren
- Teil 3: Binärbetreiber
- Teil 4: noch mehr binäre Betreiber
- Teil 5: Lokale Variablen
- Teil 6: Bedingungen
- Teil 7: zusammengesetzte Aussagen
- Teil 8: Schleifen
- Teil 9: Funktionen
- Teil 10: Globale Variablen
- Implementierung einer Sprache mit LLVM
- Meta Crush Saga: Ein C ++ 17-Kompilierungs-Zeit-Spiel
- Hochleistungsmatrix-Multiplikation
- Space Invaders von Grund auf neu
- Teil 1
- Teil 2
- Teil 3
- Teil 4
- Teil 5
- Tetris Tutorial in C ++ Plattform unabhängig
- Schreiben eines Linux -Debuggers
- Teil 1: Setup
- Teil 2: Haltepunkte
- Teil 3: Register und Gedächtnis
- Teil 4: Elfen und Zwerge
- Teil 5: Quelle und Signale
- Teil 6: Quellenebene treten
- Teil 7: Haltepunkte auf Quellenebene
- Teil 8: Stapelabwicklung
- Teil 9: Umgangsvariablen
- Teil 10: Fortgeschrittene Themen
Netzwerkprogrammierung
Codieren wir einen TCP/IP -Stack
- Teil 1: Ethernet & ARP
- Teil 2: IPv4 & ICMPv4
- Teil 3: TCP -Grundlagen & Handshake
- Teil 4: TCP -Datenfluss & Socket -API
- Teil 5: TCP -Übertragung
Programmierung gleichzeitiger Server
- Teil 1 - Einführung
- Teil 2 - Fäden
- Teil 3 - ereignisgetrieben
- Teil 4 - Libuv
- Teil 5 - REDIS -Fallstudie
- Teil 6 - Rückrufe, Versprechen und asynchronen/warten
MQTT -Broker von Grund auf neu
- Teil 1 - das Protokoll
- Teil 2 - Networking
- Teil 3 - Server
- Teil 4 - Datenstrukturen
- Teil 5 - Thema Abstraktion
- Teil 6 - Handler
- Bonus - Multithreading
OpenGL:
- Erstellen von 2D -Breakout -Spielklone in C ++ mit OpenGL
- Ausbruch
- Einrichten
- Sprites rendern
- Ebenen
- Kollisionen
- Ball
- Kollisionserkennung
- Kollisionsauflösung
- Partikel
- Nachbearbeitung
- Einschalten
- Audio
- Text rendern
- Letzte Gedanken
- Handgefertigter Held
- So machen Sie Minecraft in C ++/OpenGL (Video)
C#:
- Lernen Sie C#, indem Sie ein einfaches RPG -Spiel erstellen
- Erstellen Sie ein schurkisches Spiel in C#
- Erstellen Sie eine leere App mit C# und Xamarin (Arbeit in Arbeit)
- Erstellen Sie die iOS -Foto -Bibliothek -App mit Xamarin und Visual Studio
- Aufbau des CoreWiki Dies ist ein Content-Management-System im Wiki-Stil, das vollständig in C# mit ASP.NET-Kern- und Rasierseiten geschrieben wurde. Hier finden Sie den Quellcode.
Clojure:
- Bauen Sie einen Twitter -Bot mit Clojure
- Aufbau eines Zauberprüfers
- Aufbau einer JIRA -Integration mit Clojure & Atlassian Connect
- Prototyping mit Clojure
Elixier
- Erstellen einer einfachen Chat -App mit Elixir und Phoenix
- Wie schreibe ich einen superschnellen Link -Shortener mit Elixir, Phoenix und Mnesia
Erlang
- CHATBUS: Erstellen Sie Ihre erste Multi-Benutzer-Chatraum-App mit Erlang/OTP
- Erstellen einer Chat -App mit Erlang, Bewehrung, Cowboy und Bullet
F#:
- Schreiben Sie Ihren eigenen Excel in 100 Zeilen von F#
Java:
- Erstellen Sie einen Dolmetscher (Kapitel 4-13 ist in Java geschrieben)
- Erstellen Sie einen einfachen HTTP -Server mit Java
- Erstellen Sie eine Android -Taschenlampen -App (Video)
- Erstellen Sie eine Spring -Boot -App mit Benutzerauthentifizierung
JavaScript:
- Bauen Sie 30 Dinge in 30 Tagen mit 30 Tutorials
- Erstellen Sie eine App in reinem JS
- Erstellen Sie eine Jupyter -Notebook -Erweiterung
HTML und CSS:
- Erstellen Sie einen Ladebildschirm
- Erstellen Sie einen HTML -Taschenrechner mit JS
Mobile Anwendung:
- Bauen Sie eine React Native Todo -Anwendung auf
- Bauen Sie eine reag -native Anwendung mit Redux Thunk auf
Webanwendungen:
Reagieren:
- Erstellen Sie serverlose React.js -Apps
- Erstellen Sie einen Trello -Klon
- Erstellen Sie eine Charakter -Voting -App mit React, Knoten, MongoDB und Socketio
- React Tutorial: Kloning Yelp klonieren
- Erstellen Sie eine vollständige Stack-Film-Voting-App mit der Test-First-Entwicklung mit Mokka, React, Redux und Untastable
- Erstellen Sie einen Twitter -Stream mit React und Knoten
- Erstellen Sie eine serverlose Mern -Story -App mit webtask.io
- Bauen Sie einen einfachen mittleren Klon mit React.js und Node.js auf
- Integrieren Sie MailChimps in JS
- Bauen Sie eine Chromverlängerung mit React + Paket auf
- Erstellen Sie eine Todo -App mit React Native
- Eine Chat -Anwendung durchführen
- Erstellen Sie eine Nachrichten -App mit React Native
- Lernen Sie Webpack für React
- Testen von React App mit Pupepeteer und Scherz
- Erstellen Sie Ihr eigenes Reags -Kesselplatte
- Codieren Sie das Spiel des Lebens mit React
- Ein grundlegendes React+Redux -Einführungs -Tutorial
- Erstellen Sie einen Terminplaner
- Erstellen Sie eine Chat -App mit Stimmungsanalyse
- Erstellen Sie ein volles Stapel -Webanwendungs -Setup
- Erstellen Sie einen todoistischen Klon mit React und Firebase
- Erstellen Sie eine zufällige Zitatmaschine
- Teil 1
- Teil 2
- Teil 3
- Teil 4
- Teil 5
- Teil 6
- Teil 7
Winkel:
Bauen Sie einen Instagram -Klon mit Angular 1.x auf
Erstellen Sie einen offline-fähigen Hacker-Nachrichten-Client mit Angular 2+
Erstellen Sie einen Google+ -Klon mit Django und AngularJs (Angular 1.x)
Bauen Sie eine schöne Real World App mit Angular 8:
Bauen Sie Responsive Layout mit Bootstrap 4 und Angular 6 auf
Todo App mit Angular 5
- Einführung in Angular
- Teil 1
Knoten:
- Erstellen Sie eine einfache Website mit Knoten, Express und MongoDB
- Erstellen Sie einen Echtzeit-Markdown-Editor mit NodeJs
- Testgetriebene Entwicklung mit Knoten, Postgres und Knex
- Schreiben Sie einen Twitter -Bot in node.js
- Erstellen Sie eine einfache, erholsame Web -App
- Erstellen Sie einen einfachen Suchbot in 30 Minuten
- Erstellen Sie eine Job -Scrabing -Web -App
Vue
- Vue 2 + Firebase: So erstellen Sie eine Vue -App mit Firebase Authentication System in 15 Minuten
- VUE.JS -Anwendungs -Tutorial - Erstellen einer einfachen Budgetierungs -App mit VUE
- Erstellen Sie einen Blog mit Vue, GraphQL und Apollo
- Erstellen Sie eine vollständige Stack -Webanwendung mit MeVN (MongoDB, Express, Vue, Knoten) Stack
- Vue.js To-Do-List-Tutorial (Video)
Andere (Hapi, Express ...):
- Erstellen Sie eine progressive Webanwendung (PWA)
- Erstellen Sie einen Support -Ticketantrag mit Adonisjs
- Erstellen Sie eine native Desktop -App mit JS
- Erstellen Sie eine leistungsstarke API mit NodeJs, GraphQL und Hapi
D3.js
- Lernen Sie D3 anhand von Beispielen
- Lernen Sie, ein Zeilendiagramm zu erstellen
Spielentwicklung:
- Machen Sie ein 2D -Breakout -Spiel mit Phaser
- Machen Sie Flappy Bird in HTML5 und JavaScript mit Phaser
Desktop -Anwendung:
- Bauen Sie einen Musikspieler mit React & Electron
- Erstellen Sie eine Desktop -Chat -App mit React und Electron
Verschiedenes:
- So erstellen Sie ein Web -Framework in weniger als 20 Codezeilen
- Bauen Sie sich eine Redux auf
- So schreiben Sie Ihr eigenes virtuelles Dom
- Erstellen Sie eine Echtzeit -serverlose GraphQL -API mit WebSockets auf AWS
Kotlin:
- Keddit - Kotlin lernen, während sie eine Android -Anwendung entwickelt
Lua:
LIEBE:
- Bytepath: Schaffung eines kompletten Spiels mit Lua und Löve
- Teil 0: Einführung
- Teil 1: Spielschleife
- Teil 2: Bibliotheken
- Teil 3: Zimmer und Bereiche
- Teil 4: Übungen
- Teil 5: Game -Grundlagen
- Teil 6: Grundlagen der Spieler
- Teil 7: Spielerstatistiken und Angriffe
- Teil 8: Feinde
- Teil 9: Regisseur und Gameplay -Schleife
- Teil 10: Codierungspraktiken
- Teil 11: Passive
- Teil 12: Weitere Passive
- Teil 13: Skill Tree
- Teil 14: Konsole
- Teil 15: Finale
Python:
Web -Scraping:
- Bergbau -Twitter -Daten mit Python
- Kratzen Sie eine Website mit Scrapy und MongoDB ab
- Wie man mit Python und Selenium Webdriver kratzt
- Welchen Film soll ich mit BeautifulSoup sehen?
Webanwendungen:
- Bauen Sie ein Microblog mit Flask auf
- Erstellen Sie eine Blog -Web -App in Django
- Teil I: Einführung
- Teil II: Erweiterung zum Hinzufügen weiterer Funktionen
- Wählen Sie Ihre eigenen Abenteuerpräsentationen
- Erstellen Sie eine Todo -Liste mit Flask und überdenken
- Erstellen Sie eine TODO-Liste mit Django und testgesteuerter Entwicklung
- Bauen Sie in Python einen erholsamen Microservice auf
- Microservices mit Docker, Kolben und Reagieren
- Erstellen Sie eine einfache Web -App mit Flask
- Bauen Sie eine erholsame API mit Flask - den TDD -Weg -
- Erstellen Sie in weniger als 20 Minuten eine Django -API
Bots:
- Bauen Sie einen Reddit -Bot
- So machen Sie einen Reddit -Bot - YouTube (Video)
- Erstellen Sie einen Facebook -Messenger -Bot
- Machen Sie einen Reddit + Facebook Messenger Bot
- So erstellen Sie einen Telegrammbot mit Python
- Erstellen Sie einen Twitter -Bot in Python
Datenwissenschaft:
- Lernen Sie Python für Data Science, indem Sie mehrere Projekte (Video) durchführen:
- Teil 1: Einführung
- Teil 2: Twitter -Sentimentanalyse
- Teil 3: Empfehlungssysteme
- Teil 4: Vorhersage der Aktienkurse
- Teil 5: Tiefstraum im Tensorflow
- Teil 6: Genetische Algorithmen
Maschinelles Lernen:
- Schreiben Sie lineare Regression von Grund auf in Python (Video)
- Schritt-für-Schritt-maschinelles Lernen in Python
- Vorhersage der Qualität des Weins
- Lösen eines Früchte -Klassifizierungsproblems
- Lernen Sie unbeaufsichtigtes Lernen mit Python
- Bauen Sie in Python Ihr eigenes neuronales Netz von Grund auf neu
- Lineare Regression in Python ohne Sklearn
- Multivariate lineare Regression ohne Sklearn
- Musik Empfehlung mit KNN
- Finden Sie ähnliche Quora-Fragen-
- Verwenden von Bug, Tfidf und Xgboost
- Verwenden von Word2VEC und Xgboost
Opencv:
- Erstellen Sie einen Dokumentscanner
- Bauen Sie einen Gesichtsdetektor mit OpenCV und Deep Learning auf
- Erstellen Sie ein Gesichtserkennungssystem mit OpenCV, Python und Deep Learning
- Erkennen Sie die herausragenden Merkmale in einem Bild
- Erstellen Sie einen Barcode -Scanner
- Lernen Sie das Gesichtsclustering mit Python
- Objektverfolgung mit Camshift
- Semantische Segmentierung mit OpenCV und tiefem Lernen
- Texterkennung in Bildern und Videos
- Menschen kontern mit OpenCV
- Verfolgung mehrerer Objekte mit OpenCV
- Übertragung des neuronalen Stils mit OpenCV
- OpenCV OCR und Texterkennung
- Tutorial für Textversetzungen
- Tutorial zur Erkennung von Gesichtsmarke
- Objekterkennung unter Verwendung von Mask-R-CNN
- Automatisches Zielerkennungs -Tutorial
- Eigenfaces mit OpenCV
- Schneller (5-Punkt-) Tutorial zur Erkennung von Gesichtsmarke
- Hand Keypoint -Erkennung
- DLIB -Korrelationsobjektverfolgung -
- Einzelobjektverfolger
- Mutiple Object Tracker
- Bildnähte mit OpenCV und Python
- Instanzsegmentierung mit OpenCV
- Gesichtsmaskendetektor
Tiefes Lernen:
- Verwenden von Faltungsnetzen zur Erkennung von Gesichtstastpunkten der Gesichtsnetze
- Erzeugen Sie ein durchschnittliches Gesicht mit Python und OpenCV
- Brechen Sie ein Captcha -System mit CNNs
- Verwenden Sie das vorgeborene Inception-Modell, um Bildvorhersagen bereitzustellen
- Erstellen Sie Ihren ersten CNN
- Bauen Sie eine Gesichtserkennungspipeline auf
- Erstellen Sie einen Bildunterschrift Generator
- Machen Sie Ihr eigenes Gesichtserkennungssystem
- Trainieren Sie eine Spracherkennung KI in 20 Minuten
- Objekterkennung mit neuronalen Netzwerken
- Twitter Sentiment Analysis lernen -
- Teil I - Datenreinigung
- Teil II - EDA, Datenvisualisierung
- Teil III - ZIPF -Gesetz, Datenvisualisierung
- Teil IV - Merkmalextraktion (Zählvektoriser)
- Teil V - Featurextraktion (TFIDF -Vektoriser)
- Teil VI - DOC2VEC
- Teil VII - Phrase Modellierung + doc2Vec
- Teil VIII - Dimensionalitätsreduzierung
- Teil IX - Neuronale Netze mit TFDIF -Vektoren
- TEIL X - NEURAL NETS mit WORD2VEC/DOC2VEC
- Teil XI - CNN mit Word2Vec
- Verwenden Sie das Transferlernen für die benutzerdefinierte Bildklassifizierung
- Lernen Sie, ein einfaches neuronales Netzwerk in 11 Zeilen von Python zu codieren
- Bauen Sie ein neuronales Netzwerk mit dem Ansatz des Gradientenabstiegs auf
- Trainieren Sie ein Kerasmodell, um Farben zu generieren
- Beginnen Sie mit Keras auf einem benutzerdefinierten Datensatz
- Verwenden Sie Eigenfaces und Fisherfaces auf Faces94 -Datensatz
- Kaggle Mnist Digit Recuscizer Tutorial
- Mode -MNIST -Tutorial mit TF.keras
- CNN verwendet Keras, um die Root Health automatisch zu klassifizieren
- Keras gegen Tensorflow
- Tiefeslernen und medizinische Bildanalyse zur Malaria -Erkennung
- Übertragen Sie das Lernen für die Bildklassifizierung mit Keras
- Codieren Sie einen Smile -Klassifikator mit CNNs in Python
- Verarbeitung natürlicher Sprache unter Verwendung von Scikit-Learn
- Code ein Taylor Swift Lyrics Generator
Verschiedenes:
- Bauen Sie einen einfachen Dolmetscher auf
- Bauen Sie eine einfache Blockchain in Python
- Schreiben Sie eine NoSQL -Datenbank in Python
- Erstellen eines Zapfpumpenscanners mit OpenCV/Python/iOS
- Erstellen Sie ein verteiltes Streaming -System mit Python und Kafka
- Schreiben eines grundlegenden X86-64 JIT-Compilers von Grund auf neuer Python
- Einen Debugger mit niedrigem Level (Linux) machen
- Implementierung einer Suchmaschine
- Bauen Sie das Spiel des Lebens auf
- Erstellen Sie terminale ASCII -Kunst
- Schreiben Sie eine Tic-Tac-Toe-KI
- Erstellen Sie photomosaische Kunst
- Bauen Sie das Spiel "Schlange" im Terminal auf
- Schreiben Sie sich einen Git
- Eine Python -Implementierung eines Python -Bytecode -Läufers
Gehen:
- Erstellen Sie eine Echtzeit -Chat -App mit Golang, Angular 2 und Websocket
- Bauen Sie GO -Webanwendungen und Microservices mit GIN
- Wie man Godog für eine verhaltensgetriebene Entwicklung in Go ET verwendet, begann mit Godog
- Bausteinkette in Go
- Teil 1: Grunder Prototyp
- Teil 2: Arbeitsweise
- Teil 3: Persistenz und CLI
- Teil 4: Transaktionen 1
- Teil 5: Adresse
- Teil 6: Transaktionen 2
- Teil 7: Netzwerk
- Erstellen Sie die Webanwendung mit Golang
- Erstellen eines Behälters von Grund auf neu in GO - Liz Rice (Mikroskalierungssysteme)
PHP:
- So erstellen Sie einen Blog mit Laravel (Video)
- Machen Sie Ihr eigenes Blog (in reinem PHP)
- Erstellen Sie ein Beispiel für Immobilien -Website mit Silverstripe
- Erstellen von Echtzeit -Chat -Apps mit Laravel 5.4 und VueJs (Video)
- Erstellen Sie ein soziales Netzwerk: Laravel 5 - YouTube (Video)
- Erstellen Sie eine vollständige Multi-Mieter-App mit Laravel
- Teil 0: Einführung
- Teil 1: Setup
- Teil 2: Rollen und Erlaubnis
- Teil 3: Einladung
- Teil 4: Authentifizierung
- Teil 5: Tests
- Teil 6: Benutzerprofil
- Teil 7: Einsatz
Ocaml:
- Implementieren Sie eine Sprache mit LLVM in OCAML
Rubin:
- Erstellen Sie einen Netzwerkstapel mit Ruby
- Bauen Sie Ihre eigenen Redis auf
- Teil 0: Einführung
- Teil 1: Barebones TCP Server
- Teil 2: Ping <--> Pong
- Teil 3: Gleichzeitige Kunden
- Teil 4: Echo
Rubin auf Schienen:
- Das Tutorial von Ruby on Rails
- Bauen Sie Instagram von Grund auf neu mit Rubin auf Schienen
- Bauen Sie ein soziales Netzwerk mit Rails auf
- So bauen Sie einen Rubin auf Rails -Anwendung
Haskell:
- Schreiben Sie Ihnen einen Haskell - Erstellen Sie einen modernen funktionalen Compiler
- Schreiben Sie sich in 48 Stunden ein Schema
- Schreiben Sie Ihnen ein Schema, Version 2
- Rollen Sie Ihren eigenen IRC -Bot
- Lassen Sie uns einen Basic Compiler in Haskell erstellen
- Filmmonade machen
- Erstellen einer Website mit Haskell (veraltet)
R:
- Erstellen Sie Web -Apps mit Shiny
- Bauen Sie einen Kryptowährungsbot auf
- Lernen Sie Associate Rule Mining in R.
Rost:
- Eine einfache Web -App in Rost
- Schreiben Sie ein Betriebssystem in reinem Rost
- Bauen Sie einen Browsermotor im Rost
- Schreiben Sie einen Microservice in Rost
- Rost lernen mit zu vielen verknüpften Listen
- Rost im Detail: Skalierbares Chat -Service von Grund auf neu schreiben
- Teil 1: Implementieren von WebSocket. Einführung.
- Teil 2: Senden und Empfangen von Nachrichten
- Schreiben Sie ein Rost -Roguelike für den Desktop und das Web
Scala:
- Einfache Schauspieler-basierte Blockchain
- Keine Magie: reguläre Ausdrücke
Schnell:
- Hacken mit Swift - Swift lernen, indem Sie 39 Projekte durchführen
Zusätzliche Ressourcen
- React Redux -Links
- Voller Stack Python
- Knotenschule
- Scotchio
- Ausübung
- Egghead.io
- Michael Hermans Blog
- Thinkster.io
- C projektbasierte Tutorials
- Erleuchtung
- Hack Club Workshops