All Projects → DH-Cologne → java-wegweiser

DH-Cologne / java-wegweiser

Licence: other
🔭 Ein wachsender Wegweiser für die Grundlagen der Java-Programmierung

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to java-wegweiser

awesome
collection of awesome lists
Stars: ✭ 178 (+1086.67%)
Mutual labels:  learn-to-code, learn-java
OOP-In-CPlusPlus
An Awesome Repository On Object Oriented Programming In C++ Language. Ideal For Computer Science Undergraduates, This Repository Holds All The Resources Created And Used By Me - Code & Theory For One To Master Object Oriented Programming. Filled With Theory Slides, Number Of Programs, Concept-Clearing Projects And Beautifully Explained, Well Doc…
Stars: ✭ 27 (+80%)
Mutual labels:  oop, object-oriented-programming
Low Level Design Primer
Dedicated Resources for the Low-Level System Design. Learn how to design and implement large-scale systems. Prep for the system design interview.
Stars: ✭ 2,706 (+17940%)
Mutual labels:  oop, object-oriented-programming
cactoos-crypto
Crypto extensions for Cactoos library
Stars: ✭ 15 (+0%)
Mutual labels:  oop
cactoos-matchers
Elegant object-oriented hamcrest matchers
Stars: ✭ 30 (+100%)
Mutual labels:  oop
arabic-programming-blogs
أهم المدونات والمصادر العربية لتعلم البرمجة وتطوير الويب
Stars: ✭ 41 (+173.33%)
Mutual labels:  learn-to-code
awesome-by-example
😎 A curated list of example-based learning resources.
Stars: ✭ 97 (+546.67%)
Mutual labels:  learn-to-code
LuaKit
Lua核心工具包,包含对面向对象,组件系统(灵活的绑定解绑模式),mvc分模块加载,事件分发系统等常用模式的封装。同时提供打印,内存泄漏检测,性能分析等常用工具类。
Stars: ✭ 112 (+646.67%)
Mutual labels:  oop
JS HTML Widgets
Easily create widget objects of arbitrary complexity
Stars: ✭ 16 (+6.67%)
Mutual labels:  oop
ooprogramming
Intermediate course introducing Object Oriented Programming (OOP) principles applied to the Java language. Recommend to learners with previous experience.
Stars: ✭ 50 (+233.33%)
Mutual labels:  object-oriented-programming
german-nouns
A list of ~100,000 German nouns and their grammatical properties compiled from WiktionaryDE as CSV file. Plus a module to look up the data and parse compound words.
Stars: ✭ 101 (+573.33%)
Mutual labels:  german-language
jet
Jet is a simple OOP, dynamically typed, functional language that runs on the Erlang virtual machine (BEAM). Jet's syntax is Ruby-like syntax.
Stars: ✭ 22 (+46.67%)
Mutual labels:  oop
php-mvc-skeleton
A PHP OOP web application skeleton that uses MVC architectural pattern to create a basic application that contains login and multi language systems and can be used in any web project.
Stars: ✭ 46 (+206.67%)
Mutual labels:  oop
SMmuiscPlay
🎼极简模式JavaScript音乐播放器组件,极简、小巧、无依赖、可定制,适用于手机页面,H5活动页,微信页面等的音乐播放支持
Stars: ✭ 40 (+166.67%)
Mutual labels:  oop
wiktionary-de-parser
Extract data from German Wiktionary XML files. Allows you to add your own extraction methods 🚀
Stars: ✭ 22 (+46.67%)
Mutual labels:  german-language
superhelp
Python help that really helps
Stars: ✭ 27 (+80%)
Mutual labels:  learn-to-code
Decaf-Compiler
Compiler for Decaf Programming Language
Stars: ✭ 36 (+140%)
Mutual labels:  object-oriented-programming
DataFrames
Welcome to DataFrames.jl with Bogumił Kamiński
Stars: ✭ 106 (+606.67%)
Mutual labels:  learn-to-code
insta-story
🤖 📷 Instagram Story Downloader Anonymously - PHP
Stars: ✭ 25 (+66.67%)
Mutual labels:  oop
implements
🐍 Pythonic interfaces using decorators
Stars: ✭ 30 (+100%)
Mutual labels:  oop

