Skip to content

JulianBin/java-wegweiser

 
 

Repository files navigation

Der wachsende Wegweiser zum Java-Modul

All Contributors

Ein Wegweiser zur Java-Programmierung, der mit seinen Aufgaben wächst. Für die Teilnehmer*innen des Moduls "Softwaretechnologie: Java" der Studiengänge Informationsverarbeitung und Medieninformatik am IDH (Institut für Digital Humanities, Universität zu Köln) und alle Interessierten! 👐

Work in progress. 🚧 🐌
Dieses Repository ist weit davon entfernt, vollständig zu sein. Aber das ist okay. Wenn dir auffällt, dass etwas Wichtiges fehlt oder unzureichend erläutert ist, dann eröffne ein Issue oder trage eigene Änderungen bei!

Übrigens 💬

📖   Inhalt — Zum Inhaltsverzeichnis springen!
🤔   Was ist das hier — Bzw. was ist es nicht?
👩‍💻   Contributing — Oder: Wie kann ich hier mitwirken?
🛋️   Lese-Ansicht — Wenn du aus Versehen im Repository gelandet bist!
📕   Glossar — Allgemeine Terminologie der Programmierung (wichtig)!
🔗   Link-Liste — Weitere empfehlenswerte (online-) Ressourcen!

Inhalt 📖

👉 Die einzelnen Themenbereiche sind hier mit Schlagworten kurz zusammengefasst. Die jeweilige Überschrift verlinkt auf das Dokument mit allen Inhalten zum entsprechenden Thema.

Einstieg

JDK, Eclipse IDE, Download, Installation, ...

Warum Java?, Warum nicht?, Besonderheiten, Java Platform, Java Ecosystem, Packages, Hello World!, ...

IDE, Warum Eclipse?, Workspaces, Views, Editor, Die wichtigsten Funktionen, Import, Export, Console, Ausführen von Programmen, Automatisch generierter Code...

Grundlagen

Das erste Programm, Was ist das alles?

Packages, Pakete, Paket-Pfade, package, import

main

// inline, /* multi-line */

Was ist das?, Syntax, naming conventions, Typisierung, ...

primitive Datentypen, komplexe Datentypen, byte, short, int, long, float, double, boolean, char, default-Werte, Wrapper-Klassen...

Typumwandlung, implizit, explizit, upcast, downcast, cast-Operator, Casting bei komplexen Datentypen, ...

Rückgabewerte, Parameter/Argumente, return, Überlagerung, Java ist immer pass-by-value ...

Rechenoperatoren, Vergleichsoperatoren, logische Operatoren, Zuweisungsoperatoren, +, -, *, /, %, ++, --, ==, !=, >, <, >=, <=, &&, ||, =, +=, -=, /=, *=, %=, &=, |=, ...

die Klasse "String", Literals, special characters, Unveränderbarkeit von Strings, UTF-16, ...

if, else, :? (Ternary-Operator), switch

while, do-while, for, for-each, 🎀

Datenstrukturen, Deklaration, Typisierung, Initialisierung, Array Literals, Zugriff, Mehrdimensionale Arrays, ...

Enums, ...

Error, Exception, try, catch, finally, try-with-resources, throws, ...

Objektorientierte Programmierung (OOP)

Definition, Nutzen, Beispiele, Klasse, Objekt, Kuchen, ...

new-Operator, Instanzvariablen, Instanzmethoden, Sichtbarkeits-/Zugriffsmodifizierer, private, (default), protected, public, this, Getter, Setter, Konstruktoren, ...

toString(), Objekt-Identität, Objekt-Gleichheit, equals(), hashCode(), Der Vertrag zwischen equals() und hashCode(), ...

static, Klassenvariablen, statische Methoden, ...

Anonyme Klassen, Innere Klassen, ...

final, finale Variablen finale Klassen, finale Methoden, Konstanten in Java, ...

Wozu?, Terminologie, extends, super, instanceof-Operator, Überschreiben von Methoden, ...

abstrakte Klassen, abstrakte Methoden, abstract, ...

Interfaces, Erweiterung von Interfaces, default-Methoden ...

Abstrakte Konzepte und Fortgeschrittenes

Um Rekursion zu verstehen, muss man zunächst Rekursion verstehen.

Streams, Buffering, Reader, Writer, Objektserialisierung, ...

verkettete Listen, zweifach verkettete Listen, Binärbäume, binäre Suchbäume, Iterable, Iterator, siehe auch "Collections Framework"! ...

Was?, Wozu?, <Syntax>, Typsicherheit trotz generischer Programmierung, Gültigkeit bei Kompilierung und zur Laufzeit, ...

Aufbau, List, Set, Map, Objekt-Identität im Kontext von HashMaps/HashSets, ...

Comparable, Comparator, Collections.sort(), Sortieralgorithmen ...

Prozess, Thread, Runnable, synchronized, volatile, ...

Wozu?, Wie werden sie eingebunden?, Maven, Gradle ...

Wozu?, Schreiben von Unit-Tests, Test-driven-development, JUnit, ...

Allgemeines / Sonstiges

Konventionen für Bezeichner in Java, Groß-/Kleinschreibung, ...

Wozu?, /**, @param, @return, <code></code>, best practices, ...

Contributors ✨

Das ist alles. Bis jetzt! Wie wäre es mit deinem Beitrag?

Dank für die Mitarbeit an diesem Repository gebührt den folgenden fleißigen Mitwirkenden (emoji legende):


bkis

🖋 💡 🤔 🚧

Nicolas David Werner

🖋 💡

Lelalue

🖋 💡

All Contributors

🔧

mkamphausen

🖋 💡

Julian Kamphausen

🖋 💡

👉 Dieses Projekt hält sich an die all-contributors-Spezifikation.
Contributions (Beiträge) jeder Art sind willkommen und werden an dieser Stelle wie oben zu sehen aufgeführt!

About

Ein Wegweiser für die Grundlagen der Java-Programmierung 🔭

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Hack 63.0%
  • Java 37.0%