Softwaretechnologie: Java

All Contributors

  GitHub forks   GitHub issues   Visitors

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 für alle Interessierten! 👐

Work in progress. 🚧 🐌 Diese Lern- und Orientierungs-Ressource 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! 🏷   Java Naming Conventions ...wollen befolgt werden!

Inhalt 📖

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

Einstieg

Benötigte Software

JDK Eclipse IDE Download Installation ...

Die Programmiersprache Java

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

Eclipse IDE

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

Grundlagen

"Hello World!" und die main-Methode

Das erste Programm Was ist das alles? main

Packages, package und import

Packages Pakete Paket-Pfade package import

Kommentare

// inline /* multi-line */

Variablen

Was ist das? Syntax naming conventions Typisierung ...

Datentypen

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

Casting

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

Operatoren

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

Strings / Zeichenketten

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

Methoden

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

Conditional statements / Konditionale

if else :? (Ternary-Operator) switch

Schleifen

while do-while for for-each

Arrays

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

Fehlerbehandlung

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

Dokumentation mit Javadoc

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

Objektorientierte Programmierung (OOP)

OOP, Klassen und Objekte

Definition Nutzen Beispiele Klasse Objekt Kuchen ...

Objekte I: Initialisierung, Members, Zugriff

new-Operator Instanzvariablen Instanzmethoden Zugriffs-/Sichtbarkeitsmodifizierer private (default) protected public this Getter Setter Konstruktoren ...

Static Members

static Klassenvariablen statische Methoden ...

Vererbung I: Grundlagen

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

final

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

Objekte II: Repräsentation, Identität, Gleichheit

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

Vererbung II: Abstrakte Klassen und Methoden

abstrakte Klassen abstrakte Methoden abstract ...

Vererbung III: Interfaces

Interfaces Erweiterung von Interfaces Default-Methoden Statische Methoden in Interfaces ...

Innere und anonyme Klassen

Anonyme Klassen Innere Klassen ...

Abstrakte Konzepte und Fortgeschrittenes

Input / Output (I/O)

Streams Buffering Reader Writer Objektserialisierung User-Input über Stdin ...

Datenstrukturen

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

Iterable und Iterator

Iterable Iterator Bezug zu for-each Implementierung ...

Generics

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

Collections Framework

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

Enums

Enums ...

Rekursion

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

Vergleichen und Sortieren

Comparable Comparator Collections.sort() Sortieralgorithmen ...

Multithreading

Prozess Thread Runnable synchronized volatile ...

Programmbibliotheken

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

Unit-Tests

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

Über den Seminarinhalt hinaus ...

... gehen die folgenden Themen. Das heißt jedoch nicht, dass sie nicht wichtig wären. Wer das Gelernte noch weiter vertiefen oder ergänzen möchte, kann sich von diesen Empfehlungen leiten lassen:

Java Stream API

🔗 Introduction to Java 8 Streams (baeldung.com) 🔗 The Java 8 Stream API Tutorial (baeldung.com) 🔗 String Operations with Java Streams (baeldung.com) 🔗 Java Stream API (tutorials.jenkov.com)

Lambda Expressions und Functional Interfaces

🔗 Lambda Expressions (docs.oracle.com) 🔗 Java Functional Interfaces (beginnersbook.com) 🔗 Lambda Expressions and Functional Interfaces: Tips and Best Practices (baeldung.com)

Statische Methoden in Interfaces

🔗 Static and Default Methods in Interfaces in Java (baeldung.com) 🔗 Default and Static Methods in Interfaces in Java 8 (codenuclear.com)

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

🖋 💡

mkamphausen

🖋 💡

Julian Kamphausen

🖋 💡

Demirro

🤔

Valeria Gavrilova

🐛

jspringe

🖋

Sandeep Mishra

🖋

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].